From e89a3242d95e977db861e0897212bf1039dcdbc9 Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Mon, 18 Nov 2019 15:39:48 -0800 Subject: [PATCH 01/23] blob Sas --- .../azure/storage/blob/BlobAsyncClient.java | 33 ++ .../com/azure/storage/blob/BlobClient.java | 31 ++ .../blob/BlobContainerAsyncClient.java | 14 + .../storage/blob/BlobContainerClient.java | 11 + .../storage/blob/BlobServiceAsyncClient.java | 8 + .../azure/storage/blob/BlobServiceClient.java | 7 + .../implementation/util/BlobSasImplUtil.java | 300 ++++++++++++++ .../sas/BlobServiceSasQueryParameters.java | 1 + .../sas/BlobServiceSasSignatureValues.java | 57 ++- .../blob/specialized/BlobAsyncClientBase.java | 35 ++ .../blob/specialized/BlobClientBase.java | 15 + .../com/azure/storage/blob/SASTest.groovy | 2 + .../azure/storage/blob/SasClientTests.groovy | 372 ++++++++++++++++++ .../implementation/AccountSasImplUtil.java | 106 +++++ .../common/implementation/SasImplUtils.java | 55 +++ .../implementation/StorageImplUtils.java | 4 + .../common/sas/AccountSasQueryParameters.java | 1 + .../common/sas/AccountSasSignatureValues.java | 27 ++ .../common/sas/BaseSasQueryParameters.java | 15 +- 19 files changed, 1062 insertions(+), 32 deletions(-) create mode 100644 sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/implementation/util/BlobSasImplUtil.java create mode 100644 sdk/storage/azure-storage-blob/src/test/java/com/azure/storage/blob/SasClientTests.groovy create mode 100644 sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/AccountSasImplUtil.java create mode 100644 sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/SasImplUtils.java diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobAsyncClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobAsyncClient.java index 5ac82adbdd23..ff4e32bee6a4 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobAsyncClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobAsyncClient.java @@ -7,6 +7,7 @@ import com.azure.core.http.rest.Response; import com.azure.core.util.FluxUtil; import com.azure.core.util.logging.ClientLogger; +import com.azure.storage.blob.implementation.util.BlobSasImplUtil; import com.azure.storage.blob.implementation.util.ModelHelper; import com.azure.storage.blob.models.AccessTier; import com.azure.storage.blob.models.BlobHttpHeaders; @@ -16,12 +17,15 @@ import com.azure.storage.blob.models.CpkInfo; import com.azure.storage.blob.models.CustomerProvidedKey; import com.azure.storage.blob.models.ParallelTransferOptions; +import com.azure.storage.blob.models.UserDelegationKey; +import com.azure.storage.blob.sas.BlobServiceSasSignatureValues; import com.azure.storage.blob.specialized.AppendBlobAsyncClient; import com.azure.storage.blob.specialized.BlobAsyncClientBase; import com.azure.storage.blob.specialized.BlockBlobAsyncClient; import com.azure.storage.blob.specialized.PageBlobAsyncClient; import com.azure.storage.blob.specialized.SpecializedBlobClientBuilder; import com.azure.storage.common.implementation.Constants; +import com.azure.storage.common.implementation.SasImplUtils; import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; @@ -551,6 +555,35 @@ public Mono uploadFromFile(String filePath, ParallelTransferOptions parall } } + /** + * Generates a user delegation sas for the blob using the specified + * {@link BlobServiceSasSignatureValues}. + * @see BlobServiceSasSignatureValues for more information on how to construct a user delegation SAS. + * + * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} + * @param userDelegationKey {@link UserDelegationKey} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues, + UserDelegationKey userDelegationKey) { + return new BlobSasImplUtil(blobServiceSasSignatureValues, getContainerName(), getBlobName(), getSnapshotId()) + .generateUserDelegationSas(userDelegationKey, getAccountName()); + } + + /** + * Generates a service sas for the blob using the specified {@link BlobServiceSasSignatureValues} + * @see BlobServiceSasSignatureValues for more information on how to construct a service SAS. + * + * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues) { + return new BlobSasImplUtil(blobServiceSasSignatureValues, getContainerName(), getBlobName(), getSnapshotId()) + .generateSas(SasImplUtils.extractSharedKeyCredential(getHttpPipeline())); + } + boolean uploadInBlocks(String filePath) { AsynchronousFileChannel channel = uploadFileResourceSupplier(filePath); boolean retVal; diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobClient.java index 164746c3827c..96a60a895b5a 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobClient.java @@ -5,16 +5,20 @@ import com.azure.core.annotation.ServiceClient; import com.azure.core.util.logging.ClientLogger; +import com.azure.storage.blob.implementation.util.BlobSasImplUtil; import com.azure.storage.blob.models.AccessTier; import com.azure.storage.blob.models.BlobRequestConditions; import com.azure.storage.blob.models.BlobHttpHeaders; import com.azure.storage.blob.models.ParallelTransferOptions; +import com.azure.storage.blob.models.UserDelegationKey; +import com.azure.storage.blob.sas.BlobServiceSasSignatureValues; import com.azure.storage.blob.specialized.AppendBlobClient; import com.azure.storage.blob.specialized.BlobClientBase; import com.azure.storage.blob.specialized.BlockBlobClient; import com.azure.storage.blob.specialized.PageBlobClient; import com.azure.storage.blob.specialized.SpecializedBlobClientBuilder; import com.azure.storage.common.implementation.Constants; +import com.azure.storage.common.implementation.SasImplUtils; import com.azure.storage.common.implementation.StorageImplUtils; import reactor.core.publisher.Mono; @@ -175,4 +179,31 @@ public void uploadFromFile(String filePath, ParallelTransferOptions parallelTran throw logger.logExceptionAsError(e); } } + + /** + * Generates a user delegation sas for the blob using the specified + * {@link BlobServiceSasSignatureValues}. + * @see BlobServiceSasSignatureValues for more information on how to construct a user delegation SAS. + * + * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} + * @param userDelegationKey {@link UserDelegationKey} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues, + UserDelegationKey userDelegationKey) { + return this.client.generateUserDelegationSas(blobServiceSasSignatureValues, userDelegationKey); + } + + /** + * Generates a service sas for the blob using the specified {@link BlobServiceSasSignatureValues} + * @see BlobServiceSasSignatureValues for more information on how to construct a service SAS. + * + * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues) { + return this.client.generateSas(blobServiceSasSignatureValues); + } } diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java index 907d5a4e3d73..c66dbbd9fd85 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java @@ -20,6 +20,7 @@ import com.azure.storage.blob.implementation.models.ContainerGetPropertiesHeaders; import com.azure.storage.blob.implementation.models.ContainersListBlobFlatSegmentResponse; import com.azure.storage.blob.implementation.models.ContainersListBlobHierarchySegmentResponse; +import com.azure.storage.blob.implementation.util.BlobSasImplUtil; import com.azure.storage.blob.models.BlobContainerAccessPolicies; import com.azure.storage.blob.models.BlobContainerProperties; import com.azure.storage.blob.models.BlobItem; @@ -30,7 +31,10 @@ import com.azure.storage.blob.models.ListBlobsOptions; import com.azure.storage.blob.models.PublicAccessType; import com.azure.storage.blob.models.StorageAccountInfo; +import com.azure.storage.blob.models.UserDelegationKey; +import com.azure.storage.blob.sas.BlobServiceSasSignatureValues; import com.azure.storage.common.Utility; +import com.azure.storage.common.implementation.SasImplUtils; import com.azure.storage.common.implementation.StorageImplUtils; import reactor.core.publisher.Mono; @@ -900,6 +904,16 @@ Mono> getAccountInfoWithResponse(Context context) { }); } + public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues, + UserDelegationKey userDelegationKey) { + return new BlobSasImplUtil(blobServiceSasSignatureValues, getBlobContainerName()) + .generateUserDelegationSas(userDelegationKey, getAccountName()); + } + + public String generateSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues) { + return new BlobSasImplUtil(blobServiceSasSignatureValues, getBlobContainerName()) + .generateSas(SasImplUtils.extractSharedKeyCredential(getHttpPipeline())); + } private boolean validateNoETag(BlobRequestConditions modifiedRequestConditions) { if (modifiedRequestConditions == null) { diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerClient.java index 6750a52b9605..e231c6e81553 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerClient.java @@ -17,6 +17,8 @@ import com.azure.storage.blob.models.ListBlobsOptions; import com.azure.storage.blob.models.PublicAccessType; import com.azure.storage.blob.models.StorageAccountInfo; +import com.azure.storage.blob.models.UserDelegationKey; +import com.azure.storage.blob.sas.BlobServiceSasSignatureValues; import reactor.core.publisher.Mono; import java.time.Duration; @@ -552,4 +554,13 @@ public Response getAccountInfoWithResponse(Duration timeout, return blockWithOptionalTimeout(response, timeout); } + + public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues, + UserDelegationKey userDelegationKey) { + return this.client.generateUserDelegationSas(blobServiceSasSignatureValues, userDelegationKey); + } + + public String generateSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues) { + return this.client.generateSas(blobServiceSasSignatureValues); + } } diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceAsyncClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceAsyncClient.java index d010d3cd24d5..050734edc258 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceAsyncClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceAsyncClient.java @@ -28,8 +28,11 @@ import com.azure.storage.blob.models.PublicAccessType; import com.azure.storage.blob.models.StorageAccountInfo; import com.azure.storage.blob.models.UserDelegationKey; +import com.azure.storage.common.implementation.AccountSasImplUtil; import com.azure.storage.common.implementation.Constants; +import com.azure.storage.common.implementation.SasImplUtils; import com.azure.storage.common.implementation.StorageImplUtils; +import com.azure.storage.common.sas.AccountSasSignatureValues; import reactor.core.publisher.Mono; import java.time.Duration; @@ -551,4 +554,9 @@ Mono> getAccountInfoWithResponse(Context context) { public String getAccountName() { return this.accountName; } + + public String generateSas(AccountSasSignatureValues accountSasSignatureValues) { + return new AccountSasImplUtil(accountSasSignatureValues) + .generateSas(SasImplUtils.extractSharedKeyCredential(getHttpPipeline())); + } } diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceClient.java index a418caae2769..3e380dda771e 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceClient.java @@ -17,7 +17,10 @@ import com.azure.storage.blob.models.PublicAccessType; import com.azure.storage.blob.models.StorageAccountInfo; import com.azure.storage.blob.models.UserDelegationKey; +import com.azure.storage.common.implementation.AccountSasImplUtil; +import com.azure.storage.common.implementation.SasImplUtils; import com.azure.storage.common.implementation.StorageImplUtils; +import com.azure.storage.common.sas.AccountSasSignatureValues; import reactor.core.publisher.Mono; import java.time.Duration; @@ -372,4 +375,8 @@ public Response getAccountInfoWithResponse(Duration timeout, public String getAccountName() { return this.blobServiceAsyncClient.getAccountName(); } + + public String generateSas(AccountSasSignatureValues accountSasSignatureValues) { + return this.blobServiceAsyncClient.generateSas(accountSasSignatureValues); + } } diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/implementation/util/BlobSasImplUtil.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/implementation/util/BlobSasImplUtil.java new file mode 100644 index 000000000000..b351c6db02d5 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/implementation/util/BlobSasImplUtil.java @@ -0,0 +1,300 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. + +package com.azure.storage.blob.implementation.util; + +import com.azure.core.util.CoreUtils; +import com.azure.core.util.logging.ClientLogger; +import com.azure.storage.blob.BlobServiceVersion; +import com.azure.storage.blob.models.UserDelegationKey; +import com.azure.storage.blob.sas.BlobContainerSasPermission; +import com.azure.storage.blob.sas.BlobSasPermission; +import com.azure.storage.blob.sas.BlobServiceSasQueryParameters; +import com.azure.storage.blob.sas.BlobServiceSasSignatureValues; +import com.azure.storage.common.StorageSharedKeyCredential; +import com.azure.storage.common.Utility; +import com.azure.storage.common.implementation.Constants; +import com.azure.storage.common.implementation.StorageImplUtils; +import com.azure.storage.common.sas.SasIpRange; +import com.azure.storage.common.sas.SasProtocol; + +import java.time.OffsetDateTime; +import java.util.Map; +import java.util.Objects; + +import static com.azure.storage.common.implementation.SasImplUtils.formatQueryParameterDate; +import static com.azure.storage.common.implementation.SasImplUtils.tryAppendQueryParameter; + +public class BlobSasImplUtil { + /** + * The SAS blob constant. + */ + private static final String SAS_BLOB_CONSTANT = "b"; + + /** + * The SAS blob snapshot constant. + */ + private static final String SAS_BLOB_SNAPSHOT_CONSTANT = "bs"; + + /** + * The SAS blob container constant. + */ + private static final String SAS_CONTAINER_CONSTANT = "c"; + + private final ClientLogger logger = new ClientLogger(BlobServiceSasSignatureValues.class); + + private String version; + + private SasProtocol protocol; + + private OffsetDateTime startTime; + + private OffsetDateTime expiryTime; + + private String permissions; + + private SasIpRange sasIpRange; + + private String containerName; + + private String blobName; + + private String resource; + + private String snapshotId; + + private String identifier; + + private String cacheControl; + + private String contentDisposition; + + private String contentEncoding; + + private String contentLanguage; + + private String contentType; + + /** + * Creates a new {@link BlobSasImplUtil} with the specified parameters + * + * @param sasValues {@link BlobServiceSasSignatureValues} + * @param containerName The container name + */ + public BlobSasImplUtil(BlobServiceSasSignatureValues sasValues, String containerName) { + this(sasValues, containerName, null, null); + } + + /** + * Creates a new {@link BlobSasImplUtil} with the specified parameters + * + * @param sasValues {@link BlobServiceSasSignatureValues} + * @param containerName The container name + * @param blobName The blob name + * @param snapshotId The snapshot id + */ + public BlobSasImplUtil(BlobServiceSasSignatureValues sasValues, String containerName, String blobName, + String snapshotId) { + Objects.requireNonNull(sasValues); + this.version = sasValues.getVersion(); + this.protocol = sasValues.getProtocol(); + this.startTime = sasValues.getStartTime(); + this.expiryTime = sasValues.getExpiryTime(); + this.permissions = sasValues.getPermissions(); + this.sasIpRange = sasValues.getSasIpRange(); + this.containerName = containerName; + this.blobName = blobName; + this.snapshotId = snapshotId; + this.identifier = sasValues.getIdentifier(); + this.cacheControl = sasValues.getCacheControl(); + this.contentDisposition = sasValues.getContentDisposition(); + this.contentEncoding = sasValues.getContentEncoding(); + this.contentLanguage = sasValues.getContentLanguage(); + this.contentType = sasValues.getContentType(); + } + + /** + * Generates a Sas signed with a {@link StorageSharedKeyCredential} + * + * @param storageSharedKeyCredentials {@link StorageSharedKeyCredential} + * @return A String representing the Sas + */ + public String generateSas(StorageSharedKeyCredential storageSharedKeyCredentials) { + StorageImplUtils.assertNotNull("storageSharedKeyCredentials", storageSharedKeyCredentials); + + ensureState(); + + // Signature is generated on the un-url-encoded values. + final String canonicalName = getCanonicalName(storageSharedKeyCredentials.getAccountName()); + final String signature = storageSharedKeyCredentials.computeHmac256(stringToSign(canonicalName)); + + return encode(null /* userDelegationKey */, signature); + } + + /** + * Generates a Sas signed with a {@link UserDelegationKey} + * + * @param delegationKey {@link UserDelegationKey} + * @param accountName The account name + * @return A String representing the Sas + */ + public String generateUserDelegationSas(UserDelegationKey delegationKey, String accountName) { + StorageImplUtils.assertNotNull("delegationKey", delegationKey); + StorageImplUtils.assertNotNull("accountName", accountName); + + ensureState(); + + // Signature is generated on the un-url-encoded values. + final String canonicalName = getCanonicalName(accountName); + String signature = StorageImplUtils.computeHMac256( + delegationKey.getValue(), stringToSign(delegationKey, canonicalName)); + + return encode(delegationKey, signature); + } + + /** + * Encodes a Sas from the values in this type. + * @param userDelegationKey {@link UserDelegationKey} + * @param signature The signature of the Sas. + * @return A String representing the Sas. + */ + public String encode(UserDelegationKey userDelegationKey, String signature) { + /* + We should be url-encoding each key and each value, but because we know all the keys and values will encode to + themselves, we cheat except for the signature value. + */ + StringBuilder sb = new StringBuilder(); + + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SERVICE_VERSION, this.version); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_PROTOCOL, this.protocol); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_START_TIME, formatQueryParameterDate(this.startTime)); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_EXPIRY_TIME, formatQueryParameterDate(this.expiryTime)); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_IP_RANGE, this.sasIpRange); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_IDENTIFIER, this.identifier); + if (userDelegationKey != null) { + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_OBJECT_ID, + userDelegationKey.getSignedObjectId()); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_TENANT_ID, + userDelegationKey.getSignedTenantId()); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_KEY_START, + formatQueryParameterDate(userDelegationKey.getSignedStart())); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_KEY_EXPIRY, + formatQueryParameterDate(userDelegationKey.getSignedExpiry())); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_KEY_SERVICE, + userDelegationKey.getSignedService()); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_KEY_VERSION, + userDelegationKey.getSignedVersion()); + } + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_RESOURCE, this.resource); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_PERMISSIONS, this.permissions); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNATURE, signature); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_CACHE_CONTROL, this.cacheControl); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_CONTENT_DISPOSITION, this.contentDisposition); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_CONTENT_ENCODING, this.contentEncoding); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_CONTENT_LANGUAGE, this.contentLanguage); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_CONTENT_TYPE, this.contentType); + + return sb.toString(); + + } + + /** + * Ensures that the builder's properties are in a consistent state. + + * 1. If there is no version, use latest. + * 2. Resource name is chosen by: + * a. If "BlobName" is _not_ set, it is a container resource. + * b. Otherwise, if "SnapshotId" is set, it is a blob snapshot resource. + * c. Otherwise, it is a blob resource. + * 3. Reparse permissions depending on what the resource is. If it is an unrecognised resource, do nothing. + * + * Taken from: + * https://github.com/Azure/azure-storage-blob-go/blob/master/azblob/sas_service.go#L33 + * https://github.com/Azure/azure-sdk-for-net/blob/master/sdk/storage/Azure.Storage.Blobs/src/Sas/BlobSasBuilder.cs + */ + private void ensureState() { + if (version == null) { + version = BlobServiceVersion.getLatest().getVersion(); + } + + if (CoreUtils.isNullOrEmpty(blobName)) { + resource = SAS_CONTAINER_CONSTANT; + } else if (snapshotId != null) { + resource = SAS_BLOB_SNAPSHOT_CONSTANT; + } else { + resource = SAS_BLOB_CONSTANT; + } + + if (permissions != null) { + switch (resource) { + case SAS_BLOB_CONSTANT: + case SAS_BLOB_SNAPSHOT_CONSTANT: + permissions = BlobSasPermission.parse(permissions).toString(); + break; + case SAS_CONTAINER_CONSTANT: + permissions = BlobContainerSasPermission.parse(permissions).toString(); + break; + default: + // We won't reparse the permissions if we don't know the type. + logger.info("Not re-parsing permissions. Resource type '{}' is unknown.", resource); + break; + } + } + } + + /** + * Computes the canonical name for a container or blob resource for SAS signing. + */ + private String getCanonicalName(String account) { + // Container: "/blob/account/containername" + // Blob: "/blob/account/containername/blobname" + return CoreUtils.isNullOrEmpty(blobName) + ? String.format("/blob/%s/%s", account, containerName) + : String.format("/blob/%s/%s/%s", account, containerName, blobName.replace("\\", "/")); + } + + private String stringToSign(String canonicalName) { + return String.join("\n", + this.permissions == null ? "" : permissions, + this.startTime == null ? "" : Constants.ISO_8601_UTC_DATE_FORMATTER.format(this.startTime), + this.expiryTime == null ? "" : Constants.ISO_8601_UTC_DATE_FORMATTER.format(this.expiryTime), + canonicalName, + this.identifier == null ? "" : this.identifier, + this.sasIpRange == null ? "" : this.sasIpRange.toString(), + this.protocol == null ? "" : this.protocol.toString(), + version, + resource, + this.snapshotId == null ? "" : this.snapshotId, + this.cacheControl == null ? "" : this.cacheControl, + this.contentDisposition == null ? "" : this.contentDisposition, + this.contentEncoding == null ? "" : this.contentEncoding, + this.contentLanguage == null ? "" : this.contentLanguage, + this.contentType == null ? "" : this.contentType + ); + } + + private String stringToSign(final UserDelegationKey key, String canonicalName) { + return String.join("\n", + this.permissions == null ? "" : this.permissions, + this.startTime == null ? "" : Constants.ISO_8601_UTC_DATE_FORMATTER.format(this.startTime), + this.expiryTime == null ? "" : Constants.ISO_8601_UTC_DATE_FORMATTER.format(this.expiryTime), + canonicalName, + key.getSignedObjectId() == null ? "" : key.getSignedObjectId(), + key.getSignedTenantId() == null ? "" : key.getSignedTenantId(), + key.getSignedStart() == null ? "" : Constants.ISO_8601_UTC_DATE_FORMATTER.format(key.getSignedStart()), + key.getSignedExpiry() == null ? "" : Constants.ISO_8601_UTC_DATE_FORMATTER.format(key.getSignedExpiry()), + key.getSignedService() == null ? "" : key.getSignedService(), + key.getSignedVersion() == null ? "" : key.getSignedVersion(), + this.sasIpRange == null ? "" : this.sasIpRange.toString(), + this.protocol == null ? "" : this.protocol.toString(), + version, + resource, + this.snapshotId == null ? "" : this.snapshotId, + this.cacheControl == null ? "" : this.cacheControl, + this.contentDisposition == null ? "" : this.contentDisposition, + this.contentEncoding == null ? "" : this.contentEncoding, + this.contentLanguage == null ? "" : this.contentLanguage, + this.contentType == null ? "" : this.contentType + ); + } +} diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasQueryParameters.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasQueryParameters.java index 69f5e2515213..914e749402fa 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasQueryParameters.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasQueryParameters.java @@ -241,6 +241,7 @@ UserDelegationKey userDelegationKey() { * * @return A {@code String} representing all SAS query parameters. */ + @Deprecated public String encode() { /* We should be url-encoding each key and each value, but because we know all the keys and values will encode to diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasSignatureValues.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasSignatureValues.java index 5f878a5468fa..00ec1c716515 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasSignatureValues.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasSignatureValues.java @@ -6,6 +6,7 @@ import com.azure.core.util.CoreUtils; import com.azure.core.util.logging.ClientLogger; import com.azure.storage.blob.BlobServiceVersion; +import com.azure.storage.blob.implementation.util.BlobSasImplUtil; import com.azure.storage.blob.models.UserDelegationKey; import com.azure.storage.common.Utility; import com.azure.storage.common.implementation.Constants; @@ -15,28 +16,17 @@ import com.azure.storage.common.sas.SasProtocol; import java.time.OffsetDateTime; + /** - * Used to generate a Shared Access Signature (SAS) for an Azure Blob Storage service. Once all the values here are set, - * call {@link - * #generateSasQueryParameters(StorageSharedKeyCredential) generateSasQueryParameters(StorageSharedKeyCredential)} or - * {@link #generateSasQueryParameters(UserDelegationKey, String) generateSasQueryParameters(UserDelegationKey, String)} - * to obtain a representation of the SAS which can be applied to blob urls. - * - *

Generating SAS query parameters with {@link StorageSharedKeyCredential}

- * The following code generates SAS query parameters for an Azure storage blob. - *

- * {@codesnippet com.azure.storage.blob.specialized.BlobServiceSasSignatureValues.generateSasQueryParameters#StorageSharedKeyCredential} + * Used to initialize parameters for a Shared Access Signature (SAS) for an Azure Blob Storage service. Once all the + * values here are set, use the appropriate generate*Sas method on the desired client to obtain a representation of the + * SAS which can then be applied to a new client using the .sasToken method on a client builder. * - *

Generating SAS query parameters with {@link UserDelegationKey}

- * The following sample generates SAS query parameters for an Azure storage container. - *

- * {@codesnippet com.azure.storage.blob.specialized.BlobServiceSasSignatureValues.generateSasQueryParameters#UserDelegationKey-String} - * - * @see BlobServiceSasQueryParameters * @see Storage SAS overview * @see Constructing a Service * SAS */ +// TODO (gapra) : Add code snippets for new workflow public final class BlobServiceSasSignatureValues { /** * The SAS blob constant. @@ -90,6 +80,7 @@ public final class BlobServiceSasSignatureValues { /** * Creates an object with empty values for all fields. */ + @Deprecated public BlobServiceSasSignatureValues() { } @@ -99,17 +90,34 @@ public BlobServiceSasSignatureValues() { * @param expiryTime Time the SAS becomes valid * @param permissions Permissions granted by the SAS */ - BlobServiceSasSignatureValues(OffsetDateTime expiryTime, String permissions) { + public BlobServiceSasSignatureValues(OffsetDateTime expiryTime, BlobContainerSasPermission permissions) { + StorageImplUtils.assertNotNull("expiryTime", expiryTime); + StorageImplUtils.assertNotNull("permissions", permissions); + this.expiryTime = expiryTime; + this.permissions = permissions.toString(); + } + + /** + * Creates an object with the specified expiry time and permissions + * + * @param expiryTime Time the SAS becomes valid + * @param permissions Permissions granted by the SAS + */ + public BlobServiceSasSignatureValues(OffsetDateTime expiryTime, BlobSasPermission permissions) { + StorageImplUtils.assertNotNull("expiryTime", expiryTime); + StorageImplUtils.assertNotNull("permissions", permissions); this.expiryTime = expiryTime; - this.permissions = permissions; + this.permissions = permissions.toString(); } /** - * Creates an object with the specified identifier + * Creates an object with the specified identifier. + * NOTE: Identifier can not be used for a {@link UserDelegationKey} SAS. * * @param identifier Identifier for the SAS */ - BlobServiceSasSignatureValues(String identifier) { + public BlobServiceSasSignatureValues(String identifier) { + StorageImplUtils.assertNotNull("identifier", identifier); this.identifier = identifier; } @@ -130,6 +138,7 @@ public BlobServiceSasSignatureValues() { * @param contentLanguage The content-language header for the SAS. * @param contentType The content-type header for the SAS. */ + @Deprecated public BlobServiceSasSignatureValues(String version, SasProtocol sasProtocol, OffsetDateTime startTime, OffsetDateTime expiryTime, String permission, SasIpRange sasIpRange, String identifier, String cacheControl, String contentDisposition, String contentEncoding, String contentLanguage, String contentType) { @@ -290,6 +299,7 @@ public String getContainerName() { * @param containerName The name of the container. * @return The updated BlobServiceSASSignatureValues object. */ + @Deprecated public BlobServiceSasSignatureValues setContainerName(String containerName) { this.containerName = containerName; return this; @@ -312,6 +322,7 @@ public String getBlobName() { * @param blobName The name of the blob. Use {@code null} or an empty string to create a container SAS. * @return The updated BlobServiceSASSignatureValues object. */ + @Deprecated public BlobServiceSasSignatureValues setBlobName(String blobName) { this.blobName = (blobName == null) ? null : Utility.urlDecode(blobName); return this; @@ -333,6 +344,7 @@ public String getSnapshotId() { * @param snapshotId Identifier of the snapshot * @return the updated BlobServiceSASSignatureValues object */ + @Deprecated public BlobServiceSasSignatureValues setSnapshotId(String snapshotId) { this.snapshotId = snapshotId; if (snapshotId != null && SAS_BLOB_CONSTANT.equals(resource)) { @@ -358,6 +370,7 @@ public String getIdentifier() { * @param identifier Name of the access policy * @return the updated BlobServiceSASSignatureValues object */ + @Deprecated public BlobServiceSasSignatureValues setIdentifier(String identifier) { this.identifier = identifier; return this; @@ -486,6 +499,7 @@ public BlobServiceSasSignatureValues setContentType(String contentType) { * @throws IllegalArgumentException if {@link #getPermissions()} contains an invalid character for the SAS resource. * @throws NullPointerException if {@code storageSharedKeyCredentials} is null. */ + @Deprecated public BlobServiceSasQueryParameters generateSasQueryParameters( StorageSharedKeyCredential storageSharedKeyCredentials) { StorageImplUtils.assertNotNull("storageSharedKeyCredentials", storageSharedKeyCredentials); @@ -536,8 +550,9 @@ public BlobServiceSasQueryParameters generateSasQueryParameters( * @see * Create a user delegation SAS */ + @Deprecated public BlobServiceSasQueryParameters generateSasQueryParameters(UserDelegationKey delegationKey, - String accountName) { + String accountName) { StorageImplUtils.assertNotNull("delegationKey", delegationKey); StorageImplUtils.assertNotNull("accountName", accountName); diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java index e55fb46907f7..66eae423ab03 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java @@ -15,6 +15,8 @@ import com.azure.core.util.polling.LongRunningOperationStatus; import com.azure.core.util.polling.PollResponse; import com.azure.core.util.polling.PollerFlux; +import com.azure.storage.blob.BlobAsyncClient; +import com.azure.storage.blob.BlobClientBuilder; import com.azure.storage.blob.BlobServiceVersion; import com.azure.storage.blob.HttpGetterInfo; import com.azure.storage.blob.ProgressReporter; @@ -23,6 +25,7 @@ import com.azure.storage.blob.implementation.models.BlobGetAccountInfoHeaders; import com.azure.storage.blob.implementation.models.BlobGetPropertiesHeaders; import com.azure.storage.blob.implementation.models.BlobStartCopyFromURLHeaders; +import com.azure.storage.blob.implementation.util.BlobSasImplUtil; import com.azure.storage.blob.implementation.util.ModelHelper; import com.azure.storage.blob.models.AccessTier; import com.azure.storage.blob.models.ArchiveStatus; @@ -36,13 +39,17 @@ import com.azure.storage.blob.models.BlobStorageException; import com.azure.storage.blob.models.CopyStatusType; import com.azure.storage.blob.models.CpkInfo; +import com.azure.storage.blob.models.CustomerProvidedKey; import com.azure.storage.blob.models.DeleteSnapshotsOptionType; import com.azure.storage.blob.models.DownloadRetryOptions; import com.azure.storage.blob.models.ParallelTransferOptions; import com.azure.storage.blob.models.RehydratePriority; import com.azure.storage.blob.models.StorageAccountInfo; +import com.azure.storage.blob.models.UserDelegationKey; +import com.azure.storage.blob.sas.BlobServiceSasSignatureValues; import com.azure.storage.common.Utility; import com.azure.storage.common.implementation.Constants; +import com.azure.storage.common.implementation.SasImplUtils; import com.azure.storage.common.implementation.StorageImplUtils; import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; @@ -123,6 +130,34 @@ protected BlobAsyncClientBase(HttpPipeline pipeline, String url, BlobServiceVers this.customerProvidedKey = customerProvidedKey; } + public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues, + UserDelegationKey userDelegationKey) { + return getBlobAsyncClient().generateUserDelegationSas(blobServiceSasSignatureValues, userDelegationKey); + } + + public String generateSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues) { + return getBlobAsyncClient().generateSas(blobServiceSasSignatureValues); + } + + private BlobAsyncClient getBlobAsyncClient() { + return prepareBuilder().buildAsyncClient(); + } + + BlobClientBuilder prepareBuilder() { + BlobClientBuilder builder = new BlobClientBuilder() + .pipeline(getHttpPipeline()) + .endpoint(getBlobUrl()) + .snapshot(getSnapshotId()) + .serviceVersion(getServiceVersion()); + + CpkInfo cpk = getCustomerProvidedKey(); + if (cpk != null) { + builder.customerProvidedKey(new CustomerProvidedKey(cpk.getEncryptionKey())); + } + + return builder; + } + /** * Creates a new {@link BlobAsyncClientBase} linked to the {@code snapshot} of this blob resource. * diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobClientBase.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobClientBase.java index f4490492b9ce..e49466f846ae 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobClientBase.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobClientBase.java @@ -27,6 +27,8 @@ import com.azure.storage.blob.models.ParallelTransferOptions; import com.azure.storage.blob.models.RehydratePriority; import com.azure.storage.blob.models.StorageAccountInfo; +import com.azure.storage.blob.models.UserDelegationKey; +import com.azure.storage.blob.sas.BlobServiceSasSignatureValues; import com.azure.storage.common.implementation.StorageImplUtils; import reactor.core.Exceptions; import reactor.core.publisher.Mono; @@ -62,6 +64,19 @@ protected BlobClientBase(BlobAsyncClientBase client) { this.client = client; } + public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues, + UserDelegationKey userDelegationKey) { + return getBlobClient().generateUserDelegationSas(blobServiceSasSignatureValues, userDelegationKey); + } + + public String generateSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues) { + return getBlobClient().generateSas(blobServiceSasSignatureValues); + } + + private BlobClient getBlobClient() { + return this.client.prepareBuilder().buildClient(); + } + /** * Creates a new {@link BlobClientBase} linked to the {@code snapshot} of this blob resource. * diff --git a/sdk/storage/azure-storage-blob/src/test/java/com/azure/storage/blob/SASTest.groovy b/sdk/storage/azure-storage-blob/src/test/java/com/azure/storage/blob/SASTest.groovy index d63e74b4ffdd..ae32de7b8e30 100644 --- a/sdk/storage/azure-storage-blob/src/test/java/com/azure/storage/blob/SASTest.groovy +++ b/sdk/storage/azure-storage-blob/src/test/java/com/azure/storage/blob/SASTest.groovy @@ -31,6 +31,8 @@ import java.time.ZoneOffset class SASTest extends APISpec { + // TODO (gapra) : Cleanup SAS Tests + @Unroll def "Blob range"() { expect: diff --git a/sdk/storage/azure-storage-blob/src/test/java/com/azure/storage/blob/SasClientTests.groovy b/sdk/storage/azure-storage-blob/src/test/java/com/azure/storage/blob/SasClientTests.groovy new file mode 100644 index 000000000000..b32ab6700954 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/java/com/azure/storage/blob/SasClientTests.groovy @@ -0,0 +1,372 @@ +package com.azure.storage.blob + +import com.azure.storage.blob.models.BlobAccessPolicy +import com.azure.storage.blob.models.BlobProperties +import com.azure.storage.blob.models.BlobSignedIdentifier +import com.azure.storage.blob.models.BlobStorageException +import com.azure.storage.blob.models.UserDelegationKey +import com.azure.storage.blob.sas.BlobContainerSasPermission +import com.azure.storage.blob.sas.BlobSasPermission +import com.azure.storage.blob.sas.BlobServiceSasSignatureValues +import com.azure.storage.blob.specialized.BlockBlobClient +import com.azure.storage.blob.specialized.SpecializedBlobClientBuilder +import com.azure.storage.common.sas.AccountSasPermission +import com.azure.storage.common.sas.AccountSasResourceType +import com.azure.storage.common.sas.AccountSasService +import com.azure.storage.common.sas.AccountSasSignatureValues +import com.azure.storage.common.sas.SasIpRange +import com.azure.storage.common.sas.SasProtocol + +class SasClientTests extends APISpec { + + BlockBlobClient sasClient + String blobName + + def setup() { + blobName = generateBlobName() + sasClient = getBlobClient(primaryCredential, cc.getBlobContainerUrl(), blobName).getBlockBlobClient() + sasClient.upload(new ByteArrayInputStream(defaultData.array()), defaultDataSize) + } + + def "network test blob sas"() { + setup: + def permissions = new BlobSasPermission() + .setReadPermission(true) + .setWritePermission(true) + .setCreatePermission(true) + .setDeletePermission(true) + .setAddPermission(true) + + def sasValues = generateValues(permissions) + + when: + def sas = sasClient.generateSas(sasValues) + + def client = getBlobClient(sas, cc.getBlobContainerUrl(), blobName).getBlockBlobClient() + + def os = new ByteArrayOutputStream() + client.download(os) + def properties = client.getProperties() + + then: + os.toString() == new String(defaultData.array()) + validateSasProperties(properties) + notThrown(BlobStorageException) + } + + def "network test blob snapshot"() { + setup: + + def data = "test".getBytes() + def blobName = generateBlobName() + def bu = getBlobClient(primaryCredential, cc.getBlobContainerUrl(), blobName).getBlockBlobClient() + bu.upload(new ByteArrayInputStream(data), data.length) + def snapshotId = bu.createSnapshot().getSnapshotId() + def snapshotBlob = cc.getBlobClient(blobName, snapshotId).getBlockBlobClient() + + def permissions = new BlobSasPermission() + .setReadPermission(true) + .setWritePermission(true) + .setCreatePermission(true) + .setDeletePermission(true) + .setAddPermission(true) + + def sasValues = generateValues(permissions) + + when: + def sas = snapshotBlob.generateSas(sasValues) + + def client = getBlobClient(sas, cc.getBlobContainerUrl(), blobName, snapshotId).getBlockBlobClient() + + def os = new ByteArrayOutputStream() + client.download(os) + def properties = client.getProperties() + + then: + os.toString() == new String(data) + validateSasProperties(properties) + } + + def "serviceSASSignatureValues network test container"() { + setup: + def identifier = new BlobSignedIdentifier() + .setId("0000") + .setAccessPolicy(new BlobAccessPolicy().setPermissions("racwdl") + .setExpiresOn(getUTCNow().plusDays(1))) + cc.setAccessPolicy(null, Arrays.asList(identifier)) + + // Check containerSASPermissions + def permissions = new BlobContainerSasPermission() + .setReadPermission(true) + .setWritePermission(true) + .setListPermission(true) + .setCreatePermission(true) + .setDeletePermission(true) + .setAddPermission(true) + .setListPermission(true) + def expiryTime = getUTCNow().plusDays(1) + + when: + def sasValues = new BlobServiceSasSignatureValues(identifier.getId()) + def sasWithId = cc.generateSas(sasValues) + def client1 = getContainerClient(sasWithId, cc.getBlobContainerUrl()) + client1.listBlobs().iterator().hasNext() + + and: + sasValues = new BlobServiceSasSignatureValues(expiryTime, permissions) + def sasWithPermissions = cc.generateSas(sasValues) + def client2 = getContainerClient(sasWithPermissions, cc.getBlobContainerUrl()) + client2.listBlobs().iterator().hasNext() + + then: + notThrown(BlobStorageException) + } + + def "network test blob user delegation"() { + setup: + def permissions = new BlobSasPermission() + .setReadPermission(true) + .setWritePermission(true) + .setCreatePermission(true) + .setDeletePermission(true) + .setAddPermission(true) + + def sasValues = generateValues(permissions) + + when: + def sas = sasClient.generateUserDelegationSas(sasValues, getUserDelegationInfo()) + + def client = getBlobClient(sas, cc.getBlobContainerUrl(), blobName).getBlockBlobClient() + + def os = new ByteArrayOutputStream() + client.download(os) + def properties = client.getProperties() + + then: + os.toString() == new String(defaultData.array()) + validateSasProperties(properties) + notThrown(BlobStorageException) + } + + def "BlobServiceSAS network test blob snapshot"() { + setup: + def snapshotBlob = new SpecializedBlobClientBuilder().blobClient(sasClient.createSnapshot()).buildBlockBlobClient() + def snapshotId = snapshotBlob.getSnapshotId() + def permissions = new BlobSasPermission() + .setReadPermission(true) + .setWritePermission(true) + .setCreatePermission(true) + .setDeletePermission(true) + .setAddPermission(true) + def sasValues = generateValues(permissions) + def sas = snapshotBlob.generateSas(sasValues) + + when: + // base blob with snapshot SAS + def client = getBlobClient(sas, cc.getBlobContainerUrl(), blobName).getAppendBlobClient() + client.download(new ByteArrayOutputStream()) + + then: + // snapshot-level SAS shouldn't be able to access base blob + thrown(BlobStorageException) + + when: + // blob snapshot with snapshot SAS + def snapClient = getBlobClient(sas, cc.getBlobContainerUrl(), blobName, snapshotId).getAppendBlobClient() + + def os = new ByteArrayOutputStream() + snapClient.download(os) + + def properties = snapClient.getProperties() + + then: + notThrown(BlobStorageException) + os.toByteArray() == defaultData.array() + + then: + validateSasProperties(properties) + } + + def "network test blob snapshot user delegation"() { + setup: + def snapshotBlob = new SpecializedBlobClientBuilder().blobClient(sasClient.createSnapshot()).buildBlockBlobClient() + def snapshotId = snapshotBlob.getSnapshotId() + + def permissions = new BlobSasPermission() + .setReadPermission(true) + .setWritePermission(true) + .setCreatePermission(true) + .setDeletePermission(true) + .setAddPermission(true) + def sasValues = generateValues(permissions) + def sas = snapshotBlob.generateUserDelegationSas(sasValues, getUserDelegationInfo()) + + when: + // base blob with snapshot SAS + def client1 = getBlobClient(sas, cc.getBlobContainerUrl(), blobName).getBlockBlobClient() + client1.download(new ByteArrayOutputStream()) + + then: + // snapshot-level SAS shouldn't be able to access base blob + thrown(BlobStorageException) + + when: + // blob snapshot with snapshot SAS + def client2 = getBlobClient(sas, cc.getBlobContainerUrl(), blobName, snapshotId).getBlockBlobClient() + def os = new ByteArrayOutputStream() + client2.download(os) + + def properties = client2.getProperties() + + then: + notThrown(BlobStorageException) + os.toString() == new String(defaultData.array()) + validateSasProperties(properties) + } + + def "network test container user delegation"() { + setup: + def permissions = new BlobContainerSasPermission() + .setReadPermission(true) + .setWritePermission(true) + .setCreatePermission(true) + .setDeletePermission(true) + .setAddPermission(true) + .setListPermission(true) + def expiryTime = getUTCNow().plusDays(1) + + when: + def sasValues = new BlobServiceSasSignatureValues(expiryTime, permissions) + def sasWithPermissions = cc.generateUserDelegationSas(sasValues, getUserDelegationInfo()) + + def client = getContainerClient(sasWithPermissions, cc.getBlobContainerUrl()) + client.listBlobs().iterator().hasNext() + + then: + notThrown(BlobStorageException) + } + + def "accountSAS network test blob read"() { + setup: + def service = new AccountSasService() + .setBlobAccess(true) + def resourceType = new AccountSasResourceType() + .setContainer(true) + .setService(true) + .setObject(true) + def permissions = new AccountSasPermission() + .setReadPermission(true) + def expiryTime = getUTCNow().plusDays(1) + + when: + def sasValues = new AccountSasSignatureValues(expiryTime, service, resourceType, permissions) + def sas = primaryBlobServiceClient.generateSas(sasValues) + def client = getBlobClient(sas, cc.getBlobContainerUrl(), blobName).getBlockBlobClient() + def os = new ByteArrayOutputStream() + client.download(os) + + then: + os.toString() == new String(defaultData.array()) + } + + def "accountSAS network test blob delete fails new API"() { + setup: + def service = new AccountSasService() + .setBlobAccess(true) + def resourceType = new AccountSasResourceType() + .setContainer(true) + .setService(true) + .setObject(true) + def permissions = new AccountSasPermission() + .setReadPermission(true) + def expiryTime = getUTCNow().plusDays(1) + + when: + def sasValues = new AccountSasSignatureValues(expiryTime, service, resourceType, permissions) + def sas = primaryBlobServiceClient.generateSas(sasValues) + def client = getBlobClient(sas, cc.getBlobContainerUrl(), blobName).getBlockBlobClient() + client.delete() + + then: + thrown(BlobStorageException) + } + + def "accountSAS network create container fails"() { + setup: + def service = new AccountSasService() + .setBlobAccess(true) + def resourceType = new AccountSasResourceType() + .setContainer(true) + .setService(true) + .setObject(true) + def permissions = new AccountSasPermission() + .setReadPermission(true) + .setCreatePermission(false) + def expiryTime = getUTCNow().plusDays(1) + + when: + def sasValues = new AccountSasSignatureValues(expiryTime, service, resourceType, permissions) + def sas = primaryBlobServiceClient.generateSas(sasValues) + def sc = getServiceClient(sas, primaryBlobServiceClient.getAccountUrl()) + sc.createBlobContainer(generateContainerName()) + + then: + thrown(BlobStorageException) + } + + def "accountSAS network create container succeeds"() { + setup: + def service = new AccountSasService() + .setBlobAccess(true) + def resourceType = new AccountSasResourceType() + .setContainer(true) + .setService(true) + .setObject(true) + def permissions = new AccountSasPermission() + .setReadPermission(true) + .setCreatePermission(true) + def expiryTime = getUTCNow().plusDays(1) + + when: + def sasValues = new AccountSasSignatureValues(expiryTime, service, resourceType, permissions) + def sas = primaryBlobServiceClient.generateSas(sasValues) + def sc = getServiceClient(sas, primaryBlobServiceClient.getAccountUrl()) + sc.createBlobContainer(generateContainerName()) + + then: + notThrown(BlobStorageException) + } + + BlobServiceSasSignatureValues generateValues(BlobSasPermission permission) { + return new BlobServiceSasSignatureValues(getUTCNow().plusDays(1), permission) + .setStartTime(getUTCNow().minusDays(1)) + .setProtocol(SasProtocol.HTTPS_HTTP) + .setSasIpRange(new SasIpRange() + .setIpMin("0.0.0.0") + .setIpMax("255.255.255.255")) + .setCacheControl("cache") + .setContentDisposition("disposition") + .setContentEncoding("encoding") + .setContentLanguage("language") + .setContentType("type") + } + + def validateSasProperties(BlobProperties properties) { + boolean ret = true + ret &= properties.getCacheControl() == "cache" + ret &= properties.getContentDisposition() == "disposition" + ret &= properties.getContentEncoding() == "encoding" + ret &= properties.getContentLanguage() == "language" + return ret + } + + UserDelegationKey getUserDelegationInfo() { + def key = getOAuthServiceClient().getUserDelegationKey(getUTCNow().minusDays(1), getUTCNow().plusDays(1)) + def keyOid = getConfigValue(key.getSignedObjectId()) + key.setSignedObjectId(keyOid) + def keyTid = getConfigValue(key.getSignedTenantId()) + key.setSignedTenantId(keyTid) + return key + } + +} diff --git a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/AccountSasImplUtil.java b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/AccountSasImplUtil.java new file mode 100644 index 000000000000..ed405430de95 --- /dev/null +++ b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/AccountSasImplUtil.java @@ -0,0 +1,106 @@ +package com.azure.storage.common.implementation; + +import com.azure.core.util.CoreUtils; +import com.azure.storage.common.StorageSharedKeyCredential; +import com.azure.storage.common.sas.AccountSasPermission; +import com.azure.storage.common.sas.AccountSasSignatureValues; +import com.azure.storage.common.sas.SasIpRange; +import com.azure.storage.common.sas.SasProtocol; + +import java.time.OffsetDateTime; + +import static com.azure.storage.common.implementation.SasImplUtils.formatQueryParameterDate; +import static com.azure.storage.common.implementation.SasImplUtils.tryAppendQueryParameter; + +public class AccountSasImplUtil { + + private String version; + + private SasProtocol protocol; + + private OffsetDateTime startTime; + + private OffsetDateTime expiryTime; + + private String permissions; + + private SasIpRange sasIpRange; + + private String services; + + private String resourceTypes; + + /** + * Creates a new {@link AccountSasImplUtil} with the specified parameters + * + * @param sasValues {@link AccountSasSignatureValues} + */ + public AccountSasImplUtil(AccountSasSignatureValues sasValues) { + this.version = sasValues.getVersion(); + this.protocol = sasValues.getProtocol(); + this.startTime = sasValues.getStartTime(); + this.expiryTime = sasValues.getExpiryTime(); + this.permissions = sasValues.getPermissions(); + this.sasIpRange = sasValues.getSasIpRange(); + this.services = sasValues.getServices(); + this.resourceTypes = sasValues.getResourceTypes(); + } + + /** + * Generates a Sas signed with a {@link StorageSharedKeyCredential} + * + * @param storageSharedKeyCredentials {@link StorageSharedKeyCredential} + * @return A String representing the Sas + */ + public String generateSas(StorageSharedKeyCredential storageSharedKeyCredentials) { + StorageImplUtils.assertNotNull("storageSharedKeyCredentials", storageSharedKeyCredentials); + StorageImplUtils.assertNotNull("services", this.services); + StorageImplUtils.assertNotNull("resourceTypes", this.resourceTypes); + StorageImplUtils.assertNotNull("expiryTime", this.expiryTime); + StorageImplUtils.assertNotNull("permissions", this.permissions); + + if (CoreUtils.isNullOrEmpty(version)) { + version = Constants.HeaderConstants.TARGET_STORAGE_VERSION; + } + + // Signature is generated on the un-url-encoded values. + String signature = storageSharedKeyCredentials.computeHmac256(stringToSign(storageSharedKeyCredentials)); + + return encode(signature); + } + + private String stringToSign(final StorageSharedKeyCredential storageSharedKeyCredentials) { + return String.join("\n", + storageSharedKeyCredentials.getAccountName(), + AccountSasPermission.parse(this.permissions).toString(), // guarantees ordering + this.services, + resourceTypes, + this.startTime == null ? "" : Constants.ISO_8601_UTC_DATE_FORMATTER.format(this.startTime), + Constants.ISO_8601_UTC_DATE_FORMATTER.format(this.expiryTime), + this.sasIpRange == null ? "" : this.sasIpRange.toString(), + this.protocol == null ? "" : this.protocol.toString(), + this.version, + "" // Account SAS requires an additional newline character + ); + } + + private String encode(String signature) { + /* + We should be url-encoding each key and each value, but because we know all the keys and values will encode to + themselves, we cheat except for the signature value. + */ + StringBuilder sb = new StringBuilder(); + + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SERVICE_VERSION, this.version); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SERVICES, this.services); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_RESOURCES_TYPES, this.resourceTypes); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_PROTOCOL, this.protocol); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_START_TIME, formatQueryParameterDate(this.startTime)); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_EXPIRY_TIME, formatQueryParameterDate(this.expiryTime)); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_IP_RANGE, this.sasIpRange); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_PERMISSIONS, this.permissions); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNATURE, signature); + + return sb.toString(); + } +} diff --git a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/SasImplUtils.java b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/SasImplUtils.java new file mode 100644 index 000000000000..fc0241ae7527 --- /dev/null +++ b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/SasImplUtils.java @@ -0,0 +1,55 @@ +package com.azure.storage.common.implementation; + +import com.azure.core.http.HttpPipeline; +import com.azure.storage.common.StorageSharedKeyCredential; +import com.azure.storage.common.Utility; +import com.azure.storage.common.policy.StorageSharedKeyCredentialPolicy; + +import java.time.OffsetDateTime; + +public class SasImplUtils { + /** + * Extracts the {@link StorageSharedKeyCredential} from a {@link HttpPipeline} + * @param pipeline {@link HttpPipeline} + * @return a {@link StorageSharedKeyCredential} + */ + public static StorageSharedKeyCredential extractSharedKeyCredential(HttpPipeline pipeline) { + for (int i = 0; i < pipeline.getPolicyCount(); i++) { + if (pipeline.getPolicy(i) instanceof StorageSharedKeyCredentialPolicy) { + StorageSharedKeyCredentialPolicy policy = (StorageSharedKeyCredentialPolicy) pipeline.getPolicy(i); + return policy.sharedKeyCredential(); + } + } + return null; + } + + /** + * Shared helper method to append a SAS query parameter. + * + * @param sb The {@code StringBuilder} to append to. + * @param param The {@code String} parameter to append. + * @param value The value of the parameter to append. + */ + public static void tryAppendQueryParameter(StringBuilder sb, String param, Object value) { + if (value != null) { + if (sb.length() != 0) { + sb.append('&'); + } + sb.append(Utility.urlEncode(param)).append('=').append(Utility.urlEncode(value.toString())); + } + } + + /** + * Formats date time SAS query parameters. + * + * @param dateTime The SAS date time. + * @return A String representing the SAS date time. + */ + public static String formatQueryParameterDate(OffsetDateTime dateTime) { + if (dateTime == null) { + return null; + } else { + return Constants.ISO_8601_UTC_DATE_FORMATTER.format(dateTime); + } + } +} diff --git a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/StorageImplUtils.java b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/StorageImplUtils.java index 14b9cb584589..7dbdd994cd6d 100644 --- a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/StorageImplUtils.java +++ b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/StorageImplUtils.java @@ -3,9 +3,11 @@ package com.azure.storage.common.implementation; +import com.azure.core.http.HttpPipeline; import com.azure.core.util.UrlBuilder; import com.azure.core.util.CoreUtils; import com.azure.core.util.logging.ClientLogger; +import com.azure.storage.common.StorageSharedKeyCredential; import com.azure.storage.common.Utility; import java.net.MalformedURLException; import java.net.URL; @@ -18,6 +20,8 @@ import java.util.Map; import java.util.TreeMap; import java.util.function.Function; + +import com.azure.storage.common.policy.StorageSharedKeyCredentialPolicy; import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; diff --git a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasQueryParameters.java b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasQueryParameters.java index 37093937b409..080d4cffca4c 100644 --- a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasQueryParameters.java +++ b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasQueryParameters.java @@ -81,6 +81,7 @@ public String getResourceTypes() { * * @return A {@code String} representing all SAS query parameters. */ + @Deprecated public String encode() { /* We should be url-encoding each key and each value, but because we know all the keys and values will encode to diff --git a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasSignatureValues.java b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasSignatureValues.java index 240d253e3632..0ca6ca488fc6 100644 --- a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasSignatureValues.java +++ b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasSignatureValues.java @@ -45,9 +45,31 @@ public final class AccountSasSignatureValues { /** * Initializes a new {@link AccountSasSignatureValues} object. */ + @Deprecated public AccountSasSignatureValues() { } + /** + * Initializes a new {@link AccountSasSignatureValues} object. + * + * @param expiryTime The time after which the SAS will no longer work. + * @param services {@link AccountSasService} + * @param resourceTypes {@link AccountSasResourceType} + * @param permissions {@link AccountSasPermission} + */ + public AccountSasSignatureValues(OffsetDateTime expiryTime, AccountSasService services, + AccountSasResourceType resourceTypes, AccountSasPermission permissions) { + StorageImplUtils.assertNotNull("expiryTime", expiryTime); + StorageImplUtils.assertNotNull("services", services); + StorageImplUtils.assertNotNull("permissions", permissions); + StorageImplUtils.assertNotNull("resourceTypes", resourceTypes); + + this.expiryTime = expiryTime; + this.services = services.toString(); + this.resourceTypes = resourceTypes.toString(); + this.permissions = permissions.toString(); + } + /** * * @return the service version that is targeted, if {@code null} or empty the latest service version targeted by the @@ -118,6 +140,7 @@ public OffsetDateTime getExpiryTime() { * @param expiryTime Expiry time to set * @return the updated AccountSasSignatureValues object. */ + @Deprecated public AccountSasSignatureValues setExpiryTime(OffsetDateTime expiryTime) { this.expiryTime = expiryTime; return this; @@ -141,6 +164,7 @@ public String getPermissions() { * @return the updated AccountSasSignatureValues object. * @throws NullPointerException if {@code permissions} is null. */ + @Deprecated public AccountSasSignatureValues setPermissions(AccountSasPermission permissions) { StorageImplUtils.assertNotNull("permissions", permissions); this.permissions = permissions.toString(); @@ -179,6 +203,7 @@ public String getServices() { * @param services Allowed services string to set * @return the updated AccountSasSignatureValues object. */ + @Deprecated public AccountSasSignatureValues setServices(String services) { this.services = services; return this; @@ -199,6 +224,7 @@ public String getResourceTypes() { * @param resourceTypes Allowed resource types string to set * @return the updated AccountSasSignatureValues object. */ + @Deprecated public AccountSasSignatureValues setResourceTypes(String resourceTypes) { this.resourceTypes = resourceTypes; return this; @@ -233,6 +259,7 @@ public AccountSasSignatureValues setResourceTypes(String resourceTypes) { * @throws NullPointerException If any of {@code storageSharedKeyCredentials}, {@code services}, * {@code resourceTypes}, {@code expiryTime}, or {@code permissions} is null. */ + @Deprecated public AccountSasQueryParameters generateSasQueryParameters( StorageSharedKeyCredential storageSharedKeyCredentials) { StorageImplUtils.assertNotNull("storageSharedKeyCredentials", storageSharedKeyCredentials); diff --git a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/BaseSasQueryParameters.java b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/BaseSasQueryParameters.java index 648faf156554..e03c24a0f15a 100644 --- a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/BaseSasQueryParameters.java +++ b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/BaseSasQueryParameters.java @@ -6,6 +6,8 @@ import com.azure.storage.common.Utility; import com.azure.storage.common.implementation.Constants; +import com.azure.storage.common.implementation.SasImplUtils; + import java.time.OffsetDateTime; import java.util.Map; import java.util.function.Function; @@ -174,12 +176,7 @@ public String getSignature() { * @param value The value of the parameter to append. */ protected void tryAppendQueryParameter(StringBuilder sb, String param, Object value) { - if (value != null) { - if (sb.length() != 0) { - sb.append('&'); - } - sb.append(Utility.urlEncode(param)).append('=').append(Utility.urlEncode(value.toString())); - } + SasImplUtils.tryAppendQueryParameter(sb, param, value); } /** @@ -189,11 +186,7 @@ protected void tryAppendQueryParameter(StringBuilder sb, String param, Object va * @return A String representing the SAS date time. */ protected String formatQueryParameterDate(OffsetDateTime dateTime) { - if (dateTime == null) { - return null; - } else { - return Constants.ISO_8601_UTC_DATE_FORMATTER.format(dateTime); - } + return SasImplUtils.formatQueryParameterDate(dateTime); } /** From a5c133c3cdc311a5eacb29b008eafb9109ce3a83 Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Fri, 22 Nov 2019 10:59:29 -0800 Subject: [PATCH 02/23] Added some java doc and deprecation notices --- .../blob/BlobContainerAsyncClient.java | 26 +++++++++++++ .../storage/blob/BlobContainerClient.java | 18 +++++++++ .../storage/blob/BlobServiceAsyncClient.java | 14 ++++++- .../azure/storage/blob/BlobServiceClient.java | 19 ++++++++-- .../sas/BlobServiceSasQueryParameters.java | 2 + .../sas/BlobServiceSasSignatureValues.java | 37 +++++++++++++----- .../blob/specialized/BlobAsyncClientBase.java | 2 - ...ServiceAsyncClientJavaDocCodeSnippets.java | 25 ++++++++++++ .../BlobServiceClientJavaDocCodeSnippets.java | 24 ++++++++++++ .../azure/storage/blob/SasClientTests.groovy | 16 ++++---- .../common/sas/AccountSasSignatureValues.java | 38 ++++++++++--------- ...SasSignatureValuesJavaDocCodeSnippets.java | 35 ----------------- 12 files changed, 180 insertions(+), 76 deletions(-) delete mode 100644 sdk/storage/azure-storage-common/src/samples/java/com/azure/storage/common/sas/AccountSasSignatureValuesJavaDocCodeSnippets.java diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java index c66dbbd9fd85..74f34e5821ee 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java @@ -82,6 +82,14 @@ public final class BlobContainerAsyncClient { private final ClientLogger logger = new ClientLogger(BlobContainerAsyncClient.class); private final AzureBlobStorageImpl azureBlobStorage; + /** + * Generates a service sas for the blob using the specified {@link BlobServiceSasSignatureValues} + * @see BlobServiceSasSignatureValues for more information on how to construct a service SAS. + * + * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ private final String accountName; private final String containerName; private final BlobServiceVersion serviceVersion; @@ -904,12 +912,30 @@ Mono> getAccountInfoWithResponse(Context context) { }); } + /** + * Generates a user delegation sas for the container using the specified + * {@link BlobServiceSasSignatureValues}. + * @see BlobServiceSasSignatureValues for more information on how to construct a user delegation SAS. + * + * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} + * @param userDelegationKey {@link UserDelegationKey} + * + * @return A {@code String} representing all SAS query parameters. + */ public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues, UserDelegationKey userDelegationKey) { return new BlobSasImplUtil(blobServiceSasSignatureValues, getBlobContainerName()) .generateUserDelegationSas(userDelegationKey, getAccountName()); } + /** + * Generates a service sas for the container using the specified {@link BlobServiceSasSignatureValues} + * @see BlobServiceSasSignatureValues for more information on how to construct a service SAS. + * + * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ public String generateSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues) { return new BlobSasImplUtil(blobServiceSasSignatureValues, getBlobContainerName()) .generateSas(SasImplUtils.extractSharedKeyCredential(getHttpPipeline())); diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerClient.java index e231c6e81553..112d1d084b70 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerClient.java @@ -555,11 +555,29 @@ public Response getAccountInfoWithResponse(Duration timeout, return blockWithOptionalTimeout(response, timeout); } + /** + * Generates a user delegation sas for the container using the specified + * {@link BlobServiceSasSignatureValues}. + * @see BlobServiceSasSignatureValues for more information on how to construct a user delegation SAS. + * + * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} + * @param userDelegationKey {@link UserDelegationKey} + * + * @return A {@code String} representing all SAS query parameters. + */ public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues, UserDelegationKey userDelegationKey) { return this.client.generateUserDelegationSas(blobServiceSasSignatureValues, userDelegationKey); } + /** + * Generates a service sas for the container using the specified {@link BlobServiceSasSignatureValues} + * @see BlobServiceSasSignatureValues for more information on how to construct a service SAS. + * + * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ public String generateSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues) { return this.client.generateSas(blobServiceSasSignatureValues); } diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceAsyncClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceAsyncClient.java index 050734edc258..40fff379f1f4 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceAsyncClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceAsyncClient.java @@ -555,7 +555,19 @@ public String getAccountName() { return this.accountName; } - public String generateSas(AccountSasSignatureValues accountSasSignatureValues) { + /** + * Generates an account sas for the Azure Storage account using the specified {@link AccountSasSignatureValues}. + * @see AccountSasSignatureValues for more information on how to construct an account SAS. + * + *

The snippet below generates a SAS that lasts for two days and gives the user read and list access to blob + * containers and file shares.

+ * {@codesnippet com.azure.storage.blob.BlobServiceAsyncClient.generateAccountSas#AccountSasSignatureValues} + * + * @param accountSasSignatureValues {@link AccountSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateAccountSas(AccountSasSignatureValues accountSasSignatureValues) { return new AccountSasImplUtil(accountSasSignatureValues) .generateSas(SasImplUtils.extractSharedKeyCredential(getHttpPipeline())); } diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceClient.java index 3e380dda771e..1668483bfc59 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceClient.java @@ -17,8 +17,6 @@ import com.azure.storage.blob.models.PublicAccessType; import com.azure.storage.blob.models.StorageAccountInfo; import com.azure.storage.blob.models.UserDelegationKey; -import com.azure.storage.common.implementation.AccountSasImplUtil; -import com.azure.storage.common.implementation.SasImplUtils; import com.azure.storage.common.implementation.StorageImplUtils; import com.azure.storage.common.sas.AccountSasSignatureValues; import reactor.core.publisher.Mono; @@ -376,7 +374,20 @@ public String getAccountName() { return this.blobServiceAsyncClient.getAccountName(); } - public String generateSas(AccountSasSignatureValues accountSasSignatureValues) { - return this.blobServiceAsyncClient.generateSas(accountSasSignatureValues); + /** + * Generates an account sas for the Azure Storage account using the specified {@link AccountSasSignatureValues}. + * @see AccountSasSignatureValues for more information on how to construct an account SAS. + * + *

Generating an account SAS

+ *

The snippet below generates an AccountSasSignatureValues object that lasts for two days and gives the user + * read and list access to blob and file shares.

+ * {@codesnippet com.azure.storage.blob.BlobServiceClient.generateAccountSas#AccountSasSignatureValues} + * + * @param accountSasSignatureValues {@link AccountSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateAccountSas(AccountSasSignatureValues accountSasSignatureValues) { + return this.blobServiceAsyncClient.generateAccountSas(accountSasSignatureValues); } } diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasQueryParameters.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasQueryParameters.java index 914e749402fa..d1fe21d78da4 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasQueryParameters.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasQueryParameters.java @@ -240,6 +240,8 @@ UserDelegationKey userDelegationKey() { * Encodes all SAS query parameters into a string that can be appended to a URL. * * @return A {@code String} representing all SAS query parameters. + * @deprecated Please use the generate*Sas method on the desired container/blob client after initializing + * {@link BlobServiceSasSignatureValues}. */ @Deprecated public String encode() { diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasSignatureValues.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasSignatureValues.java index 00ec1c716515..eb2a06ab47e5 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasSignatureValues.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasSignatureValues.java @@ -6,7 +6,6 @@ import com.azure.core.util.CoreUtils; import com.azure.core.util.logging.ClientLogger; import com.azure.storage.blob.BlobServiceVersion; -import com.azure.storage.blob.implementation.util.BlobSasImplUtil; import com.azure.storage.blob.models.UserDelegationKey; import com.azure.storage.common.Utility; import com.azure.storage.common.implementation.Constants; @@ -19,13 +18,17 @@ /** * Used to initialize parameters for a Shared Access Signature (SAS) for an Azure Blob Storage service. Once all the - * values here are set, use the appropriate generate*Sas method on the desired client to obtain a representation of the - * SAS which can then be applied to a new client using the .sasToken method on a client builder. + * values here are set, use the appropriate generate*Sas method on the desired container/blob client to obtain a + * representation of the SAS which can then be applied to a new client using the .sasToken(String) method on the + * desired client builder. * * @see Storage SAS overview * @see Constructing a Service * SAS + * @see Constructing a + * User Delegation SAS */ + // TODO (gapra) : Add code snippets for new workflow public final class BlobServiceSasSignatureValues { /** @@ -79,6 +82,9 @@ public final class BlobServiceSasSignatureValues { /** * Creates an object with empty values for all fields. + * @deprecated Please use {@link #BlobServiceSasSignatureValues(String)}, + * {@link #BlobServiceSasSignatureValues(OffsetDateTime, BlobSasPermission)}, or + * {@link #BlobServiceSasSignatureValues(OffsetDateTime, BlobContainerSasPermission)} */ @Deprecated public BlobServiceSasSignatureValues() { @@ -87,8 +93,8 @@ public BlobServiceSasSignatureValues() { /** * Creates an object with the specified expiry time and permissions * - * @param expiryTime Time the SAS becomes valid - * @param permissions Permissions granted by the SAS + * @param expiryTime The time after which the SAS will no longer work. + * @param permissions {@link BlobContainerSasPermission} allowed by the SAS. */ public BlobServiceSasSignatureValues(OffsetDateTime expiryTime, BlobContainerSasPermission permissions) { StorageImplUtils.assertNotNull("expiryTime", expiryTime); @@ -100,8 +106,8 @@ public BlobServiceSasSignatureValues(OffsetDateTime expiryTime, BlobContainerSas /** * Creates an object with the specified expiry time and permissions * - * @param expiryTime Time the SAS becomes valid - * @param permissions Permissions granted by the SAS + * @param expiryTime When the SAS will no longer work + * @param permissions {@link BlobSasPermission} allowed by the SAS */ public BlobServiceSasSignatureValues(OffsetDateTime expiryTime, BlobSasPermission permissions) { StorageImplUtils.assertNotNull("expiryTime", expiryTime); @@ -114,7 +120,7 @@ public BlobServiceSasSignatureValues(OffsetDateTime expiryTime, BlobSasPermissio * Creates an object with the specified identifier. * NOTE: Identifier can not be used for a {@link UserDelegationKey} SAS. * - * @param identifier Identifier for the SAS + * @param identifier Name of the access policy */ public BlobServiceSasSignatureValues(String identifier) { StorageImplUtils.assertNotNull("identifier", identifier); @@ -137,6 +143,10 @@ public BlobServiceSasSignatureValues(String identifier) { * @param contentEncoding The content-encoding header for the SAS. * @param contentLanguage The content-language header for the SAS. * @param contentType The content-type header for the SAS. + * @deprecated Please use {@link #BlobServiceSasSignatureValues(String)}, + * {@link #BlobServiceSasSignatureValues(OffsetDateTime, BlobSasPermission)}, or + * {@link #BlobServiceSasSignatureValues(OffsetDateTime, BlobContainerSasPermission)} + * followed by calls to the desired setters. */ @Deprecated public BlobServiceSasSignatureValues(String version, SasProtocol sasProtocol, OffsetDateTime startTime, @@ -298,6 +308,8 @@ public String getContainerName() { * * @param containerName The name of the container. * @return The updated BlobServiceSASSignatureValues object. + * @deprecated Please use the generate*Sas methods provided on the desired container/blob client that will + * auto-populate the container name. */ @Deprecated public BlobServiceSasSignatureValues setContainerName(String containerName) { @@ -321,6 +333,8 @@ public String getBlobName() { * * @param blobName The name of the blob. Use {@code null} or an empty string to create a container SAS. * @return The updated BlobServiceSASSignatureValues object. + * @deprecated Please use the generate*Sas methods provided on the desired blob client that will auto-populate the + * blob name. */ @Deprecated public BlobServiceSasSignatureValues setBlobName(String blobName) { @@ -343,6 +357,8 @@ public String getSnapshotId() { * * @param snapshotId Identifier of the snapshot * @return the updated BlobServiceSASSignatureValues object + * @deprecated Please use the generate*Sas methods provided on the desired (snapshot) blob client that will + * auto-populate the snapshot id. */ @Deprecated public BlobServiceSasSignatureValues setSnapshotId(String snapshotId) { @@ -370,7 +386,6 @@ public String getIdentifier() { * @param identifier Name of the access policy * @return the updated BlobServiceSASSignatureValues object */ - @Deprecated public BlobServiceSasSignatureValues setIdentifier(String identifier) { this.identifier = identifier; return this; @@ -498,6 +513,8 @@ public BlobServiceSasSignatureValues setContentType(String contentType) { * encoded string, or the UTF-8 charset isn't supported. * @throws IllegalArgumentException if {@link #getPermissions()} contains an invalid character for the SAS resource. * @throws NullPointerException if {@code storageSharedKeyCredentials} is null. + * @deprecated Please use the generateSas(BlobServiceSasSignatureValues) method on the desired container/blob client + * after initializing {@link BlobServiceSasSignatureValues}. */ @Deprecated public BlobServiceSasQueryParameters generateSasQueryParameters( @@ -549,6 +566,8 @@ public BlobServiceSasQueryParameters generateSasQueryParameters( * @throws NullPointerException if {@code delegationKey} or {@code account} is null. * @see * Create a user delegation SAS + * @deprecated Please use the generateUserDelegationSas(BlobServiceSasSignatureValues, UserDelegationKey) method on + * the desired container/blob client after initializing {@link BlobServiceSasSignatureValues}. */ @Deprecated public BlobServiceSasQueryParameters generateSasQueryParameters(UserDelegationKey delegationKey, diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java index 66eae423ab03..81b5705756d6 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java @@ -25,7 +25,6 @@ import com.azure.storage.blob.implementation.models.BlobGetAccountInfoHeaders; import com.azure.storage.blob.implementation.models.BlobGetPropertiesHeaders; import com.azure.storage.blob.implementation.models.BlobStartCopyFromURLHeaders; -import com.azure.storage.blob.implementation.util.BlobSasImplUtil; import com.azure.storage.blob.implementation.util.ModelHelper; import com.azure.storage.blob.models.AccessTier; import com.azure.storage.blob.models.ArchiveStatus; @@ -49,7 +48,6 @@ import com.azure.storage.blob.sas.BlobServiceSasSignatureValues; import com.azure.storage.common.Utility; import com.azure.storage.common.implementation.Constants; -import com.azure.storage.common.implementation.SasImplUtils; import com.azure.storage.common.implementation.StorageImplUtils; import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobServiceAsyncClientJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobServiceAsyncClientJavaDocCodeSnippets.java index c2c2b7167f3a..5ae2897a2e88 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobServiceAsyncClientJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobServiceAsyncClientJavaDocCodeSnippets.java @@ -11,7 +11,12 @@ import com.azure.storage.blob.models.BlobServiceProperties; import com.azure.storage.blob.models.ListBlobContainersOptions; import com.azure.storage.blob.models.PublicAccessType; +import com.azure.storage.common.sas.AccountSasPermission; +import com.azure.storage.common.sas.AccountSasResourceType; +import com.azure.storage.common.sas.AccountSasService; +import com.azure.storage.common.sas.AccountSasSignatureValues; +import java.time.Duration; import java.time.OffsetDateTime; import java.util.Collections; import java.util.Map; @@ -234,4 +239,24 @@ public void getAccountInfoWithResponse() { response.getValue().getSkuName())); // END: com.azure.storage.blob.BlobServiceAsyncClient.getAccountInfoWithResponse } + + /** + * Code snippet for {@link BlobServiceAsyncClient#generateAccountSas(AccountSasSignatureValues)} + */ + public void generateAccountSas() { + // BEGIN: com.azure.storage.blob.BlobServiceAsyncClient.generateAccountSas#AccountSasSignatureValues + AccountSasPermission permissions = new AccountSasPermission() + .setListPermission(true) + .setReadPermission(true); + AccountSasResourceType resourceTypes = new AccountSasResourceType().setContainer(true); + AccountSasService services = new AccountSasService().setBlobAccess(true).setFileAccess(true); + OffsetDateTime expiryTime = OffsetDateTime.now().plus(Duration.ofDays(2)); + + AccountSasSignatureValues sasValues = + new AccountSasSignatureValues(expiryTime, permissions, services, resourceTypes); + + // Client must be authenticated via StorageSharedKeyCredential + String sas = client.generateAccountSas(sasValues); + // END: com.azure.storage.blob.BlobServiceAsyncClient.generateAccountSas#AccountSasSignatureValues + } } diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobServiceClientJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobServiceClientJavaDocCodeSnippets.java index 5f2b7f135608..bfc83ae426f9 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobServiceClientJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobServiceClientJavaDocCodeSnippets.java @@ -12,6 +12,10 @@ import com.azure.storage.blob.models.ListBlobContainersOptions; import com.azure.storage.blob.models.PublicAccessType; import com.azure.storage.blob.models.StorageAccountInfo; +import com.azure.storage.common.sas.AccountSasPermission; +import com.azure.storage.common.sas.AccountSasResourceType; +import com.azure.storage.common.sas.AccountSasService; +import com.azure.storage.common.sas.AccountSasSignatureValues; import java.time.Duration; import java.time.OffsetDateTime; @@ -241,4 +245,24 @@ public void getAccountInfoWithResponse() { StorageAccountInfo accountInfo = client.getAccountInfoWithResponse(timeout, context).getValue(); // END: com.azure.storage.blob.BlobServiceClient.getAccountInfoWithResponse#Duration-Context } + + /** + * Code snippet for {@link BlobServiceClient#generateAccountSas(AccountSasSignatureValues)} + */ + public void generateAccountSas() { + // BEGIN: com.azure.storage.blob.BlobServiceClient.generateAccountSas#AccountSasSignatureValues + AccountSasPermission permissions = new AccountSasPermission() + .setListPermission(true) + .setReadPermission(true); + AccountSasResourceType resourceTypes = new AccountSasResourceType().setContainer(true); + AccountSasService services = new AccountSasService().setBlobAccess(true).setFileAccess(true); + OffsetDateTime expiryTime = OffsetDateTime.now().plus(Duration.ofDays(2)); + + AccountSasSignatureValues sasValues = + new AccountSasSignatureValues(expiryTime, permissions, services, resourceTypes); + + // Client must be authenticated via StorageSharedKeyCredential + String sas = client.generateAccountSas(sasValues); + // END: com.azure.storage.blob.BlobServiceClient.generateAccountSas#AccountSasSignatureValues + } } diff --git a/sdk/storage/azure-storage-blob/src/test/java/com/azure/storage/blob/SasClientTests.groovy b/sdk/storage/azure-storage-blob/src/test/java/com/azure/storage/blob/SasClientTests.groovy index b32ab6700954..d74cbed851f6 100644 --- a/sdk/storage/azure-storage-blob/src/test/java/com/azure/storage/blob/SasClientTests.groovy +++ b/sdk/storage/azure-storage-blob/src/test/java/com/azure/storage/blob/SasClientTests.groovy @@ -259,8 +259,8 @@ class SasClientTests extends APISpec { def expiryTime = getUTCNow().plusDays(1) when: - def sasValues = new AccountSasSignatureValues(expiryTime, service, resourceType, permissions) - def sas = primaryBlobServiceClient.generateSas(sasValues) + def sasValues = new AccountSasSignatureValues(expiryTime, permissions, service, resourceType) + def sas = primaryBlobServiceClient.generateAccountSas(sasValues) def client = getBlobClient(sas, cc.getBlobContainerUrl(), blobName).getBlockBlobClient() def os = new ByteArrayOutputStream() client.download(os) @@ -282,8 +282,8 @@ class SasClientTests extends APISpec { def expiryTime = getUTCNow().plusDays(1) when: - def sasValues = new AccountSasSignatureValues(expiryTime, service, resourceType, permissions) - def sas = primaryBlobServiceClient.generateSas(sasValues) + def sasValues = new AccountSasSignatureValues(expiryTime, permissions, service, resourceType) + def sas = primaryBlobServiceClient.generateAccountSas(sasValues) def client = getBlobClient(sas, cc.getBlobContainerUrl(), blobName).getBlockBlobClient() client.delete() @@ -305,8 +305,8 @@ class SasClientTests extends APISpec { def expiryTime = getUTCNow().plusDays(1) when: - def sasValues = new AccountSasSignatureValues(expiryTime, service, resourceType, permissions) - def sas = primaryBlobServiceClient.generateSas(sasValues) + def sasValues = new AccountSasSignatureValues(expiryTime, permissions, service, resourceType) + def sas = primaryBlobServiceClient.generateAccountSas(sasValues) def sc = getServiceClient(sas, primaryBlobServiceClient.getAccountUrl()) sc.createBlobContainer(generateContainerName()) @@ -328,8 +328,8 @@ class SasClientTests extends APISpec { def expiryTime = getUTCNow().plusDays(1) when: - def sasValues = new AccountSasSignatureValues(expiryTime, service, resourceType, permissions) - def sas = primaryBlobServiceClient.generateSas(sasValues) + def sasValues = new AccountSasSignatureValues(expiryTime, permissions, service, resourceType) + def sas = primaryBlobServiceClient.generateAccountSas(sasValues) def sc = getServiceClient(sas, primaryBlobServiceClient.getAccountUrl()) sc.createBlobContainer(generateContainerName()) diff --git a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasSignatureValues.java b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasSignatureValues.java index 0ca6ca488fc6..45ee5fa9e817 100644 --- a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasSignatureValues.java +++ b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasSignatureValues.java @@ -11,19 +11,13 @@ import java.time.OffsetDateTime; /** - * Used to generate a Shared Access Signature (SAS) for an Azure Storage account. Once all the values are set, call - * {@link - * #generateSasQueryParameters(StorageSharedKeyCredential) generateSASQueryParameters(StorageSharedKeyCredential)} to - * obtain a representation of the SAS which can actually be applied to container, file, queue, and tables. - * - *

Generating an account SAS

- *

The snippet below generates an account SAS that lasts for two days and gives the user read and list access to - * blob containers and file shares.

- * - * {@codesnippet com.azure.storage.common.sas.accountSasSignatureValues.generateSasQueryParameters#StorageSharedKeyCredential} + * Used to initialize parameters for a Shared Access Signature (SAS) for an Azure Storage account. Once all the + * values here are set, use the appropriate generate*Sas method on the desired service client to obtain a + * representation of the SAS which can then be applied to a new client using the .sasToken(String) method on the + * desired client builder. * + * @see Storage SAS overview * @see Create an account SAS - * @see Storage SAS overview */ public final class AccountSasSignatureValues { private String version; @@ -44,6 +38,7 @@ public final class AccountSasSignatureValues { /** * Initializes a new {@link AccountSasSignatureValues} object. + * @deprecated Please use {@link #AccountSasSignatureValues(OffsetDateTime, AccountSasPermission, AccountSasService, AccountSasResourceType)} */ @Deprecated public AccountSasSignatureValues() { @@ -51,14 +46,13 @@ public AccountSasSignatureValues() { /** * Initializes a new {@link AccountSasSignatureValues} object. - * * @param expiryTime The time after which the SAS will no longer work. - * @param services {@link AccountSasService} - * @param resourceTypes {@link AccountSasResourceType} - * @param permissions {@link AccountSasPermission} + * @param permissions {@link AccountSasPermission} allowed by the SAS. + * @param services {@link AccountSasService} targeted by the SAS. + * @param resourceTypes {@link AccountSasResourceType} targeted by the SAS. */ - public AccountSasSignatureValues(OffsetDateTime expiryTime, AccountSasService services, - AccountSasResourceType resourceTypes, AccountSasPermission permissions) { + public AccountSasSignatureValues(OffsetDateTime expiryTime, AccountSasPermission permissions, + AccountSasService services, AccountSasResourceType resourceTypes) { StorageImplUtils.assertNotNull("expiryTime", expiryTime); StorageImplUtils.assertNotNull("services", services); StorageImplUtils.assertNotNull("permissions", permissions); @@ -139,6 +133,8 @@ public OffsetDateTime getExpiryTime() { * * @param expiryTime Expiry time to set * @return the updated AccountSasSignatureValues object. + * @deprecated Please use {@link #AccountSasSignatureValues(OffsetDateTime, AccountSasPermission, AccountSasService, AccountSasResourceType)} + * to specify the expiry time. */ @Deprecated public AccountSasSignatureValues setExpiryTime(OffsetDateTime expiryTime) { @@ -163,6 +159,8 @@ public String getPermissions() { * @param permissions Permissions to set. * @return the updated AccountSasSignatureValues object. * @throws NullPointerException if {@code permissions} is null. + * @deprecated Please use {@link #AccountSasSignatureValues(OffsetDateTime, AccountSasPermission, AccountSasService, AccountSasResourceType)} + * to specify the allowed permissions. */ @Deprecated public AccountSasSignatureValues setPermissions(AccountSasPermission permissions) { @@ -202,6 +200,8 @@ public String getServices() { * * @param services Allowed services string to set * @return the updated AccountSasSignatureValues object. + * @deprecated Please use {@link #AccountSasSignatureValues(OffsetDateTime, AccountSasPermission, AccountSasService, AccountSasResourceType)} + * to specify the services being targeted. */ @Deprecated public AccountSasSignatureValues setServices(String services) { @@ -223,6 +223,8 @@ public String getResourceTypes() { * * @param resourceTypes Allowed resource types string to set * @return the updated AccountSasSignatureValues object. + * @deprecated Please use {@link #AccountSasSignatureValues(OffsetDateTime, AccountSasPermission, AccountSasService, AccountSasResourceType)} + * to specify the resource types being targeted. */ @Deprecated public AccountSasSignatureValues setResourceTypes(String resourceTypes) { @@ -258,6 +260,8 @@ public AccountSasSignatureValues setResourceTypes(String resourceTypes) { * @throws RuntimeException If the HMAC-SHA256 signature for {@code storageSharedKeyCredentials} fails to generate. * @throws NullPointerException If any of {@code storageSharedKeyCredentials}, {@code services}, * {@code resourceTypes}, {@code expiryTime}, or {@code permissions} is null. + * @deprecated Please use the generateAccountSas(AccountSasSignatureValues) method on the desired service client + * after initializing {@link AccountSasSignatureValues}. */ @Deprecated public AccountSasQueryParameters generateSasQueryParameters( diff --git a/sdk/storage/azure-storage-common/src/samples/java/com/azure/storage/common/sas/AccountSasSignatureValuesJavaDocCodeSnippets.java b/sdk/storage/azure-storage-common/src/samples/java/com/azure/storage/common/sas/AccountSasSignatureValuesJavaDocCodeSnippets.java deleted file mode 100644 index af33baca1953..000000000000 --- a/sdk/storage/azure-storage-common/src/samples/java/com/azure/storage/common/sas/AccountSasSignatureValuesJavaDocCodeSnippets.java +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. - -package com.azure.storage.common.sas; - -import com.azure.storage.common.StorageSharedKeyCredential; - -import java.time.Duration; -import java.time.OffsetDateTime; - -/** - * Code snippets for {@link AccountSasSignatureValues}. - */ -public class AccountSasSignatureValuesJavaDocCodeSnippets { - public void generateSas() { - // BEGIN: com.azure.storage.common.sas.accountSasSignatureValues.generateSasQueryParameters#StorageSharedKeyCredential - StorageSharedKeyCredential credential = new StorageSharedKeyCredential("my-account", "my-key"); - - AccountSasPermission permissions = new AccountSasPermission() - .setListPermission(true) - .setReadPermission(true); - String resourceTypes = new AccountSasResourceType().setContainer(true).toString(); - String services = new AccountSasService().setBlobAccess(true).setFileAccess(true).toString(); - - // Creates an account SAS that can read and list from blob containers and file shares. - // The following are required: permissions, resourceTypes, services, and expiry date. - AccountSasQueryParameters sasQueryParameters = new AccountSasSignatureValues() - .setPermissions(permissions) - .setResourceTypes(resourceTypes) - .setServices(services) - .setExpiryTime(OffsetDateTime.now().plus(Duration.ofDays(2))) - .generateSasQueryParameters(credential); - // END: com.azure.storage.common.sas.accountSasSignatureValues.generateSasQueryParameters#StorageSharedKeyCredential - } -} From bad7d1acfa3b1de0d771ea3a5e2b9db12f241c26 Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Mon, 25 Nov 2019 09:19:19 -0800 Subject: [PATCH 03/23] added test recordings + more tests --- .../implementation/util/BlobSasImplUtil.java | 14 +- .../azure/storage/blob/SasClientTests.groovy | 172 ++++++++++++++ ...accountsasnetworkcreatecontainerfails.json | 112 +++++++++ ...ountsasnetworkcreatecontainersucceeds.json | 130 +++++++++++ ...ntsasnetworktestblobdeletefailsnewapi.json | 112 +++++++++ ...entTestsaccountsasnetworktestblobread.json | 120 ++++++++++ ...ntTestsblobsasimplutilstringtosign[0].json | 90 +++++++ ...ntTestsblobsasimplutilstringtosign[1].json | 90 +++++++ ...ntTestsblobsasimplutilstringtosign[2].json | 90 +++++++ ...ntTestsblobsasimplutilstringtosign[3].json | 90 +++++++ ...ntTestsblobsasimplutilstringtosign[4].json | 90 +++++++ ...ntTestsblobsasimplutilstringtosign[5].json | 90 +++++++ ...ntTestsblobsasimplutilstringtosign[6].json | 90 +++++++ ...ntTestsblobsasimplutilstringtosign[7].json | 90 +++++++ ...ntTestsblobsasimplutilstringtosign[8].json | 90 +++++++ ...ntTestsblobsasimplutilstringtosign[9].json | 90 +++++++ ...lutilstringtosignuserdelegationkey[0].json | 90 +++++++ ...utilstringtosignuserdelegationkey[10].json | 90 +++++++ ...utilstringtosignuserdelegationkey[11].json | 90 +++++++ ...utilstringtosignuserdelegationkey[12].json | 90 +++++++ ...utilstringtosignuserdelegationkey[13].json | 90 +++++++ ...utilstringtosignuserdelegationkey[14].json | 90 +++++++ ...lutilstringtosignuserdelegationkey[1].json | 90 +++++++ ...lutilstringtosignuserdelegationkey[2].json | 90 +++++++ ...lutilstringtosignuserdelegationkey[3].json | 90 +++++++ ...lutilstringtosignuserdelegationkey[4].json | 90 +++++++ ...lutilstringtosignuserdelegationkey[5].json | 90 +++++++ ...lutilstringtosignuserdelegationkey[6].json | 90 +++++++ ...lutilstringtosignuserdelegationkey[7].json | 90 +++++++ ...lutilstringtosignuserdelegationkey[8].json | 90 +++++++ ...lutilstringtosignuserdelegationkey[9].json | 90 +++++++ ...blobservicesasnetworktestblobsnapshot.json | 197 ++++++++++++++++ ...ClientTestsensurestateillegalargument.json | 90 +++++++ ...tsensurestateresourceandpermission[0].json | 90 +++++++ ...tsensurestateresourceandpermission[1].json | 90 +++++++ ...tsensurestateresourceandpermission[2].json | 90 +++++++ .../SasClientTestsensurestateversion.json | 90 +++++++ .../SasClientTestsnetworktestblobsas.json | 158 +++++++++++++ ...SasClientTestsnetworktestblobsnapshot.json | 202 ++++++++++++++++ ...networktestblobsnapshotuserdelegation.json | 219 ++++++++++++++++++ ...entTestsnetworktestblobuserdelegation.json | 180 ++++++++++++++ ...stsnetworktestcontaineruserdelegation.json | 133 +++++++++++ ...assignaturevaluesnetworktestcontainer.json | 154 ++++++++++++ .../common/sas/AccountSasPermission.java | 2 +- .../common/sas/AccountSasQueryParameters.java | 5 + 45 files changed, 4606 insertions(+), 4 deletions(-) create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsaccountsasnetworkcreatecontainerfails.json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsaccountsasnetworkcreatecontainersucceeds.json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsaccountsasnetworktestblobdeletefailsnewapi.json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsaccountsasnetworktestblobread.json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[0].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[1].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[2].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[3].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[4].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[5].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[6].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[7].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[8].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[9].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[0].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[10].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[11].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[12].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[13].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[14].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[1].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[2].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[3].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[4].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[5].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[6].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[7].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[8].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[9].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobservicesasnetworktestblobsnapshot.json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsensurestateillegalargument.json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsensurestateresourceandpermission[0].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsensurestateresourceandpermission[1].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsensurestateresourceandpermission[2].json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsensurestateversion.json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsnetworktestblobsas.json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsnetworktestblobsnapshot.json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsnetworktestblobsnapshotuserdelegation.json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsnetworktestblobuserdelegation.json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsnetworktestcontaineruserdelegation.json create mode 100644 sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsservicesassignaturevaluesnetworktestcontainer.json diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/implementation/util/BlobSasImplUtil.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/implementation/util/BlobSasImplUtil.java index b351c6db02d5..07beaee1e321 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/implementation/util/BlobSasImplUtil.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/implementation/util/BlobSasImplUtil.java @@ -158,7 +158,7 @@ public String generateUserDelegationSas(UserDelegationKey delegationKey, String * @param signature The signature of the Sas. * @return A String representing the Sas. */ - public String encode(UserDelegationKey userDelegationKey, String signature) { + private String encode(UserDelegationKey userDelegationKey, String signature) { /* We should be url-encoding each key and each value, but because we know all the keys and values will encode to themselves, we cheat except for the signature value. @@ -202,11 +202,12 @@ public String encode(UserDelegationKey userDelegationKey, String signature) { * Ensures that the builder's properties are in a consistent state. * 1. If there is no version, use latest. - * 2. Resource name is chosen by: + * 2. If there is no identifier set, ensure expiryTime and permissions are set. + * 3. Resource name is chosen by: * a. If "BlobName" is _not_ set, it is a container resource. * b. Otherwise, if "SnapshotId" is set, it is a blob snapshot resource. * c. Otherwise, it is a blob resource. - * 3. Reparse permissions depending on what the resource is. If it is an unrecognised resource, do nothing. + * 4. Reparse permissions depending on what the resource is. If it is an unrecognised resource, do nothing. * * Taken from: * https://github.com/Azure/azure-storage-blob-go/blob/master/azblob/sas_service.go#L33 @@ -217,6 +218,13 @@ private void ensureState() { version = BlobServiceVersion.getLatest().getVersion(); } + if (identifier == null) { + if (expiryTime == null || permissions == null) { + throw logger.logExceptionAsError(new IllegalStateException("If identifier is not set, expiry time " + + "and permissions must be set")); + } + } + if (CoreUtils.isNullOrEmpty(blobName)) { resource = SAS_CONTAINER_CONSTANT; } else if (snapshotId != null) { diff --git a/sdk/storage/azure-storage-blob/src/test/java/com/azure/storage/blob/SasClientTests.groovy b/sdk/storage/azure-storage-blob/src/test/java/com/azure/storage/blob/SasClientTests.groovy index d74cbed851f6..24ed0b81538f 100644 --- a/sdk/storage/azure-storage-blob/src/test/java/com/azure/storage/blob/SasClientTests.groovy +++ b/sdk/storage/azure-storage-blob/src/test/java/com/azure/storage/blob/SasClientTests.groovy @@ -1,5 +1,6 @@ package com.azure.storage.blob +import com.azure.storage.blob.implementation.util.BlobSasImplUtil import com.azure.storage.blob.models.BlobAccessPolicy import com.azure.storage.blob.models.BlobProperties import com.azure.storage.blob.models.BlobSignedIdentifier @@ -10,12 +11,19 @@ import com.azure.storage.blob.sas.BlobSasPermission import com.azure.storage.blob.sas.BlobServiceSasSignatureValues import com.azure.storage.blob.specialized.BlockBlobClient import com.azure.storage.blob.specialized.SpecializedBlobClientBuilder +import com.azure.storage.common.implementation.Constants +import com.azure.storage.common.implementation.StorageImplUtils import com.azure.storage.common.sas.AccountSasPermission import com.azure.storage.common.sas.AccountSasResourceType import com.azure.storage.common.sas.AccountSasService import com.azure.storage.common.sas.AccountSasSignatureValues import com.azure.storage.common.sas.SasIpRange import com.azure.storage.common.sas.SasProtocol +import spock.lang.Unroll + +import java.time.LocalDateTime +import java.time.OffsetDateTime +import java.time.ZoneOffset class SasClientTests extends APISpec { @@ -369,4 +377,168 @@ class SasClientTests extends APISpec { return key } + /* Blob SAS Impl Util Tests */ + def "ensure state version"() { + when: + BlobSasImplUtil implUtil = new BlobSasImplUtil(new BlobServiceSasSignatureValues("id"), "container") + implUtil.version = null + implUtil.ensureState() + + then: + implUtil.version // Version is set + implUtil.resource == "c" // Default resource is container + !implUtil.permissions // Identifier was used so permissions is null + } + + def "ensure state illegal argument"() { + when: + BlobSasImplUtil implUtil = new BlobSasImplUtil(new BlobServiceSasSignatureValues(), null) + + implUtil.ensureState() + + then: + thrown(IllegalStateException) + } + + @Unroll + def "ensure state resource and permission"() { + setup: + def expiryTime = OffsetDateTime.now().plusDays(1) + + expect: + BlobSasImplUtil implUtil = new BlobSasImplUtil(new BlobServiceSasSignatureValues(expiryTime, permission), container, blob, snapshot) + implUtil.ensureState() + implUtil.resource == resource + implUtil.permissions == permissionString + + where: + container | blob | snapshot | permission || resource | permissionString + "container" | null | null | new BlobContainerSasPermission().setReadPermission(true).setListPermission(true) || "c" | "rl" + "container" | "blob" | null | new BlobSasPermission().setReadPermission(true) || "b" | "r" + "container" | "blob" | "snapshot" | new BlobSasPermission().setReadPermission(true) || "bs" | "r" + } + + /* + This test will ensure that each field gets placed into the proper location within the string to sign and that null + values are handled correctly. We will validate the whole SAS with service calls as well as correct serialization of + individual parts later. + */ + + @Unroll + def "blob sas impl util string to sign"() { + when: + def e = OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC) + def p = new BlobSasPermission() + p.setReadPermission(true) + def v = new BlobServiceSasSignatureValues(e, p) + + def expected = String.format(expectedStringToSign, primaryCredential.getAccountName()) + + v.setStartTime(startTime) + + if (ipRange != null) { + def ipR = new SasIpRange() + ipR.setIpMin("ip") + v.setSasIpRange(ipR) + } + v.setIdentifier(identifier) + .setProtocol(protocol) + .setCacheControl(cacheControl) + .setContentDisposition(disposition) + .setContentEncoding(encoding) + .setContentLanguage(language) + .setContentType(type) + + def implUtil = new BlobSasImplUtil(v, "containerName", "blobName", snapId) + + def sasToken = implUtil.generateSas(primaryCredential) + + def token = BlobUrlParts.parse(cc.getBlobContainerUrl() + "?" + sasToken).getSasQueryParameters() + + then: + token.getSignature() == primaryCredential.computeHmac256(expected) + + /* + We don't test the blob or containerName properties because canonicalized resource is always added as at least + /blob/accountName. We test canonicalization of resources later. Again, this is not to test a fully functional + sas but the construction of the string to sign. + Signed resource is tested elsewhere, as we work some minor magic in choosing which value to use. + */ + where: + startTime | identifier | ipRange | protocol | snapId | cacheControl | disposition | encoding | language | type || expectedStringToSign + OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC) | null | null | null | null | null | null | null | null | null || "r\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n\n\n\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nb\n\n\n\n\n\n" + null | "id" | null | null | null | null | null | null | null | null || "r\n\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\nid\n\n\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nb\n\n\n\n\n\n" + null | null | new SasIpRange() | null | null | null | null | null | null | null || "r\n\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n\nip\n\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nb\n\n\n\n\n\n" + null | null | null | SasProtocol.HTTPS_ONLY | null | null | null | null | null | null || "r\n\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n\n\n" + SasProtocol.HTTPS_ONLY + "\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nb\n\n\n\n\n\n" + null | null | null | null | "snapId" | null | null | null | null | null || "r\n\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n\n\n\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nbs\nsnapId\n\n\n\n\n" + null | null | null | null | null | "control" | null | null | null | null || "r\n\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n\n\n\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nb\n\ncontrol\n\n\n\n" + null | null | null | null | null | null | "disposition" | null | null | null || "r\n\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n\n\n\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nb\n\n\ndisposition\n\n\n" + null | null | null | null | null | null | null | "encoding" | null | null || "r\n\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n\n\n\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nb\n\n\n\nencoding\n\n" + null | null | null | null | null | null | null | null | "language" | null || "r\n\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n\n\n\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nb\n\n\n\n\nlanguage\n" + null | null | null | null | null | null | null | null | null | "type" || "r\n\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n\n\n\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nb\n\n\n\n\n\ntype" + } + + @Unroll + def "blob sas impl util string to sign user delegation key"() { + when: + def e = OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC) + def p = new BlobSasPermission() + p.setReadPermission(true) + def v = new BlobServiceSasSignatureValues(e, p) + + def expected = String.format(expectedStringToSign, primaryCredential.getAccountName()) + + v.setStartTime(startTime) + + if (ipRange != null) { + def ipR = new SasIpRange() + ipR.setIpMin("ip") + v.setSasIpRange(ipR) + } + v.setProtocol(protocol) + .setCacheControl(cacheControl) + .setContentDisposition(disposition) + .setContentEncoding(encoding) + .setContentLanguage(language) + .setContentType(type) + def key = new UserDelegationKey() + .setSignedObjectId(keyOid) + .setSignedTenantId(keyTid) + .setSignedStart(keyStart) + .setSignedExpiry(keyExpiry) + .setSignedService(keyService) + .setSignedVersion(keyVersion) + .setValue(keyValue) + + def implUtil = new BlobSasImplUtil(v, "containerName", "blobName", snapId) + + def sasToken = implUtil.generateUserDelegationSas(key, primaryCredential.getAccountName()) + + def token = BlobUrlParts.parse(cc.getBlobContainerUrl() + "?" + sasToken).getSasQueryParameters() + + then: + token.getSignature() == StorageImplUtils.computeHMac256(key.getValue(), expected) + + /* + We test string to sign functionality directly related to user delegation sas specific parameters + */ + where: + startTime | keyOid | keyTid | keyStart | keyExpiry | keyService | keyVersion | keyValue | ipRange | protocol | snapId | cacheControl | disposition | encoding | language | type || expectedStringToSign + OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC) | null | null | null | null | null | null | "3hd4LRwrARVGbeMRQRfTLIsGMkCPuZJnvxZDU7Gak8c=" | null | null | null | null | null | null | null | null || "r\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n\n\n\n\n\n\n\n\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nb\n\n\n\n\n\n" + null | "11111111-1111-1111-1111-111111111111" | null | null | null | null | null | "3hd4LRwrARVGbeMRQRfTLIsGMkCPuZJnvxZDU7Gak8c=" | null | null | null | null | null | null | null | null || "r\n\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n11111111-1111-1111-1111-111111111111\n\n\n\n\n\n\n\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nb\n\n\n\n\n\n" + null | null | "22222222-2222-2222-2222-222222222222" | null | null | null | null | "3hd4LRwrARVGbeMRQRfTLIsGMkCPuZJnvxZDU7Gak8c=" | null | null | null | null | null | null | null | null || "r\n\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n\n22222222-2222-2222-2222-222222222222\n\n\n\n\n\n\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nb\n\n\n\n\n\n" + null | null | null | OffsetDateTime.of(LocalDateTime.of(2018, 1, 1, 0, 0), ZoneOffset.UTC) | null | null | null | "3hd4LRwrARVGbeMRQRfTLIsGMkCPuZJnvxZDU7Gak8c=" | null | null | null | null | null | null | null | null || "r\n\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n\n\n2018-01-01T00:00:00Z\n\n\n\n\n\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nb\n\n\n\n\n\n" + null | null | null | null | OffsetDateTime.of(LocalDateTime.of(2018, 1, 1, 0, 0), ZoneOffset.UTC) | null | null | "3hd4LRwrARVGbeMRQRfTLIsGMkCPuZJnvxZDU7Gak8c=" | null | null | null | null | null | null | null | null || "r\n\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n\n\n\n2018-01-01T00:00:00Z\n\n\n\n\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nb\n\n\n\n\n\n" + null | null | null | null | null | "b" | null | "3hd4LRwrARVGbeMRQRfTLIsGMkCPuZJnvxZDU7Gak8c=" | null | null | null | null | null | null | null | null || "r\n\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n\n\n\n\nb\n\n\n\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nb\n\n\n\n\n\n" + null | null | null | null | null | null | "2018-06-17" | "3hd4LRwrARVGbeMRQRfTLIsGMkCPuZJnvxZDU7Gak8c=" | null | null | null | null | null | null | null | null || "r\n\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n\n\n\n\n\n2018-06-17\n\n\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nb\n\n\n\n\n\n" + null | null | null | null | null | null | null | "3hd4LRwrARVGbeMRQRfTLIsGMkCPuZJnvxZDU7Gak8c=" | new SasIpRange() | null | null | null | null | null | null | null || "r\n\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n\n\n\n\n\n\nip\n\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nb\n\n\n\n\n\n" + null | null | null | null | null | null | null | "3hd4LRwrARVGbeMRQRfTLIsGMkCPuZJnvxZDU7Gak8c=" | null | SasProtocol.HTTPS_ONLY | null | null | null | null | null | null || "r\n\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n\n\n\n\n\n\n\n" + SasProtocol.HTTPS_ONLY + "\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nb\n\n\n\n\n\n" + null | null | null | null | null | null | null | "3hd4LRwrARVGbeMRQRfTLIsGMkCPuZJnvxZDU7Gak8c=" | null | null | "snapId" | null | null | null | null | null || "r\n\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n\n\n\n\n\n\n\n\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nbs\nsnapId\n\n\n\n\n" + null | null | null | null | null | null | null | "3hd4LRwrARVGbeMRQRfTLIsGMkCPuZJnvxZDU7Gak8c=" | null | null | null | "control" | null | null | null | null || "r\n\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n\n\n\n\n\n\n\n\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nb\n\ncontrol\n\n\n\n" + null | null | null | null | null | null | null | "3hd4LRwrARVGbeMRQRfTLIsGMkCPuZJnvxZDU7Gak8c=" | null | null | null | null | "disposition" | null | null | null || "r\n\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n\n\n\n\n\n\n\n\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nb\n\n\ndisposition\n\n\n" + null | null | null | null | null | null | null | "3hd4LRwrARVGbeMRQRfTLIsGMkCPuZJnvxZDU7Gak8c=" | null | null | null | null | null | "encoding" | null | null || "r\n\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n\n\n\n\n\n\n\n\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nb\n\n\n\nencoding\n\n" + null | null | null | null | null | null | null | "3hd4LRwrARVGbeMRQRfTLIsGMkCPuZJnvxZDU7Gak8c=" | null | null | null | null | null | null | "language" | null || "r\n\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n\n\n\n\n\n\n\n\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nb\n\n\n\n\nlanguage\n" + null | null | null | null | null | null | null | "3hd4LRwrARVGbeMRQRfTLIsGMkCPuZJnvxZDU7Gak8c=" | null | null | null | null | null | null | null | "type" || "r\n\n" + Constants.ISO_8601_UTC_DATE_FORMATTER.format(OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC)) + "\n/blob/%s/containerName/blobName\n\n\n\n\n\n\n\n\n" + Constants.HeaderConstants.TARGET_STORAGE_VERSION + "\nb\n\n\n\n\n\ntype" + } + } diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsaccountsasnetworkcreatecontainerfails.json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsaccountsasnetworkcreatecontainerfails.json new file mode 100644 index 000000000000..a35e56dfb3ed --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsaccountsasnetworkcreatecontainerfails.json @@ -0,0 +1,112 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcaccountsasnetworkcreatecontainerfails076243fee1aaef?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "dd3aee52-1d32-43b0-9137-0f79d7297a17" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA3EA2B5A4", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:34 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "d921ddbf-401e-0028-45b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:34 GMT", + "x-ms-client-request-id" : "dd3aee52-1d32-43b0-9137-0f79d7297a17" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcaccountsasnetworkcreatecontainerfails076243fee1aaef/javablobaccountsasnetworkcreatecontainerfails1002608965aa", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "cc7772d1-e7d2-49ef-9254-0371879be922", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:34 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:34 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA3EB0D38D", + "Content-Length" : "0", + "x-ms-request-id" : "329a251a-a01e-0020-07b3-a3e99c000000", + "x-ms-client-request-id" : "cc7772d1-e7d2-49ef-9254-0371879be922" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcaccountsasnetworkcreatecontainerfails235600aea25610?restype=container&sv=2019-02-02&ss=b&srt=sco&se=2019-11-26T17%3A09%3A34Z&sp=r&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "3f204df6-d2f2-491b-9a41-24a66eab3fe8" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-error-code" : "AuthorizationPermissionMismatch", + "retry-after" : "0", + "Content-Length" : "279", + "StatusCode" : "403", + "x-ms-request-id" : "d921ddc4-401e-0028-48b3-a3f393000000", + "Body" : "AuthorizationPermissionMismatchThis request is not authorized to perform this operation using this permission.\nRequestId:d921ddc4-401e-0028-48b3-a3f393000000\nTime:2019-11-25T17:09:34.6217728Z", + "Date" : "Mon, 25 Nov 2019 17:09:34 GMT", + "x-ms-client-request-id" : "3f204df6-d2f2-491b-9a41-24a66eab3fe8", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcaccountsasnetworkcreatecontainerfails&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "808c8d94-4616-4c63-9898-5795bf3ddbba" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a251d-a01e-0020-0ab3-a3e99c000000", + "Body" : "jtcaccountsasnetworkcreatecontainerfailsjtcaccountsasnetworkcreatecontainerfails076243fee1aaefMon, 25 Nov 2019 17:09:34 GMT\"0x8D771CA3EA2B5A4\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:34 GMT", + "x-ms-client-request-id" : "808c8d94-4616-4c63-9898-5795bf3ddbba", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcaccountsasnetworkcreatecontainerfails076243fee1aaef?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "c4e4157d-59c4-4369-aa1a-ffb637d2767d" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921ddc7-401e-0028-4bb3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:34 GMT", + "x-ms-client-request-id" : "c4e4157d-59c4-4369-aa1a-ffb637d2767d" + }, + "Exception" : null + } ], + "variables" : [ "jtcaccountsasnetworkcreatecontainerfails076243fee1aaef", "javablobaccountsasnetworkcreatecontainerfails1002608965aa", "2019-11-25T17:09:34.510036300Z", "jtcaccountsasnetworkcreatecontainerfails235600aea25610" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsaccountsasnetworkcreatecontainersucceeds.json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsaccountsasnetworkcreatecontainersucceeds.json new file mode 100644 index 000000000000..003ce4409b93 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsaccountsasnetworkcreatecontainersucceeds.json @@ -0,0 +1,130 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcaccountsasnetworkcreatecontainersucceeds08444578c06ff?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "77246998-6b0e-4986-85f3-f0684dbd069b" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA3EE6122B", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:34 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a2522-a01e-0020-0fb3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:34 GMT", + "x-ms-client-request-id" : "77246998-6b0e-4986-85f3-f0684dbd069b" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcaccountsasnetworkcreatecontainersucceeds08444578c06ff/javablobaccountsasnetworkcreatecontainersucceeds16289375e8", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "f8618e85-6c37-4b53-9a30-3ee8280a26fc", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:34 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:34 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA3EF44547", + "Content-Length" : "0", + "x-ms-request-id" : "d921ddcb-401e-0028-4eb3-a3f393000000", + "x-ms-client-request-id" : "f8618e85-6c37-4b53-9a30-3ee8280a26fc" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcaccountsasnetworkcreatecontainersucceeds2242025117420?restype=container&sv=2019-02-02&ss=b&srt=sco&se=2019-11-26T17%3A09%3A34Z&sp=rc&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "76b73494-3c02-4ca4-bc2f-52cf4b4f9dbf" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA3F025210", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:35 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a2528-a01e-0020-14b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:34 GMT", + "x-ms-client-request-id" : "76b73494-3c02-4ca4-bc2f-52cf4b4f9dbf" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcaccountsasnetworkcreatecontainersucceeds&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "7e3e052d-8f57-49ac-8f63-6a2d01247d3b" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "d921ddd1-401e-0028-54b3-a3f393000000", + "Body" : "jtcaccountsasnetworkcreatecontainersucceedsjtcaccountsasnetworkcreatecontainersucceeds08444578c06ffMon, 25 Nov 2019 17:09:34 GMT\"0x8D771CA3EE6122B\"unlockedavailable$account-encryption-keyfalsefalsefalsejtcaccountsasnetworkcreatecontainersucceeds2242025117420Mon, 25 Nov 2019 17:09:35 GMT\"0x8D771CA3F025210\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:35 GMT", + "x-ms-client-request-id" : "7e3e052d-8f57-49ac-8f63-6a2d01247d3b", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcaccountsasnetworkcreatecontainersucceeds08444578c06ff?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "6a3d1e04-2692-41f3-85d6-04421cde12a8" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "329a252a-a01e-0020-15b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:35 GMT", + "x-ms-client-request-id" : "6a3d1e04-2692-41f3-85d6-04421cde12a8" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcaccountsasnetworkcreatecontainersucceeds2242025117420?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "05e17388-cedb-4081-a9b9-d687fe0183de" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921ddd7-401e-0028-5ab3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:35 GMT", + "x-ms-client-request-id" : "05e17388-cedb-4081-a9b9-d687fe0183de" + }, + "Exception" : null + } ], + "variables" : [ "jtcaccountsasnetworkcreatecontainersucceeds08444578c06ff", "javablobaccountsasnetworkcreatecontainersucceeds16289375e8", "2019-11-25T17:09:34.952438Z", "jtcaccountsasnetworkcreatecontainersucceeds2242025117420" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsaccountsasnetworktestblobdeletefailsnewapi.json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsaccountsasnetworktestblobdeletefailsnewapi.json new file mode 100644 index 000000000000..4c4def91eaa5 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsaccountsasnetworktestblobdeletefailsnewapi.json @@ -0,0 +1,112 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcaccountsasnetworktestblobdeletefailsnewapi07881604ae85?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "d247e5f8-80a0-4346-959d-0bf55f510aeb" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA3E56F596", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:33 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a2506-a01e-0020-7cb3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:33 GMT", + "x-ms-client-request-id" : "d247e5f8-80a0-4346-959d-0bf55f510aeb" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcaccountsasnetworktestblobdeletefailsnewapi07881604ae85/javablobaccountsasnetworktestblobdeletefailsnewapi191830c11", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "84d33a34-3955-43d8-bbfb-d95eed75c78f", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:34 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:33 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA3E64885F", + "Content-Length" : "0", + "x-ms-request-id" : "d921ddad-401e-0028-36b3-a3f393000000", + "x-ms-client-request-id" : "84d33a34-3955-43d8-bbfb-d95eed75c78f" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcaccountsasnetworktestblobdeletefailsnewapi07881604ae85/javablobaccountsasnetworktestblobdeletefailsnewapi191830c11?sv=2019-02-02&ss=b&srt=sco&se=2019-11-26T17%3A09%3A34Z&sp=r&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "60e78f3e-ae7f-4dbf-a828-dc7ada190c5c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-error-code" : "AuthorizationPermissionMismatch", + "retry-after" : "0", + "Content-Length" : "279", + "StatusCode" : "403", + "x-ms-request-id" : "329a250c-a01e-0020-80b3-a3e99c000000", + "Body" : "AuthorizationPermissionMismatchThis request is not authorized to perform this operation using this permission.\nRequestId:329a250c-a01e-0020-80b3-a3e99c000000\nTime:2019-11-25T17:09:34.1956005Z", + "Date" : "Mon, 25 Nov 2019 17:09:34 GMT", + "x-ms-client-request-id" : "60e78f3e-ae7f-4dbf-a828-dc7ada190c5c", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcaccountsasnetworktestblobdeletefailsnewapi&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "e3649be3-d6be-4fb4-abe3-fdb6431e3515" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "d921ddb6-401e-0028-3db3-a3f393000000", + "Body" : "jtcaccountsasnetworktestblobdeletefailsnewapijtcaccountsasnetworktestblobdeletefailsnewapi07881604ae85Mon, 25 Nov 2019 17:09:33 GMT\"0x8D771CA3E56F596\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:34 GMT", + "x-ms-client-request-id" : "e3649be3-d6be-4fb4-abe3-fdb6431e3515", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcaccountsasnetworktestblobdeletefailsnewapi07881604ae85?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "f0c3d472-dd66-4feb-ac43-930418ed5eed" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "329a2513-a01e-0020-04b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:34 GMT", + "x-ms-client-request-id" : "f0c3d472-dd66-4feb-ac43-930418ed5eed" + }, + "Exception" : null + } ], + "variables" : [ "jtcaccountsasnetworktestblobdeletefailsnewapi07881604ae85", "javablobaccountsasnetworktestblobdeletefailsnewapi191830c11", "2019-11-25T17:09:34.007531800Z" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsaccountsasnetworktestblobread.json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsaccountsasnetworktestblobread.json new file mode 100644 index 000000000000..c209702e4218 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsaccountsasnetworktestblobread.json @@ -0,0 +1,120 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcaccountsasnetworktestblobread063965c8d0e1aec29b?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "8cfbc713-53dc-45e8-8db8-4878c76a593c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA3E14CD79", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:33 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "d921dd90-401e-0028-1eb3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:33 GMT", + "x-ms-client-request-id" : "8cfbc713-53dc-45e8-8db8-4878c76a593c" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcaccountsasnetworktestblobread063965c8d0e1aec29b/javablobaccountsasnetworktestblobread1912206cb7fd2946", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "798df3d4-4416-4efb-b8c0-3ab5aa60467e", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:33 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:33 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA3E22EB68", + "Content-Length" : "0", + "x-ms-request-id" : "329a2502-a01e-0020-79b3-a3e99c000000", + "x-ms-client-request-id" : "798df3d4-4416-4efb-b8c0-3ab5aa60467e" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net/jtcaccountsasnetworktestblobread063965c8d0e1aec29b/javablobaccountsasnetworktestblobread1912206cb7fd2946?sv=2019-02-02&ss=b&srt=sco&se=2019-11-26T17%3A09%3A33Z&sp=r&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "20f4b810-052f-48f1-80e8-4531b3eb7375" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "x-ms-lease-status" : "unlocked", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-lease-state" : "available", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:33 GMT", + "retry-after" : "0", + "StatusCode" : "200", + "Date" : "Mon, 25 Nov 2019 17:09:33 GMT", + "x-ms-blob-type" : "BlockBlob", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "Accept-Ranges" : "bytes", + "x-ms-server-encrypted" : "true", + "ETag" : "0x8D771CA3E22EB68", + "x-ms-creation-time" : "Mon, 25 Nov 2019 17:09:33 GMT", + "Content-Length" : "7", + "x-ms-request-id" : "d921dd9e-401e-0028-29b3-a3f393000000", + "Body" : "[100, 101, 102, 97, 117, 108, 116]", + "x-ms-client-request-id" : "20f4b810-052f-48f1-80e8-4531b3eb7375", + "Content-Type" : "application/octet-stream" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcaccountsasnetworktestblobread&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "d3c129ae-3d86-4b57-b750-96981916402e" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a2504-a01e-0020-7bb3-a3e99c000000", + "Body" : "jtcaccountsasnetworktestblobreadjtcaccountsasnetworktestblobread063965c8d0e1aec29bMon, 25 Nov 2019 17:09:33 GMT\"0x8D771CA3E14CD79\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:33 GMT", + "x-ms-client-request-id" : "d3c129ae-3d86-4b57-b750-96981916402e", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcaccountsasnetworktestblobread063965c8d0e1aec29b?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "d1f2bbeb-e588-4ee8-8fd0-cc9885d72512" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921dda6-401e-0028-2fb3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:33 GMT", + "x-ms-client-request-id" : "d1f2bbeb-e588-4ee8-8fd0-cc9885d72512" + }, + "Exception" : null + } ], + "variables" : [ "jtcaccountsasnetworktestblobread063965c8d0e1aec29b", "javablobaccountsasnetworktestblobread1912206cb7fd2946", "2019-11-25T17:09:33.582213300Z" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[0].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[0].json new file mode 100644 index 000000000000..9a2eaa5dba28 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[0].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign0463058d41c166e0034?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "61dfa141-f23b-4437-ac70-5172049e4ccb" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA40468D53", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:37 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a255d-a01e-0020-3bb3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:36 GMT", + "x-ms-client-request-id" : "61dfa141-f23b-4437-ac70-5172049e4ccb" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign0463058d41c166e0034/javablobblobsasimplutilstringtosign186708b2d0527e4f0", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "901cdf90-3451-4259-9830-0ac54ca1e0d5", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:37 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:37 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA4053D554", + "Content-Length" : "0", + "x-ms-request-id" : "d921de09-401e-0028-09b3-a3f393000000", + "x-ms-client-request-id" : "901cdf90-3451-4259-9830-0ac54ca1e0d5" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosign&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "90312fee-d521-457f-ae7d-357b439f04ea" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a2569-a01e-0020-46b3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignjtcblobsasimplutilstringtosign0463058d41c166e0034Mon, 25 Nov 2019 17:09:37 GMT\"0x8D771CA40468D53\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:37 GMT", + "x-ms-client-request-id" : "90312fee-d521-457f-ae7d-357b439f04ea", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign0463058d41c166e0034?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "006d331b-7103-4afd-842c-28ac24d46cda" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921de13-401e-0028-13b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:37 GMT", + "x-ms-client-request-id" : "006d331b-7103-4afd-842c-28ac24d46cda" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosign0463058d41c166e0034", "javablobblobsasimplutilstringtosign186708b2d0527e4f0" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[1].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[1].json new file mode 100644 index 000000000000..2725ca07b74a --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[1].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign087850670b2ec7202b4?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "d4dcca0c-a0bb-4090-bf24-a72c9f65272b" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA4080965B", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:37 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a2570-a01e-0020-4cb3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:37 GMT", + "x-ms-client-request-id" : "d4dcca0c-a0bb-4090-bf24-a72c9f65272b" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign087850670b2ec7202b4/javablobblobsasimplutilstringtosign18797451d18f06bd1", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "ab3a11d6-a62d-4e51-91c2-e669874c4bd5", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:37 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:37 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA408DD165", + "Content-Length" : "0", + "x-ms-request-id" : "d921de17-401e-0028-17b3-a3f393000000", + "x-ms-client-request-id" : "ab3a11d6-a62d-4e51-91c2-e669874c4bd5" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosign&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "53fda710-7497-41f6-aad9-755c537bf9a2" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a2575-a01e-0020-4fb3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignjtcblobsasimplutilstringtosign087850670b2ec7202b4Mon, 25 Nov 2019 17:09:37 GMT\"0x8D771CA4080965B\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:37 GMT", + "x-ms-client-request-id" : "53fda710-7497-41f6-aad9-755c537bf9a2", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign087850670b2ec7202b4?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "b1de0e8d-10ce-4a99-af9e-6432a68ea6dc" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921de18-401e-0028-18b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:37 GMT", + "x-ms-client-request-id" : "b1de0e8d-10ce-4a99-af9e-6432a68ea6dc" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosign087850670b2ec7202b4", "javablobblobsasimplutilstringtosign18797451d18f06bd1" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[2].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[2].json new file mode 100644 index 000000000000..a63171b0f9b8 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[2].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign090609bcb7101a2f174?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "e1939d0b-5d22-40a4-a599-7216fdd53d9d" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA40B59543", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:37 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a257c-a01e-0020-56b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:37 GMT", + "x-ms-client-request-id" : "e1939d0b-5d22-40a4-a599-7216fdd53d9d" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign090609bcb7101a2f174/javablobblobsasimplutilstringtosign186054183160ba113", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "fd98bf01-0f60-4d46-abff-417b8fddbdb8", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:38 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:37 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA40C25186", + "Content-Length" : "0", + "x-ms-request-id" : "d921de19-401e-0028-19b3-a3f393000000", + "x-ms-client-request-id" : "fd98bf01-0f60-4d46-abff-417b8fddbdb8" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosign&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "19dec871-5786-4743-aad8-d186afb2930b" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a257f-a01e-0020-58b3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignjtcblobsasimplutilstringtosign090609bcb7101a2f174Mon, 25 Nov 2019 17:09:37 GMT\"0x8D771CA40B59543\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:37 GMT", + "x-ms-client-request-id" : "19dec871-5786-4743-aad8-d186afb2930b", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign090609bcb7101a2f174?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "469bab9d-867d-4b78-9216-55f0409725e2" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921de1a-401e-0028-1ab3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:37 GMT", + "x-ms-client-request-id" : "469bab9d-867d-4b78-9216-55f0409725e2" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosign090609bcb7101a2f174", "javablobblobsasimplutilstringtosign186054183160ba113" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[3].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[3].json new file mode 100644 index 000000000000..4eee63f43ba5 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[3].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign0267443cd2712355c94?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "345fef6c-077f-4924-bcdc-f55ca7654777" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA40EA1F07", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:38 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a2588-a01e-0020-61b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:37 GMT", + "x-ms-client-request-id" : "345fef6c-077f-4924-bcdc-f55ca7654777" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign0267443cd2712355c94/javablobblobsasimplutilstringtosign111531dfa94dbd346", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "7bcb687e-ef12-4367-badc-791e4b59ea3b", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:38 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:38 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA40F6F2E2", + "Content-Length" : "0", + "x-ms-request-id" : "d921de26-401e-0028-22b3-a3f393000000", + "x-ms-client-request-id" : "7bcb687e-ef12-4367-badc-791e4b59ea3b" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosign&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "e8441d22-bf5d-4bba-a736-f38a56f0fab2" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a25ac-a01e-0020-03b3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignjtcblobsasimplutilstringtosign0267443cd2712355c94Mon, 25 Nov 2019 17:09:38 GMT\"0x8D771CA40EA1F07\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:38 GMT", + "x-ms-client-request-id" : "e8441d22-bf5d-4bba-a736-f38a56f0fab2", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign0267443cd2712355c94?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "522bde73-b604-4edc-911b-7ee53612c2c4" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921de2a-401e-0028-26b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:38 GMT", + "x-ms-client-request-id" : "522bde73-b604-4edc-911b-7ee53612c2c4" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosign0267443cd2712355c94", "javablobblobsasimplutilstringtosign111531dfa94dbd346" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[4].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[4].json new file mode 100644 index 000000000000..3c9c696f45b9 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[4].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign0515273d0eef27af664?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "3379ddb5-bb2f-4a21-a7a2-ced8d9a8fff5" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA411EA8AB", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:38 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a25b3-a01e-0020-08b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:38 GMT", + "x-ms-client-request-id" : "3379ddb5-bb2f-4a21-a7a2-ced8d9a8fff5" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign0515273d0eef27af664/javablobblobsasimplutilstringtosign1762500bbee9f7129", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "dbe1ea3e-ea54-48c7-90e4-4cf8f569dbf5", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:38 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:38 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA412B4A33", + "Content-Length" : "0", + "x-ms-request-id" : "d921de30-401e-0028-2cb3-a3f393000000", + "x-ms-client-request-id" : "dbe1ea3e-ea54-48c7-90e4-4cf8f569dbf5" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosign&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "09a59b74-9043-47d9-9dd9-155b45ff11ef" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a25b5-a01e-0020-09b3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignjtcblobsasimplutilstringtosign0515273d0eef27af664Mon, 25 Nov 2019 17:09:38 GMT\"0x8D771CA411EA8AB\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:38 GMT", + "x-ms-client-request-id" : "09a59b74-9043-47d9-9dd9-155b45ff11ef", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign0515273d0eef27af664?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "c39ffdf7-d6eb-47ed-b75f-f595a39e9bc2" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921de34-401e-0028-30b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:38 GMT", + "x-ms-client-request-id" : "c39ffdf7-d6eb-47ed-b75f-f595a39e9bc2" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosign0515273d0eef27af664", "javablobblobsasimplutilstringtosign1762500bbee9f7129" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[5].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[5].json new file mode 100644 index 000000000000..bb973749770d --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[5].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign027365656db45c9ed74?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "8554f3f2-052f-4270-b0e7-01673bbf6bab" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA41530C84", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:38 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a25b7-a01e-0020-0ab3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:38 GMT", + "x-ms-client-request-id" : "8554f3f2-052f-4270-b0e7-01673bbf6bab" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign027365656db45c9ed74/javablobblobsasimplutilstringtosign17271941f335d5f26", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "4c8b68be-9f0b-42f9-b400-d9ff8a6b516d", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:39 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:38 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA415FC6DA", + "Content-Length" : "0", + "x-ms-request-id" : "d921de3c-401e-0028-37b3-a3f393000000", + "x-ms-client-request-id" : "4c8b68be-9f0b-42f9-b400-d9ff8a6b516d" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosign&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "78033a9c-4e0d-448b-ace3-c8d355647164" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a25ba-a01e-0020-0cb3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignjtcblobsasimplutilstringtosign027365656db45c9ed74Mon, 25 Nov 2019 17:09:38 GMT\"0x8D771CA41530C84\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:38 GMT", + "x-ms-client-request-id" : "78033a9c-4e0d-448b-ace3-c8d355647164", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign027365656db45c9ed74?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "4105900b-8bed-4e3f-a580-13c53bdbd73a" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921de43-401e-0028-3eb3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:38 GMT", + "x-ms-client-request-id" : "4105900b-8bed-4e3f-a580-13c53bdbd73a" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosign027365656db45c9ed74", "javablobblobsasimplutilstringtosign17271941f335d5f26" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[6].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[6].json new file mode 100644 index 000000000000..edc3197162a6 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[6].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign091866176b5675be3b4?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "810e7fbb-cf52-4f2e-b210-193bf76e5d43" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA41865C1E", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:39 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a25c1-a01e-0020-13b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:39 GMT", + "x-ms-client-request-id" : "810e7fbb-cf52-4f2e-b210-193bf76e5d43" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign091866176b5675be3b4/javablobblobsasimplutilstringtosign137927f07f39a8200", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "812838a6-3bbd-4a98-857f-7f69848b9d97", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:39 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:39 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA41930C1F", + "Content-Length" : "0", + "x-ms-request-id" : "d921de53-401e-0028-49b3-a3f393000000", + "x-ms-client-request-id" : "812838a6-3bbd-4a98-857f-7f69848b9d97" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosign&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "b2b5cce7-a364-4cee-a4cc-fea4c7a0f430" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a25c4-a01e-0020-15b3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignjtcblobsasimplutilstringtosign091866176b5675be3b4Mon, 25 Nov 2019 17:09:39 GMT\"0x8D771CA41865C1E\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:39 GMT", + "x-ms-client-request-id" : "b2b5cce7-a364-4cee-a4cc-fea4c7a0f430", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign091866176b5675be3b4?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "9864f68d-f933-4294-bcb8-17457230ab60" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921de5a-401e-0028-50b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:39 GMT", + "x-ms-client-request-id" : "9864f68d-f933-4294-bcb8-17457230ab60" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosign091866176b5675be3b4", "javablobblobsasimplutilstringtosign137927f07f39a8200" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[7].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[7].json new file mode 100644 index 000000000000..748592a5b145 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[7].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign0552562cc1b1eee54b4?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "3568f391-2caa-4174-9e79-9ea2afb63f27" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA41B95EC2", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:39 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a25c6-a01e-0020-17b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:39 GMT", + "x-ms-client-request-id" : "3568f391-2caa-4174-9e79-9ea2afb63f27" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign0552562cc1b1eee54b4/javablobblobsasimplutilstringtosign162570189752dce69", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "1e4c8d4b-7cbb-4002-b192-0fdecb47bfc9", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:39 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:39 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA41C62A20", + "Content-Length" : "0", + "x-ms-request-id" : "d921de5b-401e-0028-51b3-a3f393000000", + "x-ms-client-request-id" : "1e4c8d4b-7cbb-4002-b192-0fdecb47bfc9" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosign&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "1a146747-bd35-4c5c-926c-2eb3c601cf94" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a25ca-a01e-0020-1ab3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignjtcblobsasimplutilstringtosign0552562cc1b1eee54b4Mon, 25 Nov 2019 17:09:39 GMT\"0x8D771CA41B95EC2\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:39 GMT", + "x-ms-client-request-id" : "1a146747-bd35-4c5c-926c-2eb3c601cf94", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign0552562cc1b1eee54b4?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "872ffd63-00a4-419e-ac6b-d329c09e0355" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921de63-401e-0028-59b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:39 GMT", + "x-ms-client-request-id" : "872ffd63-00a4-419e-ac6b-d329c09e0355" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosign0552562cc1b1eee54b4", "javablobblobsasimplutilstringtosign162570189752dce69" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[8].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[8].json new file mode 100644 index 000000000000..37681c6a00cb --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[8].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign05318598eb9e81af1c4?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "82ba6078-98f7-45f5-a46b-8c3707962fc9" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA41ED733D", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:39 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a25cc-a01e-0020-1cb3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:39 GMT", + "x-ms-client-request-id" : "82ba6078-98f7-45f5-a46b-8c3707962fc9" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign05318598eb9e81af1c4/javablobblobsasimplutilstringtosign1314354c0b61e35df", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "5ec46370-79a6-48b3-9b38-622b11ed921d", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:40 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:39 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA41FA59C1", + "Content-Length" : "0", + "x-ms-request-id" : "d921de65-401e-0028-5bb3-a3f393000000", + "x-ms-client-request-id" : "5ec46370-79a6-48b3-9b38-622b11ed921d" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosign&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "9e7644f6-30c9-4ccd-96d2-697d64414d9e" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a25cf-a01e-0020-1eb3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignjtcblobsasimplutilstringtosign05318598eb9e81af1c4Mon, 25 Nov 2019 17:09:39 GMT\"0x8D771CA41ED733D\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:39 GMT", + "x-ms-client-request-id" : "9e7644f6-30c9-4ccd-96d2-697d64414d9e", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign05318598eb9e81af1c4?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "ba06f286-0ef0-4d13-975c-fe5a1cba82fa" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921de67-401e-0028-5db3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:39 GMT", + "x-ms-client-request-id" : "ba06f286-0ef0-4d13-975c-fe5a1cba82fa" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosign05318598eb9e81af1c4", "javablobblobsasimplutilstringtosign1314354c0b61e35df" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[9].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[9].json new file mode 100644 index 000000000000..a3f2bd19d9b6 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosign[9].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign022823f54d248018564?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "2c9704ac-1b25-4866-83a5-c75ac6d9b2bc" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA4221FCB7", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:40 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a25d3-a01e-0020-22b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:40 GMT", + "x-ms-client-request-id" : "2c9704ac-1b25-4866-83a5-c75ac6d9b2bc" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign022823f54d248018564/javablobblobsasimplutilstringtosign139652c1e391d21f0", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "a20c7bd7-b3b5-42ea-812c-0f77e5167d5e", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:40 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:40 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA422F2536", + "Content-Length" : "0", + "x-ms-request-id" : "d921de6a-401e-0028-5fb3-a3f393000000", + "x-ms-client-request-id" : "a20c7bd7-b3b5-42ea-812c-0f77e5167d5e" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosign&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "773a9382-7948-4610-a910-31f3b0ed0b96" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a25d6-a01e-0020-24b3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignjtcblobsasimplutilstringtosign022823f54d248018564Mon, 25 Nov 2019 17:09:40 GMT\"0x8D771CA4221FCB7\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:40 GMT", + "x-ms-client-request-id" : "773a9382-7948-4610-a910-31f3b0ed0b96", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosign022823f54d248018564?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "4ed1b3db-0752-4cb4-a766-5dbec552e9d6" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921de74-401e-0028-68b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:40 GMT", + "x-ms-client-request-id" : "4ed1b3db-0752-4cb4-a766-5dbec552e9d6" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosign022823f54d248018564", "javablobblobsasimplutilstringtosign139652c1e391d21f0" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[0].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[0].json new file mode 100644 index 000000000000..cdc67a31822f --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[0].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey03929314ec0?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "17bf3bd0-45f0-438a-8728-ead5bc8548cb" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA425770FD", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:40 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a25d9-a01e-0020-27b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:40 GMT", + "x-ms-client-request-id" : "17bf3bd0-45f0-438a-8728-ead5bc8548cb" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey03929314ec0/javablobblobsasimplutilstringtosignuserdelegationkey18484377", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "c1441cd8-bf6f-4300-b81a-313506e4808a", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:40 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:40 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA42641802", + "Content-Length" : "0", + "x-ms-request-id" : "d921de7b-401e-0028-6fb3-a3f393000000", + "x-ms-client-request-id" : "c1441cd8-bf6f-4300-b81a-313506e4808a" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "2b050d2b-1012-40fd-b3b7-5ca58024b26d" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a25de-a01e-0020-2bb3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignuserdelegationkeyjtcblobsasimplutilstringtosignuserdelegationkey03929314ec0Mon, 25 Nov 2019 17:09:40 GMT\"0x8D771CA425770FD\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:40 GMT", + "x-ms-client-request-id" : "2b050d2b-1012-40fd-b3b7-5ca58024b26d", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey03929314ec0?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "c2f7048a-0f8b-4f1a-bfa9-c2e03bef9400" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921de84-401e-0028-78b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:40 GMT", + "x-ms-client-request-id" : "c2f7048a-0f8b-4f1a-bfa9-c2e03bef9400" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosignuserdelegationkey03929314ec0", "javablobblobsasimplutilstringtosignuserdelegationkey18484377" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[10].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[10].json new file mode 100644 index 000000000000..4d11d89351ee --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[10].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey0911422df83?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "e2c7c4f3-f72d-4adf-b139-9ae403b05719" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA44743E15", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:44 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a2634-a01e-0020-71b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:43 GMT", + "x-ms-client-request-id" : "e2c7c4f3-f72d-4adf-b139-9ae403b05719" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey0911422df83/javablobblobsasimplutilstringtosignuserdelegationkey17029077", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "07ff9eb9-c7f9-4de4-a409-e820600f60f7", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:44 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:43 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA44812BD3", + "Content-Length" : "0", + "x-ms-request-id" : "d921deee-401e-0028-5cb3-a3f393000000", + "x-ms-client-request-id" : "07ff9eb9-c7f9-4de4-a409-e820600f60f7" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "9c2ceb83-aab0-4db9-90de-04e2c0e46a24" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a2636-a01e-0020-72b3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignuserdelegationkeyjtcblobsasimplutilstringtosignuserdelegationkey0911422df83Mon, 25 Nov 2019 17:09:44 GMT\"0x8D771CA44743E15\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:43 GMT", + "x-ms-client-request-id" : "9c2ceb83-aab0-4db9-90de-04e2c0e46a24", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey0911422df83?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "bc286259-1529-4755-80ee-06c9676d99cc" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921def7-401e-0028-65b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:44 GMT", + "x-ms-client-request-id" : "bc286259-1529-4755-80ee-06c9676d99cc" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosignuserdelegationkey0911422df83", "javablobblobsasimplutilstringtosignuserdelegationkey17029077" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[11].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[11].json new file mode 100644 index 000000000000..018c7281272e --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[11].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey073672052c1?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "c8220a33-4d9c-495c-ad95-345a44f3e149" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA44A9D96E", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:44 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a2638-a01e-0020-74b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:44 GMT", + "x-ms-client-request-id" : "c8220a33-4d9c-495c-ad95-345a44f3e149" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey073672052c1/javablobblobsasimplutilstringtosignuserdelegationkey14339622", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "88d7bde6-b5cc-4e41-a4f5-3e61df2ef113", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:44 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:44 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA44B66E35", + "Content-Length" : "0", + "x-ms-request-id" : "d921defc-401e-0028-6ab3-a3f393000000", + "x-ms-client-request-id" : "88d7bde6-b5cc-4e41-a4f5-3e61df2ef113" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "b4d1fcb3-c8f6-4699-96f8-ff61d4b0462e" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a263d-a01e-0020-78b3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignuserdelegationkeyjtcblobsasimplutilstringtosignuserdelegationkey073672052c1Mon, 25 Nov 2019 17:09:44 GMT\"0x8D771CA44A9D96E\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:44 GMT", + "x-ms-client-request-id" : "b4d1fcb3-c8f6-4699-96f8-ff61d4b0462e", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey073672052c1?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "e204e9f3-d4dd-4414-8442-4d6b23c168df" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921deff-401e-0028-6db3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:44 GMT", + "x-ms-client-request-id" : "e204e9f3-d4dd-4414-8442-4d6b23c168df" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosignuserdelegationkey073672052c1", "javablobblobsasimplutilstringtosignuserdelegationkey14339622" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[12].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[12].json new file mode 100644 index 000000000000..8eef25ffad03 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[12].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey087868008c3?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "4b031ff5-ca8a-4b83-ad05-0f3eef129bd3" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA44DD034A", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:44 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a265a-a01e-0020-13b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:44 GMT", + "x-ms-client-request-id" : "4b031ff5-ca8a-4b83-ad05-0f3eef129bd3" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey087868008c3/javablobblobsasimplutilstringtosignuserdelegationkey176754ba", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "f22e68f2-58c9-449c-8987-5ca6f0c11bb4", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:44 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:44 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA44EA2814", + "Content-Length" : "0", + "x-ms-request-id" : "d921df02-401e-0028-70b3-a3f393000000", + "x-ms-client-request-id" : "f22e68f2-58c9-449c-8987-5ca6f0c11bb4" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "870478da-c203-4391-9e16-4077783088fe" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a265c-a01e-0020-14b3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignuserdelegationkeyjtcblobsasimplutilstringtosignuserdelegationkey087868008c3Mon, 25 Nov 2019 17:09:44 GMT\"0x8D771CA44DD034A\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:44 GMT", + "x-ms-client-request-id" : "870478da-c203-4391-9e16-4077783088fe", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey087868008c3?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "9c6ed92e-7e62-4d93-b6d9-aa786ce575bb" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921df08-401e-0028-73b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:44 GMT", + "x-ms-client-request-id" : "9c6ed92e-7e62-4d93-b6d9-aa786ce575bb" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosignuserdelegationkey087868008c3", "javablobblobsasimplutilstringtosignuserdelegationkey176754ba" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[13].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[13].json new file mode 100644 index 000000000000..ee041df063d9 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[13].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey071397cb8b8?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "47442d80-8cb1-41cb-99dc-6718339993d8" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA4512525D", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:45 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a2662-a01e-0020-1ab3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:44 GMT", + "x-ms-client-request-id" : "47442d80-8cb1-41cb-99dc-6718339993d8" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey071397cb8b8/javablobblobsasimplutilstringtosignuserdelegationkey1974360c", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "3f1c5377-62ae-442e-8072-74a24c9c94cb", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:45 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:44 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA451F41EE", + "Content-Length" : "0", + "x-ms-request-id" : "d921df0c-401e-0028-77b3-a3f393000000", + "x-ms-client-request-id" : "3f1c5377-62ae-442e-8072-74a24c9c94cb" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "9b635e35-c3c8-4186-adf1-4edc7d92488e" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a2666-a01e-0020-1db3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignuserdelegationkeyjtcblobsasimplutilstringtosignuserdelegationkey071397cb8b8Mon, 25 Nov 2019 17:09:45 GMT\"0x8D771CA4512525D\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:44 GMT", + "x-ms-client-request-id" : "9b635e35-c3c8-4186-adf1-4edc7d92488e", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey071397cb8b8?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "1825ee2b-0841-429a-9c29-7e1b20dbb3b4" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921df13-401e-0028-7eb3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:45 GMT", + "x-ms-client-request-id" : "1825ee2b-0841-429a-9c29-7e1b20dbb3b4" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosignuserdelegationkey071397cb8b8", "javablobblobsasimplutilstringtosignuserdelegationkey1974360c" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[14].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[14].json new file mode 100644 index 000000000000..b60c90395158 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[14].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey08761697965?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "46a71f5f-4b60-4f5d-8e93-f9e941f4975a" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA45522760", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:45 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a266e-a01e-0020-22b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:45 GMT", + "x-ms-client-request-id" : "46a71f5f-4b60-4f5d-8e93-f9e941f4975a" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey08761697965/javablobblobsasimplutilstringtosignuserdelegationkey18532120", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "812aa35b-d09d-4dfe-ae57-3b37360691e8", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:45 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:45 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA455EE171", + "Content-Length" : "0", + "x-ms-request-id" : "d921df17-401e-0028-02b3-a3f393000000", + "x-ms-client-request-id" : "812aa35b-d09d-4dfe-ae57-3b37360691e8" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "d20231f8-d8d3-4247-a81f-9e42ff4d45fb" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a2678-a01e-0020-28b3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignuserdelegationkeyjtcblobsasimplutilstringtosignuserdelegationkey08761697965Mon, 25 Nov 2019 17:09:45 GMT\"0x8D771CA45522760\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:45 GMT", + "x-ms-client-request-id" : "d20231f8-d8d3-4247-a81f-9e42ff4d45fb", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey08761697965?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "04fe76a1-e261-4a62-aabb-6713f571b879" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921df1d-401e-0028-08b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:45 GMT", + "x-ms-client-request-id" : "04fe76a1-e261-4a62-aabb-6713f571b879" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosignuserdelegationkey08761697965", "javablobblobsasimplutilstringtosignuserdelegationkey18532120" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[1].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[1].json new file mode 100644 index 000000000000..96d5021204a4 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[1].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey076590ba3a2?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "e2e8c27c-3861-4978-9aeb-5621a9f15bb9" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA428CE51F", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:41 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a25e2-a01e-0020-2eb3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:40 GMT", + "x-ms-client-request-id" : "e2e8c27c-3861-4978-9aeb-5621a9f15bb9" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey076590ba3a2/javablobblobsasimplutilstringtosignuserdelegationkey14828914", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "4da07904-c3da-4c0e-a30d-e07db571ea0f", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:41 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:40 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA4299F510", + "Content-Length" : "0", + "x-ms-request-id" : "d921de87-401e-0028-7bb3-a3f393000000", + "x-ms-client-request-id" : "4da07904-c3da-4c0e-a30d-e07db571ea0f" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "cfda1de5-59f6-4938-815b-c60e35dca2e8" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a25e6-a01e-0020-31b3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignuserdelegationkeyjtcblobsasimplutilstringtosignuserdelegationkey076590ba3a2Mon, 25 Nov 2019 17:09:41 GMT\"0x8D771CA428CE51F\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:40 GMT", + "x-ms-client-request-id" : "cfda1de5-59f6-4938-815b-c60e35dca2e8", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey076590ba3a2?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "bd56ebd5-40ab-444a-a2ae-b76993391517" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921de8a-401e-0028-7eb3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:40 GMT", + "x-ms-client-request-id" : "bd56ebd5-40ab-444a-a2ae-b76993391517" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosignuserdelegationkey076590ba3a2", "javablobblobsasimplutilstringtosignuserdelegationkey14828914" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[2].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[2].json new file mode 100644 index 000000000000..c298fa0f3b80 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[2].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey025795e26ed?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "7103f67b-3a77-47a0-ab28-18ab0fef0e92" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA42C0AB52", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:41 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a25e7-a01e-0020-32b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:41 GMT", + "x-ms-client-request-id" : "7103f67b-3a77-47a0-ab28-18ab0fef0e92" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey025795e26ed/javablobblobsasimplutilstringtosignuserdelegationkey13714371", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "e71c0ff3-8ab5-4147-b8c0-9f3fbc123e14", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:41 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:41 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA42CD87F5", + "Content-Length" : "0", + "x-ms-request-id" : "d921de91-401e-0028-05b3-a3f393000000", + "x-ms-client-request-id" : "e71c0ff3-8ab5-4147-b8c0-9f3fbc123e14" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "cd9d80cf-5f7d-47ac-8fc6-13a75ec2eac1" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a25eb-a01e-0020-35b3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignuserdelegationkeyjtcblobsasimplutilstringtosignuserdelegationkey025795e26edMon, 25 Nov 2019 17:09:41 GMT\"0x8D771CA42C0AB52\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:41 GMT", + "x-ms-client-request-id" : "cd9d80cf-5f7d-47ac-8fc6-13a75ec2eac1", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey025795e26ed?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "beff9c5a-99a9-4e9b-a278-216d4e98a20a" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921de92-401e-0028-06b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:41 GMT", + "x-ms-client-request-id" : "beff9c5a-99a9-4e9b-a278-216d4e98a20a" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosignuserdelegationkey025795e26ed", "javablobblobsasimplutilstringtosignuserdelegationkey13714371" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[3].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[3].json new file mode 100644 index 000000000000..077c257e7a6a --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[3].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey02017629dee?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "c7eafce6-9e33-419a-b024-7e3d664ef873" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA42FCD7C1", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:41 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a25ef-a01e-0020-39b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:41 GMT", + "x-ms-client-request-id" : "c7eafce6-9e33-419a-b024-7e3d664ef873" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey02017629dee/javablobblobsasimplutilstringtosignuserdelegationkey1487395a", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "fcf0088c-bc82-4b4f-b863-7abd2ff52a22", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:41 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:41 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA430A1DB3", + "Content-Length" : "0", + "x-ms-request-id" : "d921de99-401e-0028-0cb3-a3f393000000", + "x-ms-client-request-id" : "fcf0088c-bc82-4b4f-b863-7abd2ff52a22" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "444e0192-6069-4832-862d-81f4f040601a" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a25f5-a01e-0020-3eb3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignuserdelegationkeyjtcblobsasimplutilstringtosignuserdelegationkey02017629deeMon, 25 Nov 2019 17:09:41 GMT\"0x8D771CA42FCD7C1\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:41 GMT", + "x-ms-client-request-id" : "444e0192-6069-4832-862d-81f4f040601a", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey02017629dee?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "62c90758-67a0-45c4-89c4-5614d6853ec6" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921dea2-401e-0028-14b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:41 GMT", + "x-ms-client-request-id" : "62c90758-67a0-45c4-89c4-5614d6853ec6" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosignuserdelegationkey02017629dee", "javablobblobsasimplutilstringtosignuserdelegationkey1487395a" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[4].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[4].json new file mode 100644 index 000000000000..83bffc113e07 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[4].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey02473993d39?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "2f7cb5d5-08f6-4a0f-a233-56b88bad837e" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA4332E9E3", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:42 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a25f8-a01e-0020-41b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:41 GMT", + "x-ms-client-request-id" : "2f7cb5d5-08f6-4a0f-a233-56b88bad837e" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey02473993d39/javablobblobsasimplutilstringtosignuserdelegationkey12957369", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "bdda2274-cc6e-4928-a0bf-8c965996888e", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:42 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:41 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA434724D2", + "Content-Length" : "0", + "x-ms-request-id" : "d921deaa-401e-0028-1bb3-a3f393000000", + "x-ms-client-request-id" : "bdda2274-cc6e-4928-a0bf-8c965996888e" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "55a8a088-e0d0-4abf-9394-a22c5335a534" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a25fc-a01e-0020-44b3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignuserdelegationkeyjtcblobsasimplutilstringtosignuserdelegationkey02473993d39Mon, 25 Nov 2019 17:09:42 GMT\"0x8D771CA4332E9E3\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:41 GMT", + "x-ms-client-request-id" : "55a8a088-e0d0-4abf-9394-a22c5335a534", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey02473993d39?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "34cdc826-6bf8-41d6-a701-6e87c0448899" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921deb1-401e-0028-22b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:42 GMT", + "x-ms-client-request-id" : "34cdc826-6bf8-41d6-a701-6e87c0448899" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosignuserdelegationkey02473993d39", "javablobblobsasimplutilstringtosignuserdelegationkey12957369" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[5].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[5].json new file mode 100644 index 000000000000..c608e28d7826 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[5].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey063410f139f?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "588641a6-3e27-46ba-91b5-f9b352b76400" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA436E9FA5", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:42 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a25ff-a01e-0020-47b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:42 GMT", + "x-ms-client-request-id" : "588641a6-3e27-46ba-91b5-f9b352b76400" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey063410f139f/javablobblobsasimplutilstringtosignuserdelegationkey15231708", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "5e000009-d9b0-4e67-84a4-8d742f037b38", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:42 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:42 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA437B7B4A", + "Content-Length" : "0", + "x-ms-request-id" : "d921deba-401e-0028-2bb3-a3f393000000", + "x-ms-client-request-id" : "5e000009-d9b0-4e67-84a4-8d742f037b38" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "7679cfa3-3008-4b68-ae82-50b611604580" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a2605-a01e-0020-4ab3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignuserdelegationkeyjtcblobsasimplutilstringtosignuserdelegationkey063410f139fMon, 25 Nov 2019 17:09:42 GMT\"0x8D771CA436E9FA5\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:42 GMT", + "x-ms-client-request-id" : "7679cfa3-3008-4b68-ae82-50b611604580", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey063410f139f?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "be4c4b26-f15b-4237-86b1-420aadd1cb2b" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921dec1-401e-0028-31b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:42 GMT", + "x-ms-client-request-id" : "be4c4b26-f15b-4237-86b1-420aadd1cb2b" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosignuserdelegationkey063410f139f", "javablobblobsasimplutilstringtosignuserdelegationkey15231708" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[6].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[6].json new file mode 100644 index 000000000000..11e44901c188 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[6].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey029045b1b81?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "51dcda44-364e-400f-a969-120bcf6d6d7f" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA43A39E85", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:42 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a2607-a01e-0020-4cb3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:42 GMT", + "x-ms-client-request-id" : "51dcda44-364e-400f-a969-120bcf6d6d7f" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey029045b1b81/javablobblobsasimplutilstringtosignuserdelegationkey19564401", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "fedae4f4-3ada-4bd6-8043-0080f6587597", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:42 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:42 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA43B13130", + "Content-Length" : "0", + "x-ms-request-id" : "d921dec9-401e-0028-38b3-a3f393000000", + "x-ms-client-request-id" : "fedae4f4-3ada-4bd6-8043-0080f6587597" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "413f7f34-ffb9-4f4d-9c13-9d6ebea3dc44" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a260c-a01e-0020-50b3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignuserdelegationkeyjtcblobsasimplutilstringtosignuserdelegationkey029045b1b81Mon, 25 Nov 2019 17:09:42 GMT\"0x8D771CA43A39E85\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:42 GMT", + "x-ms-client-request-id" : "413f7f34-ffb9-4f4d-9c13-9d6ebea3dc44", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey029045b1b81?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "f27c654c-e491-44f2-9eb1-79dd86dfaf7d" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921dece-401e-0028-3db3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:42 GMT", + "x-ms-client-request-id" : "f27c654c-e491-44f2-9eb1-79dd86dfaf7d" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosignuserdelegationkey029045b1b81", "javablobblobsasimplutilstringtosignuserdelegationkey19564401" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[7].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[7].json new file mode 100644 index 000000000000..4cbeb8bf3e1b --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[7].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey05135850d25?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "e9346af3-28e3-463d-a749-4f1f69bcf7df" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA43D8C749", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:43 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a2610-a01e-0020-54b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:42 GMT", + "x-ms-client-request-id" : "e9346af3-28e3-463d-a749-4f1f69bcf7df" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey05135850d25/javablobblobsasimplutilstringtosignuserdelegationkey1064067d", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "4cc00dcd-2048-4bb5-89f1-cc25455ebac0", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:43 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:42 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA43E5FCDD", + "Content-Length" : "0", + "x-ms-request-id" : "d921ded2-401e-0028-41b3-a3f393000000", + "x-ms-client-request-id" : "4cc00dcd-2048-4bb5-89f1-cc25455ebac0" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "a70d7206-8a61-44ab-be99-94e595a86415" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a2615-a01e-0020-58b3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignuserdelegationkeyjtcblobsasimplutilstringtosignuserdelegationkey05135850d25Mon, 25 Nov 2019 17:09:43 GMT\"0x8D771CA43D8C749\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:42 GMT", + "x-ms-client-request-id" : "a70d7206-8a61-44ab-be99-94e595a86415", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey05135850d25?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "1960b173-a6a6-4b08-8369-f74dea612dd1" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921ded9-401e-0028-48b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:43 GMT", + "x-ms-client-request-id" : "1960b173-a6a6-4b08-8369-f74dea612dd1" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosignuserdelegationkey05135850d25", "javablobblobsasimplutilstringtosignuserdelegationkey1064067d" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[8].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[8].json new file mode 100644 index 000000000000..8b9b91e65748 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[8].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey062690f6788?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "1b7b4e56-245a-4cef-83fd-5dafa0db0a5c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA440D2856", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:43 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a2619-a01e-0020-5bb3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:43 GMT", + "x-ms-client-request-id" : "1b7b4e56-245a-4cef-83fd-5dafa0db0a5c" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey062690f6788/javablobblobsasimplutilstringtosignuserdelegationkey1301424f", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "35067472-55ca-46f3-a672-7b65065a6465", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:43 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:43 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA4419DE5A", + "Content-Length" : "0", + "x-ms-request-id" : "d921dee0-401e-0028-4fb3-a3f393000000", + "x-ms-client-request-id" : "35067472-55ca-46f3-a672-7b65065a6465" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "37a8d9b4-ae37-4e62-8c68-eadec0481be6" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a2621-a01e-0020-62b3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignuserdelegationkeyjtcblobsasimplutilstringtosignuserdelegationkey062690f6788Mon, 25 Nov 2019 17:09:43 GMT\"0x8D771CA440D2856\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:43 GMT", + "x-ms-client-request-id" : "37a8d9b4-ae37-4e62-8c68-eadec0481be6", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey062690f6788?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "d52840a9-fb7e-4fe0-8d82-dcab473ff939" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921dee3-401e-0028-52b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:43 GMT", + "x-ms-client-request-id" : "d52840a9-fb7e-4fe0-8d82-dcab473ff939" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosignuserdelegationkey062690f6788", "javablobblobsasimplutilstringtosignuserdelegationkey1301424f" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[9].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[9].json new file mode 100644 index 000000000000..85080524a4f8 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobsasimplutilstringtosignuserdelegationkey[9].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey08747327bcc?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "b6150a2b-88ba-482e-8933-2989533a206c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA4440C76C", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:43 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a2627-a01e-0020-68b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:43 GMT", + "x-ms-client-request-id" : "b6150a2b-88ba-482e-8933-2989533a206c" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey08747327bcc/javablobblobsasimplutilstringtosignuserdelegationkey1203842b", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "4f747b0f-dd88-4121-8790-c525adb922f9", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:43 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:43 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA444D71D3", + "Content-Length" : "0", + "x-ms-request-id" : "d921dee4-401e-0028-53b3-a3f393000000", + "x-ms-client-request-id" : "4f747b0f-dd88-4121-8790-c525adb922f9" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobsasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "10d5415a-9a2d-47cd-a017-05d21bc44861" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a2630-a01e-0020-6fb3-a3e99c000000", + "Body" : "jtcblobsasimplutilstringtosignuserdelegationkeyjtcblobsasimplutilstringtosignuserdelegationkey08747327bccMon, 25 Nov 2019 17:09:43 GMT\"0x8D771CA4440C76C\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:43 GMT", + "x-ms-client-request-id" : "10d5415a-9a2d-47cd-a017-05d21bc44861", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobsasimplutilstringtosignuserdelegationkey08747327bcc?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "9eb6bb8d-5bae-457d-9368-5c6739e02ae3" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921dee8-401e-0028-57b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:43 GMT", + "x-ms-client-request-id" : "9eb6bb8d-5bae-457d-9368-5c6739e02ae3" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobsasimplutilstringtosignuserdelegationkey08747327bcc", "javablobblobsasimplutilstringtosignuserdelegationkey1203842b" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobservicesasnetworktestblobsnapshot.json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobservicesasnetworktestblobsnapshot.json new file mode 100644 index 000000000000..9ad3b844f492 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsblobservicesasnetworktestblobsnapshot.json @@ -0,0 +1,197 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobservicesasnetworktestblobsnapshot057825a9fde690?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "1f44cfe0-ab8a-4c8d-b597-1056ab533f7c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA3C8E00AF", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:30 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a24b1-a01e-0020-3db3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:30 GMT", + "x-ms-client-request-id" : "1f44cfe0-ab8a-4c8d-b597-1056ab533f7c" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobservicesasnetworktestblobsnapshot057825a9fde690/javablobblobservicesasnetworktestblobsnapshot136413f6bd2f", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "4f682785-9445-4a1b-a2e8-ab520f9737d5", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:31 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:30 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA3C9AEB92", + "Content-Length" : "0", + "x-ms-request-id" : "d921dd27-401e-0028-44b3-a3f393000000", + "x-ms-client-request-id" : "4f682785-9445-4a1b-a2e8-ab520f9737d5" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobservicesasnetworktestblobsnapshot057825a9fde690/javablobblobservicesasnetworktestblobsnapshot136413f6bd2f?comp=snapshot", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "c8870872-28d4-45f8-8ae0-6009013eebfb" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "x-ms-snapshot" : "2019-11-25T17:09:31.1292895Z", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA3C9AEB92", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:31 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a24bc-a01e-0020-44b3-a3e99c000000", + "x-ms-request-server-encrypted" : "false", + "Date" : "Mon, 25 Nov 2019 17:09:30 GMT", + "x-ms-client-request-id" : "c8870872-28d4-45f8-8ae0-6009013eebfb" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobservicesasnetworktestblobsnapshot057825a9fde690/javablobblobservicesasnetworktestblobsnapshot136413f6bd2f?sv=2019-02-02&spr=https%2Chttp&st=2019-11-24T17%3A09%3A31Z&se=2019-11-26T17%3A09%3A31Z&sip=0.0.0.0-255.255.255.255&sr=bs&sp=racwd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "171103a0-02b8-4b2b-8188-de23e67beab2" + }, + "Response" : { + "Server" : "Microsoft-HTTPAPI/2.0", + "x-ms-error-code" : "AuthenticationFailed", + "retry-after" : "0", + "Content-Length" : "447", + "StatusCode" : "403", + "x-ms-request-id" : "d921dd2f-401e-0028-4bb3-a3f393000000", + "Body" : "AuthenticationFailedServer failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature.\nRequestId:d921dd2f-401e-0028-4bb3-a3f393000000\nTime:2019-11-25T17:09:31.2147725ZThe specified signed resource is not allowed for the this resource level", + "Date" : "Mon, 25 Nov 2019 17:09:30 GMT", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobservicesasnetworktestblobsnapshot057825a9fde690/javablobblobservicesasnetworktestblobsnapshot136413f6bd2f?snapshot=2019-11-25T17%3a09%3a31.1292895Z&sv=2019-02-02&spr=https%2Chttp&st=2019-11-24T17%3A09%3A31Z&se=2019-11-26T17%3A09%3A31Z&sip=0.0.0.0-255.255.255.255&sr=bs&sp=racwd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "acdff660-793e-45f4-b116-9deb5acab1d3" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:31 GMT", + "retry-after" : "0", + "StatusCode" : "200", + "Date" : "Mon, 25 Nov 2019 17:09:30 GMT", + "x-ms-blob-type" : "BlockBlob", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "Accept-Ranges" : "bytes", + "x-ms-server-encrypted" : "true", + "Cache-Control" : "cache", + "ETag" : "0x8D771CA3C9AEB92", + "Content-Disposition" : "disposition", + "x-ms-creation-time" : "Mon, 25 Nov 2019 17:09:31 GMT", + "Content-Length" : "7", + "x-ms-request-id" : "329a24c3-a01e-0020-47b3-a3e99c000000", + "Body" : "default", + "x-ms-client-request-id" : "acdff660-793e-45f4-b116-9deb5acab1d3", + "Content-Language" : "language", + "Content-Type" : "type" + }, + "Exception" : null + }, { + "Method" : "HEAD", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobservicesasnetworktestblobsnapshot057825a9fde690/javablobblobservicesasnetworktestblobsnapshot136413f6bd2f?snapshot=2019-11-25T17%3a09%3a31.1292895Z&sv=2019-02-02&spr=https%2Chttp&st=2019-11-24T17%3A09%3A31Z&se=2019-11-26T17%3A09%3A31Z&sip=0.0.0.0-255.255.255.255&sr=bs&sp=racwd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "08758b9e-a78e-42d6-9962-b47a8b017b7c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:31 GMT", + "retry-after" : "0", + "StatusCode" : "200", + "Date" : "Mon, 25 Nov 2019 17:09:30 GMT", + "x-ms-blob-type" : "BlockBlob", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "Accept-Ranges" : "bytes", + "x-ms-server-encrypted" : "true", + "x-ms-access-tier-inferred" : "true", + "x-ms-access-tier" : "Hot", + "Cache-Control" : "cache", + "ETag" : "0x8D771CA3C9AEB92", + "Content-Disposition" : "disposition", + "Content-Encoding" : "encoding", + "x-ms-creation-time" : "Mon, 25 Nov 2019 17:09:31 GMT", + "Content-Length" : "7", + "x-ms-request-id" : "d921dd37-401e-0028-53b3-a3f393000000", + "x-ms-client-request-id" : "08758b9e-a78e-42d6-9962-b47a8b017b7c", + "Content-Language" : "language", + "Content-Type" : "type" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcblobservicesasnetworktestblobsnapshot&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "9470105e-7885-4f46-812f-51b073db267a" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a24c4-a01e-0020-48b3-a3e99c000000", + "Body" : "jtcblobservicesasnetworktestblobsnapshotjtcblobservicesasnetworktestblobsnapshot057825a9fde690Mon, 25 Nov 2019 17:09:30 GMT\"0x8D771CA3C8E00AF\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:30 GMT", + "x-ms-client-request-id" : "9470105e-7885-4f46-812f-51b073db267a", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcblobservicesasnetworktestblobsnapshot057825a9fde690?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "75a8ba08-34bd-4e3d-9cac-1c64ea4c3a3c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921dd44-401e-0028-5db3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:30 GMT", + "x-ms-client-request-id" : "75a8ba08-34bd-4e3d-9cac-1c64ea4c3a3c" + }, + "Exception" : null + } ], + "variables" : [ "jtcblobservicesasnetworktestblobsnapshot057825a9fde690", "javablobblobservicesasnetworktestblobsnapshot136413f6bd2f", "2019-11-25T17:09:31.104721500Z", "2019-11-25T17:09:31.104721500Z" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsensurestateillegalargument.json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsensurestateillegalargument.json new file mode 100644 index 000000000000..597a5de858bc --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsensurestateillegalargument.json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcensurestateillegalargument079451bb4ed7a903b84a?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "1c829f9c-6441-4ffe-abb5-089597b1b5f1" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA3F6F36E1", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:35 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a2538-a01e-0020-20b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:35 GMT", + "x-ms-client-request-id" : "1c829f9c-6441-4ffe-abb5-089597b1b5f1" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcensurestateillegalargument079451bb4ed7a903b84a/javablobensurestateillegalargument1735024ef73b455fa", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "5966c7ad-6979-488e-9423-f464a2492962", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:35 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:35 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA3F7C3A0F", + "Content-Length" : "0", + "x-ms-request-id" : "d921dde0-401e-0028-63b3-a3f393000000", + "x-ms-client-request-id" : "5966c7ad-6979-488e-9423-f464a2492962" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcensurestateillegalargument&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "a42eedd9-5026-415a-b105-bf33f01f3d5a" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a253a-a01e-0020-21b3-a3e99c000000", + "Body" : "jtcensurestateillegalargumentjtcensurestateillegalargument079451bb4ed7a903b84aMon, 25 Nov 2019 17:09:35 GMT\"0x8D771CA3F6F36E1\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:35 GMT", + "x-ms-client-request-id" : "a42eedd9-5026-415a-b105-bf33f01f3d5a", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcensurestateillegalargument079451bb4ed7a903b84a?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "a2958187-6472-4e14-9053-9992d83790dd" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921dde3-401e-0028-66b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:35 GMT", + "x-ms-client-request-id" : "a2958187-6472-4e14-9053-9992d83790dd" + }, + "Exception" : null + } ], + "variables" : [ "jtcensurestateillegalargument079451bb4ed7a903b84a", "javablobensurestateillegalargument1735024ef73b455fa" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsensurestateresourceandpermission[0].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsensurestateresourceandpermission[0].json new file mode 100644 index 000000000000..4be15ef72253 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsensurestateresourceandpermission[0].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcensurestateresourceandpermission044225f9396c21d36?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "841416d0-62a4-4995-bc4f-d0b429e8525b" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA3FA56F75", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:36 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a2546-a01e-0020-2ab3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:35 GMT", + "x-ms-client-request-id" : "841416d0-62a4-4995-bc4f-d0b429e8525b" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcensurestateresourceandpermission044225f9396c21d36/javablobensurestateresourceandpermission19187238b020bb", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "1df17c3d-27b1-4e78-bf4b-9d688c900d95", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:36 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:36 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA3FB23DF3", + "Content-Length" : "0", + "x-ms-request-id" : "d921dde9-401e-0028-6cb3-a3f393000000", + "x-ms-client-request-id" : "1df17c3d-27b1-4e78-bf4b-9d688c900d95" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcensurestateresourceandpermission&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "e4b1464c-d4f6-4ab7-918b-2f3a28da8ced" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a2549-a01e-0020-2cb3-a3e99c000000", + "Body" : "jtcensurestateresourceandpermissionjtcensurestateresourceandpermission044225f9396c21d36Mon, 25 Nov 2019 17:09:36 GMT\"0x8D771CA3FA56F75\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:36 GMT", + "x-ms-client-request-id" : "e4b1464c-d4f6-4ab7-918b-2f3a28da8ced", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcensurestateresourceandpermission044225f9396c21d36?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "2828ab16-2b9f-44ce-8dd9-a96b66ee39ff" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921ddeb-401e-0028-6eb3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:36 GMT", + "x-ms-client-request-id" : "2828ab16-2b9f-44ce-8dd9-a96b66ee39ff" + }, + "Exception" : null + } ], + "variables" : [ "jtcensurestateresourceandpermission044225f9396c21d36", "javablobensurestateresourceandpermission19187238b020bb" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsensurestateresourceandpermission[1].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsensurestateresourceandpermission[1].json new file mode 100644 index 000000000000..dc1fa056ca50 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsensurestateresourceandpermission[1].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcensurestateresourceandpermission067424a73973c26da?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "1f73436c-0907-4d87-b210-c7a49431fe85" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA3FD90C4B", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:36 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a2550-a01e-0020-31b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:36 GMT", + "x-ms-client-request-id" : "1f73436c-0907-4d87-b210-c7a49431fe85" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcensurestateresourceandpermission067424a73973c26da/javablobensurestateresourceandpermission162311a8707d07", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "c3c3191d-b7e1-47db-95d8-5452fadf39f6", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:36 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:36 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA3FE5F812", + "Content-Length" : "0", + "x-ms-request-id" : "d921ddef-401e-0028-72b3-a3f393000000", + "x-ms-client-request-id" : "c3c3191d-b7e1-47db-95d8-5452fadf39f6" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcensurestateresourceandpermission&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "1126774b-1c92-4126-934e-1c03315d7c6c" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a2554-a01e-0020-34b3-a3e99c000000", + "Body" : "jtcensurestateresourceandpermissionjtcensurestateresourceandpermission067424a73973c26daMon, 25 Nov 2019 17:09:36 GMT\"0x8D771CA3FD90C4B\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:36 GMT", + "x-ms-client-request-id" : "1126774b-1c92-4126-934e-1c03315d7c6c", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcensurestateresourceandpermission067424a73973c26da?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "ac57f5c2-423d-4eb2-97d8-4ec29758137d" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921ddf4-401e-0028-76b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:36 GMT", + "x-ms-client-request-id" : "ac57f5c2-423d-4eb2-97d8-4ec29758137d" + }, + "Exception" : null + } ], + "variables" : [ "jtcensurestateresourceandpermission067424a73973c26da", "javablobensurestateresourceandpermission162311a8707d07" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsensurestateresourceandpermission[2].json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsensurestateresourceandpermission[2].json new file mode 100644 index 000000000000..82952fb9ad4b --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsensurestateresourceandpermission[2].json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcensurestateresourceandpermission007063c512bf3c775?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "5a3fb7d4-b1f0-49d8-901e-64ecef188895" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA400D95C5", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:36 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a2558-a01e-0020-37b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:36 GMT", + "x-ms-client-request-id" : "5a3fb7d4-b1f0-49d8-901e-64ecef188895" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcensurestateresourceandpermission007063c512bf3c775/javablobensurestateresourceandpermission186155a746a144", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "c8486568-bb4c-452a-b044-8619e01d0395", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:36 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:36 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA401AEB2B", + "Content-Length" : "0", + "x-ms-request-id" : "d921ddfc-401e-0028-7db3-a3f393000000", + "x-ms-client-request-id" : "c8486568-bb4c-452a-b044-8619e01d0395" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcensurestateresourceandpermission&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "161e87f7-ac8e-4bf1-9dfb-404a81fc2fb9" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a255c-a01e-0020-3ab3-a3e99c000000", + "Body" : "jtcensurestateresourceandpermissionjtcensurestateresourceandpermission007063c512bf3c775Mon, 25 Nov 2019 17:09:36 GMT\"0x8D771CA400D95C5\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:36 GMT", + "x-ms-client-request-id" : "161e87f7-ac8e-4bf1-9dfb-404a81fc2fb9", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcensurestateresourceandpermission007063c512bf3c775?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "92c86545-8830-4904-8ec1-11b3cbd93f10" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921de03-401e-0028-04b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:36 GMT", + "x-ms-client-request-id" : "92c86545-8830-4904-8ec1-11b3cbd93f10" + }, + "Exception" : null + } ], + "variables" : [ "jtcensurestateresourceandpermission007063c512bf3c775", "javablobensurestateresourceandpermission186155a746a144" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsensurestateversion.json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsensurestateversion.json new file mode 100644 index 000000000000..51405130d192 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsensurestateversion.json @@ -0,0 +1,90 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcensurestateversion0sasclienttestsensurestateversion7ef95525?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "32b2ae0f-3b31-4b50-b3ac-b1699511af61" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA3F383C56", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:35 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a252f-a01e-0020-1ab3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:35 GMT", + "x-ms-client-request-id" : "32b2ae0f-3b31-4b50-b3ac-b1699511af61" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcensurestateversion0sasclienttestsensurestateversion7ef95525/javablobensurestateversion1174573473b33f9153412", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "141b6a76-1c5a-4b9b-93df-653a5295b9bc", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:35 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:35 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA3F45E7E2", + "Content-Length" : "0", + "x-ms-request-id" : "d921ddd9-401e-0028-5cb3-a3f393000000", + "x-ms-client-request-id" : "141b6a76-1c5a-4b9b-93df-653a5295b9bc" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcensurestateversion&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "3baba14d-bbff-4dc9-ba14-186800eb83aa" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a2536-a01e-0020-1eb3-a3e99c000000", + "Body" : "jtcensurestateversionjtcensurestateversion0sasclienttestsensurestateversion7ef95525Mon, 25 Nov 2019 17:09:35 GMT\"0x8D771CA3F383C56\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:35 GMT", + "x-ms-client-request-id" : "3baba14d-bbff-4dc9-ba14-186800eb83aa", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcensurestateversion0sasclienttestsensurestateversion7ef95525?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "7a92f80f-bbbb-4883-b79f-a8d0dbba9c03" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921dddd-401e-0028-60b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:35 GMT", + "x-ms-client-request-id" : "7a92f80f-bbbb-4883-b79f-a8d0dbba9c03" + }, + "Exception" : null + } ], + "variables" : [ "jtcensurestateversion0sasclienttestsensurestateversion7ef95525", "javablobensurestateversion1174573473b33f9153412" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsnetworktestblobsas.json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsnetworktestblobsas.json new file mode 100644 index 000000000000..a9cd35dee6a5 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsnetworktestblobsas.json @@ -0,0 +1,158 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobsas0sasclienttestsnetworktestblobsas20158403?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "ca96f59b-6c9c-460b-a023-8c66928ca518" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA39C4C7A9", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:26 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a23d7-a01e-0020-74b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:25 GMT", + "x-ms-client-request-id" : "ca96f59b-6c9c-460b-a023-8c66928ca518" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobsas0sasclienttestsnetworktestblobsas20158403/javablobnetworktestblobsas169768633e6e3cc62e49b", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "b6e58c52-3095-4e76-b9fe-36dff3809899", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:26 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:25 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA39E5B692", + "Content-Length" : "0", + "x-ms-request-id" : "329a23dd-a01e-0020-77b3-a3e99c000000", + "x-ms-client-request-id" : "b6e58c52-3095-4e76-b9fe-36dff3809899" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobsas0sasclienttestsnetworktestblobsas20158403/javablobnetworktestblobsas169768633e6e3cc62e49b?sv=2019-02-02&spr=https%2Chttp&st=2019-11-24T17%3A09%3A26Z&se=2019-11-26T17%3A09%3A26Z&sip=0.0.0.0-255.255.255.255&sr=b&sp=racwd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "30576ea7-5b42-4468-80bb-7edcf0dd033d" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "x-ms-lease-status" : "unlocked", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-lease-state" : "available", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:26 GMT", + "retry-after" : "0", + "StatusCode" : "200", + "Date" : "Mon, 25 Nov 2019 17:09:25 GMT", + "x-ms-blob-type" : "BlockBlob", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "Accept-Ranges" : "bytes", + "x-ms-server-encrypted" : "true", + "Cache-Control" : "cache", + "ETag" : "0x8D771CA39E5B692", + "Content-Disposition" : "disposition", + "x-ms-creation-time" : "Mon, 25 Nov 2019 17:09:26 GMT", + "Content-Length" : "7", + "x-ms-request-id" : "329a23df-a01e-0020-79b3-a3e99c000000", + "Body" : "default", + "x-ms-client-request-id" : "30576ea7-5b42-4468-80bb-7edcf0dd033d", + "Content-Language" : "language", + "Content-Type" : "type" + }, + "Exception" : null + }, { + "Method" : "HEAD", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobsas0sasclienttestsnetworktestblobsas20158403/javablobnetworktestblobsas169768633e6e3cc62e49b?sv=2019-02-02&spr=https%2Chttp&st=2019-11-24T17%3A09%3A26Z&se=2019-11-26T17%3A09%3A26Z&sip=0.0.0.0-255.255.255.255&sr=b&sp=racwd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "d72f4cf4-04ef-4d3f-be30-a1984f0fc437" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "x-ms-lease-status" : "unlocked", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-lease-state" : "available", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:26 GMT", + "retry-after" : "0", + "StatusCode" : "200", + "Date" : "Mon, 25 Nov 2019 17:09:25 GMT", + "x-ms-blob-type" : "BlockBlob", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "Accept-Ranges" : "bytes", + "x-ms-server-encrypted" : "true", + "x-ms-access-tier-inferred" : "true", + "x-ms-access-tier" : "Hot", + "Cache-Control" : "cache", + "ETag" : "0x8D771CA39E5B692", + "Content-Disposition" : "disposition", + "Content-Encoding" : "encoding", + "x-ms-creation-time" : "Mon, 25 Nov 2019 17:09:26 GMT", + "Content-Length" : "7", + "x-ms-request-id" : "329a23e1-a01e-0020-7bb3-a3e99c000000", + "x-ms-client-request-id" : "d72f4cf4-04ef-4d3f-be30-a1984f0fc437", + "Content-Language" : "language", + "Content-Type" : "type" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcnetworktestblobsas&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "2b506eaa-4fb3-4f28-ba44-c737a34271b2" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a23e3-a01e-0020-7db3-a3e99c000000", + "Body" : "jtcnetworktestblobsasjtcnetworktestblobsas0sasclienttestsnetworktestblobsas20158403Mon, 25 Nov 2019 17:09:26 GMT\"0x8D771CA39C4C7A9\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:26 GMT", + "x-ms-client-request-id" : "2b506eaa-4fb3-4f28-ba44-c737a34271b2", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobsas0sasclienttestsnetworktestblobsas20158403?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "6032dbfd-d5fa-4b2f-b2f6-3029aa80f231" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "329a23e4-a01e-0020-7eb3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:26 GMT", + "x-ms-client-request-id" : "6032dbfd-d5fa-4b2f-b2f6-3029aa80f231" + }, + "Exception" : null + } ], + "variables" : [ "jtcnetworktestblobsas0sasclienttestsnetworktestblobsas20158403", "javablobnetworktestblobsas169768633e6e3cc62e49b", "2019-11-25T17:09:26.498760400Z", "2019-11-25T17:09:26.501760400Z" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsnetworktestblobsnapshot.json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsnetworktestblobsnapshot.json new file mode 100644 index 000000000000..6ac33e16ac1f --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsnetworktestblobsnapshot.json @@ -0,0 +1,202 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobsnapshot02540570aba2cd3d9e46f?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "e09679a2-45d3-4bff-bdb6-f108d225fc1e" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA3A49A677", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:27 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a23e8-a01e-0020-02b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:26 GMT", + "x-ms-client-request-id" : "e09679a2-45d3-4bff-bdb6-f108d225fc1e" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobsnapshot02540570aba2cd3d9e46f/javablobnetworktestblobsnapshot102035629499e132984", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "d11846ca-8d30-4a33-a0af-104f7c7230c6", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:27 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:26 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA3A58C3C2", + "Content-Length" : "0", + "x-ms-request-id" : "329a23ec-a01e-0020-05b3-a3e99c000000", + "x-ms-client-request-id" : "d11846ca-8d30-4a33-a0af-104f7c7230c6" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobsnapshot02540570aba2cd3d9e46f/javablobnetworktestblobsnapshot2668120224a37c98254", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "e101a62d-b820-4910-9d33-55239c439a9b", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "Q7G6/s6+u/k=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:27 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:26 GMT", + "Content-MD5" : "CY9rzUYh03PK3k6DJie09g==", + "ETag" : "0x8D771CA3A68A2A6", + "Content-Length" : "0", + "x-ms-request-id" : "329a23ed-a01e-0020-06b3-a3e99c000000", + "x-ms-client-request-id" : "e101a62d-b820-4910-9d33-55239c439a9b" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobsnapshot02540570aba2cd3d9e46f/javablobnetworktestblobsnapshot2668120224a37c98254?comp=snapshot", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "4e6e9613-eefb-49c4-a848-213edd0f8047" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "x-ms-snapshot" : "2019-11-25T17:09:27.4562807Z", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA3A68A2A6", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:27 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a23ef-a01e-0020-08b3-a3e99c000000", + "x-ms-request-server-encrypted" : "false", + "Date" : "Mon, 25 Nov 2019 17:09:26 GMT", + "x-ms-client-request-id" : "4e6e9613-eefb-49c4-a848-213edd0f8047" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobsnapshot02540570aba2cd3d9e46f/javablobnetworktestblobsnapshot2668120224a37c98254?snapshot=2019-11-25T17%3a09%3a27.4562807Z&sv=2019-02-02&spr=https%2Chttp&st=2019-11-24T17%3A09%3A27Z&se=2019-11-26T17%3A09%3A27Z&sip=0.0.0.0-255.255.255.255&sr=bs&sp=racwd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "de5631bd-d957-40ac-8348-a6a66856921e" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:27 GMT", + "retry-after" : "0", + "StatusCode" : "200", + "Date" : "Mon, 25 Nov 2019 17:09:26 GMT", + "x-ms-blob-type" : "BlockBlob", + "Content-MD5" : "CY9rzUYh03PK3k6DJie09g==", + "Accept-Ranges" : "bytes", + "x-ms-server-encrypted" : "true", + "Cache-Control" : "cache", + "ETag" : "0x8D771CA3A68A2A6", + "Content-Disposition" : "disposition", + "x-ms-creation-time" : "Mon, 25 Nov 2019 17:09:27 GMT", + "Content-Length" : "4", + "x-ms-request-id" : "329a23f0-a01e-0020-09b3-a3e99c000000", + "Body" : "test", + "x-ms-client-request-id" : "de5631bd-d957-40ac-8348-a6a66856921e", + "Content-Language" : "language", + "Content-Type" : "type" + }, + "Exception" : null + }, { + "Method" : "HEAD", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobsnapshot02540570aba2cd3d9e46f/javablobnetworktestblobsnapshot2668120224a37c98254?snapshot=2019-11-25T17%3a09%3a27.4562807Z&sv=2019-02-02&spr=https%2Chttp&st=2019-11-24T17%3A09%3A27Z&se=2019-11-26T17%3A09%3A27Z&sip=0.0.0.0-255.255.255.255&sr=bs&sp=racwd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "1d2832ad-763d-4623-ae69-9b6694ed8a66" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:27 GMT", + "retry-after" : "0", + "StatusCode" : "200", + "Date" : "Mon, 25 Nov 2019 17:09:26 GMT", + "x-ms-blob-type" : "BlockBlob", + "Content-MD5" : "CY9rzUYh03PK3k6DJie09g==", + "Accept-Ranges" : "bytes", + "x-ms-server-encrypted" : "true", + "x-ms-access-tier-inferred" : "true", + "x-ms-access-tier" : "Hot", + "Cache-Control" : "cache", + "ETag" : "0x8D771CA3A68A2A6", + "Content-Disposition" : "disposition", + "Content-Encoding" : "encoding", + "x-ms-creation-time" : "Mon, 25 Nov 2019 17:09:27 GMT", + "Content-Length" : "4", + "x-ms-request-id" : "329a23f2-a01e-0020-0bb3-a3e99c000000", + "x-ms-client-request-id" : "1d2832ad-763d-4623-ae69-9b6694ed8a66", + "Content-Language" : "language", + "Content-Type" : "type" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcnetworktestblobsnapshot&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "7fc65b94-64bb-4dc8-be1f-086e9d3e273b" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a23f3-a01e-0020-0cb3-a3e99c000000", + "Body" : "jtcnetworktestblobsnapshotjtcnetworktestblobsnapshot02540570aba2cd3d9e46fMon, 25 Nov 2019 17:09:27 GMT\"0x8D771CA3A49A677\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:26 GMT", + "x-ms-client-request-id" : "7fc65b94-64bb-4dc8-be1f-086e9d3e273b", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobsnapshot02540570aba2cd3d9e46f?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "2af744ba-b0d1-4941-9511-295d592f009e" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921dce2-401e-0028-0ab3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:27 GMT", + "x-ms-client-request-id" : "2af744ba-b0d1-4941-9511-295d592f009e" + }, + "Exception" : null + } ], + "variables" : [ "jtcnetworktestblobsnapshot02540570aba2cd3d9e46f", "javablobnetworktestblobsnapshot102035629499e132984", "javablobnetworktestblobsnapshot2668120224a37c98254", "2019-11-25T17:09:27.443868800Z", "2019-11-25T17:09:27.443868800Z" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsnetworktestblobsnapshotuserdelegation.json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsnetworktestblobsnapshotuserdelegation.json new file mode 100644 index 000000000000..d78c4cd4f8fd --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsnetworktestblobsnapshotuserdelegation.json @@ -0,0 +1,219 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobsnapshotuserdelegation03840477362e2e?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "b5d79c61-b4f7-4d5f-8c45-49b85715b9e4" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA3CF78BD8", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:31 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a24c9-a01e-0020-4db3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:30 GMT", + "x-ms-client-request-id" : "b5d79c61-b4f7-4d5f-8c45-49b85715b9e4" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobsnapshotuserdelegation03840477362e2e/javablobnetworktestblobsnapshotuserdelegation120014caa048", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "2f41707f-4757-4141-af74-0b2bd05112cb", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:31 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:30 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA3D04AA2E", + "Content-Length" : "0", + "x-ms-request-id" : "d921dd4f-401e-0028-66b3-a3f393000000", + "x-ms-client-request-id" : "2f41707f-4757-4141-af74-0b2bd05112cb" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobsnapshotuserdelegation03840477362e2e/javablobnetworktestblobsnapshotuserdelegation120014caa048?comp=snapshot", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "1d5053ed-4914-4814-9a67-22873929f97f" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "x-ms-snapshot" : "2019-11-25T17:09:31.8122954Z", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA3D04AA2E", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:31 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a24e4-a01e-0020-65b3-a3e99c000000", + "x-ms-request-server-encrypted" : "false", + "Date" : "Mon, 25 Nov 2019 17:09:30 GMT", + "x-ms-client-request-id" : "1d5053ed-4914-4814-9a67-22873929f97f" + }, + "Exception" : null + }, { + "Method" : "POST", + "Uri" : "https://gapradev.blob.core.windows.net?restype=service&comp=userdelegationkey", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "ecc43eea-ef70-43ee-b58a-bb7fde027d34", + "Content-Type" : "application/xml; charset=utf-8" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "d921dd5f-401e-0028-73b3-a3f393000000", + "Body" : "7a56bc7f-2460-439c-8e22-cc8f44b161238ef2432d-93d8-4e9a-a756-f9a8ee5544d72019-11-24T17:09:31Z2019-11-26T17:09:31Zb2019-02-02UkVEQUNURUQ=", + "Date" : "Mon, 25 Nov 2019 17:09:32 GMT", + "x-ms-client-request-id" : "ecc43eea-ef70-43ee-b58a-bb7fde027d34", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobsnapshotuserdelegation03840477362e2e/javablobnetworktestblobsnapshotuserdelegation120014caa048?sv=2019-02-02&spr=https%2Chttp&st=2019-11-24T17%3A09%3A31Z&se=2019-11-26T17%3A09%3A31Z&sip=0.0.0.0-255.255.255.255&skoid=c4f48289-bb84-4086-b250-6f94a8f64cee&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2019-11-24T17%3A09%3A31Z&ske=2019-11-26T17%3A09%3A31Z&sks=b&skv=2019-02-02&sr=bs&sp=racwd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "f16ddfaa-ba18-4c50-b868-9cbacd3ee66f" + }, + "Response" : { + "Server" : "Microsoft-HTTPAPI/2.0", + "x-ms-error-code" : "AuthenticationFailed", + "retry-after" : "0", + "Content-Length" : "447", + "StatusCode" : "403", + "x-ms-request-id" : "329a24eb-a01e-0020-6ab3-a3e99c000000", + "Body" : "AuthenticationFailedServer failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature.\nRequestId:329a24eb-a01e-0020-6ab3-a3e99c000000\nTime:2019-11-25T17:09:32.2487938ZThe specified signed resource is not allowed for the this resource level", + "Date" : "Mon, 25 Nov 2019 17:09:32 GMT", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobsnapshotuserdelegation03840477362e2e/javablobnetworktestblobsnapshotuserdelegation120014caa048?snapshot=2019-11-25T17%3a09%3a31.8122954Z&sv=2019-02-02&spr=https%2Chttp&st=2019-11-24T17%3A09%3A31Z&se=2019-11-26T17%3A09%3A31Z&sip=0.0.0.0-255.255.255.255&skoid=c4f48289-bb84-4086-b250-6f94a8f64cee&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2019-11-24T17%3A09%3A31Z&ske=2019-11-26T17%3A09%3A31Z&sks=b&skv=2019-02-02&sr=bs&sp=racwd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "5671c3f6-b71e-413d-a4a4-09cb0d167615" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:31 GMT", + "retry-after" : "0", + "StatusCode" : "200", + "Date" : "Mon, 25 Nov 2019 17:09:32 GMT", + "x-ms-blob-type" : "BlockBlob", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "Accept-Ranges" : "bytes", + "x-ms-server-encrypted" : "true", + "Cache-Control" : "cache", + "ETag" : "0x8D771CA3D04AA2E", + "Content-Disposition" : "disposition", + "x-ms-creation-time" : "Mon, 25 Nov 2019 17:09:31 GMT", + "Content-Length" : "7", + "x-ms-request-id" : "d921dd64-401e-0028-78b3-a3f393000000", + "Body" : "default", + "x-ms-client-request-id" : "5671c3f6-b71e-413d-a4a4-09cb0d167615", + "Content-Language" : "language", + "Content-Type" : "type" + }, + "Exception" : null + }, { + "Method" : "HEAD", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobsnapshotuserdelegation03840477362e2e/javablobnetworktestblobsnapshotuserdelegation120014caa048?snapshot=2019-11-25T17%3a09%3a31.8122954Z&sv=2019-02-02&spr=https%2Chttp&st=2019-11-24T17%3A09%3A31Z&se=2019-11-26T17%3A09%3A31Z&sip=0.0.0.0-255.255.255.255&skoid=c4f48289-bb84-4086-b250-6f94a8f64cee&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2019-11-24T17%3A09%3A31Z&ske=2019-11-26T17%3A09%3A31Z&sks=b&skv=2019-02-02&sr=bs&sp=racwd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "9b7b789f-1d56-4420-82a7-e0bc5b77894c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:31 GMT", + "retry-after" : "0", + "StatusCode" : "200", + "Date" : "Mon, 25 Nov 2019 17:09:32 GMT", + "x-ms-blob-type" : "BlockBlob", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "Accept-Ranges" : "bytes", + "x-ms-server-encrypted" : "true", + "x-ms-access-tier-inferred" : "true", + "x-ms-access-tier" : "Hot", + "Cache-Control" : "cache", + "ETag" : "0x8D771CA3D04AA2E", + "Content-Disposition" : "disposition", + "Content-Encoding" : "encoding", + "x-ms-creation-time" : "Mon, 25 Nov 2019 17:09:31 GMT", + "Content-Length" : "7", + "x-ms-request-id" : "329a24ef-a01e-0020-6db3-a3e99c000000", + "x-ms-client-request-id" : "9b7b789f-1d56-4420-82a7-e0bc5b77894c", + "Content-Language" : "language", + "Content-Type" : "type" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcnetworktestblobsnapshotuserdelegation&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "6d37055a-8740-4595-ab9e-550797ac321c" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "d921dd69-401e-0028-7cb3-a3f393000000", + "Body" : "jtcnetworktestblobsnapshotuserdelegationjtcnetworktestblobsnapshotuserdelegation03840477362e2eMon, 25 Nov 2019 17:09:31 GMT\"0x8D771CA3CF78BD8\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:32 GMT", + "x-ms-client-request-id" : "6d37055a-8740-4595-ab9e-550797ac321c", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobsnapshotuserdelegation03840477362e2e?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "2ca2d15f-5d48-46bb-8a61-3aa7b451d190" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "329a24f5-a01e-0020-70b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:32 GMT", + "x-ms-client-request-id" : "2ca2d15f-5d48-46bb-8a61-3aa7b451d190" + }, + "Exception" : null + } ], + "variables" : [ "jtcnetworktestblobsnapshotuserdelegation03840477362e2e", "javablobnetworktestblobsnapshotuserdelegation120014caa048", "2019-11-25T17:09:31.787683Z", "2019-11-25T17:09:31.788682900Z", "2019-11-25T17:09:31.789653800Z", "2019-11-25T17:09:31.789653800Z", "c4f48289-bb84-4086-b250-6f94a8f64cee", "72f988bf-86f1-41af-91ab-2d7cd011db47" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsnetworktestblobuserdelegation.json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsnetworktestblobuserdelegation.json new file mode 100644 index 000000000000..15edff51784b --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsnetworktestblobuserdelegation.json @@ -0,0 +1,180 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobuserdelegation0458840195b4321c51?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "ed069f9e-50c5-4566-9845-5fff88ef61ac" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA3B4336A9", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:28 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "d921dcfe-401e-0028-23b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:27 GMT", + "x-ms-client-request-id" : "ed069f9e-50c5-4566-9845-5fff88ef61ac" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobuserdelegation0458840195b4321c51/javablobnetworktestblobuserdelegation180269895b752a25", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "cc07b576-618a-45eb-9a32-54e5d2ba46ba", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:28 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:28 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA3B509169", + "Content-Length" : "0", + "x-ms-request-id" : "329a2417-a01e-0020-28b3-a3e99c000000", + "x-ms-client-request-id" : "cc07b576-618a-45eb-9a32-54e5d2ba46ba" + }, + "Exception" : null + }, { + "Method" : "POST", + "Uri" : "https://gapradev.blob.core.windows.net?restype=service&comp=userdelegationkey", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "d666dfef-2455-41b2-bb8a-102b544c9fc6", + "Content-Type" : "application/xml; charset=utf-8" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "d921dd0c-401e-0028-2db3-a3f393000000", + "Body" : "f2aa5e42-6670-410b-9f46-f8b1188ec239315a5043-2e30-41b6-b0d7-aa22296ae15d2019-11-24T17:09:28Z2019-11-26T17:09:28Zb2019-02-02UkVEQUNURUQ=", + "Date" : "Mon, 25 Nov 2019 17:09:29 GMT", + "x-ms-client-request-id" : "d666dfef-2455-41b2-bb8a-102b544c9fc6", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobuserdelegation0458840195b4321c51/javablobnetworktestblobuserdelegation180269895b752a25?sv=2019-02-02&spr=https%2Chttp&st=2019-11-24T17%3A09%3A28Z&se=2019-11-26T17%3A09%3A28Z&sip=0.0.0.0-255.255.255.255&skoid=c4f48289-bb84-4086-b250-6f94a8f64cee&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2019-11-24T17%3A09%3A28Z&ske=2019-11-26T17%3A09%3A28Z&sks=b&skv=2019-02-02&sr=b&sp=racwd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "f8a58b97-5ac5-40c6-8324-138488a8ddb3" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "x-ms-lease-status" : "unlocked", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-lease-state" : "available", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:28 GMT", + "retry-after" : "0", + "StatusCode" : "200", + "Date" : "Mon, 25 Nov 2019 17:09:29 GMT", + "x-ms-blob-type" : "BlockBlob", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "Accept-Ranges" : "bytes", + "x-ms-server-encrypted" : "true", + "Cache-Control" : "cache", + "ETag" : "0x8D771CA3B509169", + "Content-Disposition" : "disposition", + "x-ms-creation-time" : "Mon, 25 Nov 2019 17:09:28 GMT", + "Content-Length" : "7", + "x-ms-request-id" : "329a243b-a01e-0020-48b3-a3e99c000000", + "Body" : "default", + "x-ms-client-request-id" : "f8a58b97-5ac5-40c6-8324-138488a8ddb3", + "Content-Language" : "language", + "Content-Type" : "type" + }, + "Exception" : null + }, { + "Method" : "HEAD", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobuserdelegation0458840195b4321c51/javablobnetworktestblobuserdelegation180269895b752a25?sv=2019-02-02&spr=https%2Chttp&st=2019-11-24T17%3A09%3A28Z&se=2019-11-26T17%3A09%3A28Z&sip=0.0.0.0-255.255.255.255&skoid=c4f48289-bb84-4086-b250-6f94a8f64cee&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2019-11-24T17%3A09%3A28Z&ske=2019-11-26T17%3A09%3A28Z&sks=b&skv=2019-02-02&sr=b&sp=racwd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "72266b1d-c83c-4826-ae6c-b05b38654242" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "x-ms-lease-status" : "unlocked", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-lease-state" : "available", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:28 GMT", + "retry-after" : "0", + "StatusCode" : "200", + "Date" : "Mon, 25 Nov 2019 17:09:29 GMT", + "x-ms-blob-type" : "BlockBlob", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "Accept-Ranges" : "bytes", + "x-ms-server-encrypted" : "true", + "x-ms-access-tier-inferred" : "true", + "x-ms-access-tier" : "Hot", + "Cache-Control" : "cache", + "ETag" : "0x8D771CA3B509169", + "Content-Disposition" : "disposition", + "Content-Encoding" : "encoding", + "x-ms-creation-time" : "Mon, 25 Nov 2019 17:09:28 GMT", + "Content-Length" : "7", + "x-ms-request-id" : "d921dd21-401e-0028-3fb3-a3f393000000", + "x-ms-client-request-id" : "72266b1d-c83c-4826-ae6c-b05b38654242", + "Content-Language" : "language", + "Content-Type" : "type" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcnetworktestblobuserdelegation&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "cda29162-14f6-4a3b-bbce-e3c5b70987c7" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a24ae-a01e-0020-3ab3-a3e99c000000", + "Body" : "jtcnetworktestblobuserdelegationjtcnetworktestblobuserdelegation0458840195b4321c51Mon, 25 Nov 2019 17:09:28 GMT\"0x8D771CA3B4336A9\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:29 GMT", + "x-ms-client-request-id" : "cda29162-14f6-4a3b-bbce-e3c5b70987c7", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestblobuserdelegation0458840195b4321c51?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "882b754a-ef49-4235-a37d-d69f821976b5" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "d921dd23-401e-0028-40b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:29 GMT", + "x-ms-client-request-id" : "882b754a-ef49-4235-a37d-d69f821976b5" + }, + "Exception" : null + } ], + "variables" : [ "jtcnetworktestblobuserdelegation0458840195b4321c51", "javablobnetworktestblobuserdelegation180269895b752a25", "2019-11-25T17:09:28.843991800Z", "2019-11-25T17:09:28.843991800Z", "2019-11-25T17:09:28.883984400Z", "2019-11-25T17:09:28.883984400Z", "c4f48289-bb84-4086-b250-6f94a8f64cee", "72f988bf-86f1-41af-91ab-2d7cd011db47" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsnetworktestcontaineruserdelegation.json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsnetworktestcontaineruserdelegation.json new file mode 100644 index 000000000000..51eee75a70c9 --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsnetworktestcontaineruserdelegation.json @@ -0,0 +1,133 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestcontaineruserdelegation0715539637c65f78?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "2faa7c3f-2353-404d-9872-fc7ff279003a" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA3D969CD1", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:32 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "d921dd71-401e-0028-04b3-a3f393000000", + "Date" : "Mon, 25 Nov 2019 17:09:32 GMT", + "x-ms-client-request-id" : "2faa7c3f-2353-404d-9872-fc7ff279003a" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestcontaineruserdelegation0715539637c65f78/javablobnetworktestcontaineruserdelegation1670526fc60bd", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "ce8a9607-60fb-44ea-ad46-c3424eb65e76", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:32 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:32 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA3DA4BACC", + "Content-Length" : "0", + "x-ms-request-id" : "329a24f6-a01e-0020-71b3-a3e99c000000", + "x-ms-client-request-id" : "ce8a9607-60fb-44ea-ad46-c3424eb65e76" + }, + "Exception" : null + }, { + "Method" : "POST", + "Uri" : "https://gapradev.blob.core.windows.net?restype=service&comp=userdelegationkey", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "756cdd31-d044-4410-95f5-03d770ce4703", + "Content-Type" : "application/xml; charset=utf-8" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "d921dd82-401e-0028-11b3-a3f393000000", + "Body" : "c08759dd-0fce-4f53-969f-3ed0c1a66f2806bd9169-60ce-4847-a2a3-30749ad2b8382019-11-24T17:09:32Z2019-11-26T17:09:32Zb2019-02-02UkVEQUNURUQ=", + "Date" : "Mon, 25 Nov 2019 17:09:33 GMT", + "x-ms-client-request-id" : "756cdd31-d044-4410-95f5-03d770ce4703", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestcontaineruserdelegation0715539637c65f78?include=&restype=container&comp=list&sv=2019-02-02&se=2019-11-26T17%3A09%3A32Z&skoid=c4f48289-bb84-4086-b250-6f94a8f64cee&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2019-11-24T17%3A09%3A32Z&ske=2019-11-26T17%3A09%3A32Z&sks=b&skv=2019-02-02&sr=c&sp=racwdl&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "9d5e9ed0-76a8-4f49-9fa6-50e168a93d11" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a24fd-a01e-0020-76b3-a3e99c000000", + "Body" : "javablobnetworktestcontaineruserdelegation1670526fc60bdMon, 25 Nov 2019 17:09:32 GMTMon, 25 Nov 2019 17:09:32 GMT0x8D771CA3DA4BACC7application/octet-streamwh+Wm18D0z1D4E+PE252gg==BlockBlobHottrueunlockedavailabletrue", + "Date" : "Mon, 25 Nov 2019 17:09:33 GMT", + "x-ms-client-request-id" : "9d5e9ed0-76a8-4f49-9fa6-50e168a93d11", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcnetworktestcontaineruserdelegation&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "cc6b24df-eae3-457d-a128-d044b2d0dcc0" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "d921dd8c-401e-0028-1ab3-a3f393000000", + "Body" : "jtcnetworktestcontaineruserdelegationjtcnetworktestcontaineruserdelegation0715539637c65f78Mon, 25 Nov 2019 17:09:32 GMT\"0x8D771CA3D969CD1\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:33 GMT", + "x-ms-client-request-id" : "cc6b24df-eae3-457d-a128-d044b2d0dcc0", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcnetworktestcontaineruserdelegation0715539637c65f78?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "6f3c150e-1e30-4347-bb7c-de8cb5807760" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "329a24ff-a01e-0020-77b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:33 GMT", + "x-ms-client-request-id" : "6f3c150e-1e30-4347-bb7c-de8cb5807760" + }, + "Exception" : null + } ], + "variables" : [ "jtcnetworktestcontaineruserdelegation0715539637c65f78", "javablobnetworktestcontaineruserdelegation1670526fc60bd", "2019-11-25T17:09:32.746616Z", "2019-11-25T17:09:32.747615500Z", "2019-11-25T17:09:32.747615500Z", "c4f48289-bb84-4086-b250-6f94a8f64cee", "72f988bf-86f1-41af-91ab-2d7cd011db47" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsservicesassignaturevaluesnetworktestcontainer.json b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsservicesassignaturevaluesnetworktestcontainer.json new file mode 100644 index 000000000000..7f79fea04c1f --- /dev/null +++ b/sdk/storage/azure-storage-blob/src/test/resources/session-records/SasClientTestsservicesassignaturevaluesnetworktestcontainer.json @@ -0,0 +1,154 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcservicesassignaturevaluesnetworktestcontainer0249587958?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "f6512891-e5f8-47d1-9485-8fcf7c48fa5e" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA3AE1C274", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:28 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "329a23fd-a01e-0020-13b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:27 GMT", + "x-ms-client-request-id" : "f6512891-e5f8-47d1-9485-8fcf7c48fa5e" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcservicesassignaturevaluesnetworktestcontainer0249587958/javablobservicesassignaturevaluesnetworktestcontainer113162b5", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "611f938d-968f-4a91-864a-fc9bb862e9a7", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-content-crc64" : "6RYQPwaVsyQ=", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:28 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Mon, 25 Nov 2019 17:09:27 GMT", + "Content-MD5" : "wh+Wm18D0z1D4E+PE252gg==", + "ETag" : "0x8D771CA3AEF5E57", + "Content-Length" : "0", + "x-ms-request-id" : "d921dced-401e-0028-14b3-a3f393000000", + "x-ms-client-request-id" : "611f938d-968f-4a91-864a-fc9bb862e9a7" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gapradev.blob.core.windows.net/jtcservicesassignaturevaluesnetworktestcontainer0249587958?restype=container&comp=acl", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "22080f30-20b6-4858-9d77-545a366c2404", + "Content-Type" : "application/xml; charset=utf-8" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D771CA3B001454", + "Last-Modified" : "Mon, 25 Nov 2019 17:09:28 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a2402-a01e-0020-17b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:27 GMT", + "x-ms-client-request-id" : "22080f30-20b6-4858-9d77-545a366c2404" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net/jtcservicesassignaturevaluesnetworktestcontainer0249587958?include=&restype=container&comp=list&sv=2019-02-02&si=0000&sr=c&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "3d64c283-d111-457b-8969-6214cae106f3" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "d921dcf0-401e-0028-17b3-a3f393000000", + "Body" : "javablobservicesassignaturevaluesnetworktestcontainer113162b5Mon, 25 Nov 2019 17:09:28 GMTMon, 25 Nov 2019 17:09:28 GMT0x8D771CA3AEF5E577application/octet-streamwh+Wm18D0z1D4E+PE252gg==BlockBlobHottrueunlockedavailabletrue", + "Date" : "Mon, 25 Nov 2019 17:09:27 GMT", + "x-ms-client-request-id" : "3d64c283-d111-457b-8969-6214cae106f3", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net/jtcservicesassignaturevaluesnetworktestcontainer0249587958?include=&restype=container&comp=list&sv=2019-02-02&se=2019-11-26T17%3A09%3A28Z&sr=c&sp=racwdl&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "1275df9c-6fe2-4bf2-b5ce-5da41aaf40da" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "329a240b-a01e-0020-1eb3-a3e99c000000", + "Body" : "javablobservicesassignaturevaluesnetworktestcontainer113162b5Mon, 25 Nov 2019 17:09:28 GMTMon, 25 Nov 2019 17:09:28 GMT0x8D771CA3AEF5E577application/octet-streamwh+Wm18D0z1D4E+PE252gg==BlockBlobHottrueunlockedavailabletrue", + "Date" : "Mon, 25 Nov 2019 17:09:27 GMT", + "x-ms-client-request-id" : "1275df9c-6fe2-4bf2-b5ce-5da41aaf40da", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gapradev.blob.core.windows.net?prefix=jtcservicesassignaturevaluesnetworktestcontainer&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "8cd3bd90-4d5c-467b-8fca-74f903153378" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "d921dcf8-401e-0028-1db3-a3f393000000", + "Body" : "jtcservicesassignaturevaluesnetworktestcontainerjtcservicesassignaturevaluesnetworktestcontainer0249587958Mon, 25 Nov 2019 17:09:28 GMT\"0x8D771CA3B001454\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 25 Nov 2019 17:09:27 GMT", + "x-ms-client-request-id" : "8cd3bd90-4d5c-467b-8fca-74f903153378", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gapradev.blob.core.windows.net/jtcservicesassignaturevaluesnetworktestcontainer0249587958?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 11.0.4; Windows 10 10.0", + "x-ms-client-request-id" : "71a3b729-6bef-4c5a-bf74-aefe7470d858" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "329a240f-a01e-0020-22b3-a3e99c000000", + "Date" : "Mon, 25 Nov 2019 17:09:27 GMT", + "x-ms-client-request-id" : "71a3b729-6bef-4c5a-bf74-aefe7470d858" + }, + "Exception" : null + } ], + "variables" : [ "jtcservicesassignaturevaluesnetworktestcontainer0249587958", "javablobservicesassignaturevaluesnetworktestcontainer113162b5", "2019-11-25T17:09:28.210051100Z", "2019-11-25T17:09:28.315019800Z" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasPermission.java b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasPermission.java index 609db4b013ce..b7fcbb2104e6 100644 --- a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasPermission.java +++ b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasPermission.java @@ -11,7 +11,7 @@ * This is a helper class to construct a string representing the permissions granted by an Account SAS. Setting a value * to true means that any SAS which uses these permissions will grant permissions for that operation. Once all the * values are set, this should be serialized with toString and set as the permissions field on - * {@link AccountSasSignatureValues#setPermissions(AccountSasPermission) AccountSasSignatureValues}. + * {@link AccountSasSignatureValues AccountSasSignatureValues}. * *

* It is possible to construct the permissions string without this class, but the order of the permissions is particular diff --git a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasQueryParameters.java b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasQueryParameters.java index 080d4cffca4c..66ecfc39c8c3 100644 --- a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasQueryParameters.java +++ b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasQueryParameters.java @@ -14,7 +14,10 @@ * appended to a URL directly (though caution should be taken here in case there are existing query parameters, which * might affect the appropriate means of appending these query parameters). NOTE: Instances of this class are immutable * to ensure thread safety. + * @deprecated Please use the generate*Sas method on the desired service client after initializing + * {@link AccountSasSignatureValues}. */ +@Deprecated public final class AccountSasQueryParameters extends BaseSasQueryParameters { private final String services; @@ -80,6 +83,8 @@ public String getResourceTypes() { * Encodes all SAS query parameters into a string that can be appended to a URL. * * @return A {@code String} representing all SAS query parameters. + * @deprecated Please use the generate*Sas method on the desired service client after initializing + * {@link AccountSasSignatureValues}. */ @Deprecated public String encode() { From b4adb506356939a5259a6035786a403a9eb6a5b5 Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Mon, 25 Nov 2019 10:29:27 -0800 Subject: [PATCH 04/23] Added more code snippets and comments --- .../azure/storage/blob/BlobAsyncClient.java | 8 +++ .../com/azure/storage/blob/BlobClient.java | 8 +++ .../blob/BlobContainerAsyncClient.java | 16 +++--- .../storage/blob/BlobContainerClient.java | 8 +++ .../implementation/util/BlobSasImplUtil.java | 10 ++-- .../blob/specialized/BlobAsyncClientBase.java | 53 ++++++++++++++----- .../blob/specialized/BlobClientBase.java | 53 ++++++++++++++----- .../BlobAsyncClientJavaDocCodeSnippets.java | 29 ++++++++++ .../blob/BlobClientJavaDocCodeSnippets.java | 31 +++++++++++ ...ntainerAsyncClientJavaDocCodeSnippets.java | 30 +++++++++++ ...lobContainerClientJavaDocCodeSnippets.java | 30 +++++++++++ ...lobAsyncClientBaseJavaDocCodeSnippets.java | 30 +++++++++++ .../BlobClientBaseJavaDocCodeSnippets.java | 30 +++++++++++ .../implementation/AccountSasImplUtil.java | 8 +++ .../common/implementation/SasImplUtils.java | 8 +++ .../implementation/StorageImplUtils.java | 3 -- .../common/sas/AccountSasSignatureValues.java | 19 +++---- 17 files changed, 324 insertions(+), 50 deletions(-) diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobAsyncClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobAsyncClient.java index ff4e32bee6a4..203e7b832d4d 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobAsyncClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobAsyncClient.java @@ -560,6 +560,10 @@ public Mono uploadFromFile(String filePath, ParallelTransferOptions parall * {@link BlobServiceSasSignatureValues}. * @see BlobServiceSasSignatureValues for more information on how to construct a user delegation SAS. * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.blob.BlobAsyncClient.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey} + * * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} * @param userDelegationKey {@link UserDelegationKey} * @@ -575,6 +579,10 @@ public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServic * Generates a service sas for the blob using the specified {@link BlobServiceSasSignatureValues} * @see BlobServiceSasSignatureValues for more information on how to construct a service SAS. * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.blob.BlobAsyncClient.generateSas#BlobServiceSasSignatureValues} + * * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} * * @return A {@code String} representing all SAS query parameters. diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobClient.java index 96a60a895b5a..c13b8058965b 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobClient.java @@ -185,6 +185,10 @@ public void uploadFromFile(String filePath, ParallelTransferOptions parallelTran * {@link BlobServiceSasSignatureValues}. * @see BlobServiceSasSignatureValues for more information on how to construct a user delegation SAS. * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.blob.BlobClient.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey} + * * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} * @param userDelegationKey {@link UserDelegationKey} * @@ -199,6 +203,10 @@ public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServic * Generates a service sas for the blob using the specified {@link BlobServiceSasSignatureValues} * @see BlobServiceSasSignatureValues for more information on how to construct a service SAS. * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.blob.BlobClient.generateSas#BlobServiceSasSignatureValues} + * * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} * * @return A {@code String} representing all SAS query parameters. diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java index 74f34e5821ee..2ed3cd08948d 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java @@ -82,14 +82,6 @@ public final class BlobContainerAsyncClient { private final ClientLogger logger = new ClientLogger(BlobContainerAsyncClient.class); private final AzureBlobStorageImpl azureBlobStorage; - /** - * Generates a service sas for the blob using the specified {@link BlobServiceSasSignatureValues} - * @see BlobServiceSasSignatureValues for more information on how to construct a service SAS. - * - * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} - * - * @return A {@code String} representing all SAS query parameters. - */ private final String accountName; private final String containerName; private final BlobServiceVersion serviceVersion; @@ -917,6 +909,10 @@ Mono> getAccountInfoWithResponse(Context context) { * {@link BlobServiceSasSignatureValues}. * @see BlobServiceSasSignatureValues for more information on how to construct a user delegation SAS. * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.blob.BlobContainerAsyncClient.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey} + * * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} * @param userDelegationKey {@link UserDelegationKey} * @@ -932,6 +928,10 @@ public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServic * Generates a service sas for the container using the specified {@link BlobServiceSasSignatureValues} * @see BlobServiceSasSignatureValues for more information on how to construct a service SAS. * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.blob.BlobContainerAsyncClient.generateSas#BlobServiceSasSignatureValues} + * * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} * * @return A {@code String} representing all SAS query parameters. diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerClient.java index 112d1d084b70..5cd060168504 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerClient.java @@ -560,6 +560,10 @@ public Response getAccountInfoWithResponse(Duration timeout, * {@link BlobServiceSasSignatureValues}. * @see BlobServiceSasSignatureValues for more information on how to construct a user delegation SAS. * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.blob.BlobContainerClient.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey} + * * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} * @param userDelegationKey {@link UserDelegationKey} * @@ -574,6 +578,10 @@ public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServic * Generates a service sas for the container using the specified {@link BlobServiceSasSignatureValues} * @see BlobServiceSasSignatureValues for more information on how to construct a service SAS. * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.blob.BlobContainerClient.generateSas#BlobServiceSasSignatureValues} + * * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} * * @return A {@code String} representing all SAS query parameters. diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/implementation/util/BlobSasImplUtil.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/implementation/util/BlobSasImplUtil.java index 07beaee1e321..e0805b945c2d 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/implementation/util/BlobSasImplUtil.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/implementation/util/BlobSasImplUtil.java @@ -9,22 +9,24 @@ import com.azure.storage.blob.models.UserDelegationKey; import com.azure.storage.blob.sas.BlobContainerSasPermission; import com.azure.storage.blob.sas.BlobSasPermission; -import com.azure.storage.blob.sas.BlobServiceSasQueryParameters; import com.azure.storage.blob.sas.BlobServiceSasSignatureValues; import com.azure.storage.common.StorageSharedKeyCredential; -import com.azure.storage.common.Utility; import com.azure.storage.common.implementation.Constants; import com.azure.storage.common.implementation.StorageImplUtils; import com.azure.storage.common.sas.SasIpRange; import com.azure.storage.common.sas.SasProtocol; import java.time.OffsetDateTime; -import java.util.Map; import java.util.Objects; import static com.azure.storage.common.implementation.SasImplUtils.formatQueryParameterDate; import static com.azure.storage.common.implementation.SasImplUtils.tryAppendQueryParameter; +/** + * This class provides helper methods for common blob service sas patterns. + * + * RESERVED FOR INTERNAL USE. + */ public class BlobSasImplUtil { /** * The SAS blob constant. @@ -41,7 +43,7 @@ public class BlobSasImplUtil { */ private static final String SAS_CONTAINER_CONSTANT = "c"; - private final ClientLogger logger = new ClientLogger(BlobServiceSasSignatureValues.class); + private final ClientLogger logger = new ClientLogger(BlobSasImplUtil.class); private String version; diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java index 81b5705756d6..acc17efe8632 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java @@ -128,19 +128,6 @@ protected BlobAsyncClientBase(HttpPipeline pipeline, String url, BlobServiceVers this.customerProvidedKey = customerProvidedKey; } - public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues, - UserDelegationKey userDelegationKey) { - return getBlobAsyncClient().generateUserDelegationSas(blobServiceSasSignatureValues, userDelegationKey); - } - - public String generateSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues) { - return getBlobAsyncClient().generateSas(blobServiceSasSignatureValues); - } - - private BlobAsyncClient getBlobAsyncClient() { - return prepareBuilder().buildAsyncClient(); - } - BlobClientBuilder prepareBuilder() { BlobClientBuilder builder = new BlobClientBuilder() .pipeline(getHttpPipeline()) @@ -1417,4 +1404,44 @@ Mono> getAccountInfoWithResponse(Context context) { return new SimpleResponse<>(rb, new StorageAccountInfo(hd.getSkuName(), hd.getAccountKind())); }); } + + /** + * Generates a user delegation sas for the blob using the specified + * {@link BlobServiceSasSignatureValues}. + * @see BlobServiceSasSignatureValues for more information on how to construct a user delegation SAS. + * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.blob.specialized.BlobAsyncClientBase.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey} + * + * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} + * @param userDelegationKey {@link UserDelegationKey} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues, + UserDelegationKey userDelegationKey) { + return getBlobAsyncClient().generateUserDelegationSas(blobServiceSasSignatureValues, userDelegationKey); + } + + /** + * Generates a service sas for the blob using the specified {@link BlobServiceSasSignatureValues} + * @see BlobServiceSasSignatureValues for more information on how to construct a service SAS. + * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.blob.specialized.BlobAsyncClientBase.generateSas#BlobServiceSasSignatureValues} + * + * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues) { + return getBlobAsyncClient().generateSas(blobServiceSasSignatureValues); + } + + private BlobAsyncClient getBlobAsyncClient() { + return prepareBuilder().buildAsyncClient(); + } + } diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobClientBase.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobClientBase.java index e49466f846ae..5c628603d974 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobClientBase.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobClientBase.java @@ -64,19 +64,6 @@ protected BlobClientBase(BlobAsyncClientBase client) { this.client = client; } - public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues, - UserDelegationKey userDelegationKey) { - return getBlobClient().generateUserDelegationSas(blobServiceSasSignatureValues, userDelegationKey); - } - - public String generateSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues) { - return getBlobClient().generateSas(blobServiceSasSignatureValues); - } - - private BlobClient getBlobClient() { - return this.client.prepareBuilder().buildClient(); - } - /** * Creates a new {@link BlobClientBase} linked to the {@code snapshot} of this blob resource. * @@ -814,4 +801,44 @@ public Response getAccountInfoWithResponse(Duration timeout, return blockWithOptionalTimeout(response, timeout); } + + + /** + * Generates a user delegation sas for the blob using the specified + * {@link BlobServiceSasSignatureValues}. + * @see BlobServiceSasSignatureValues for more information on how to construct a user delegation SAS. + * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.blob.specialized.BlobClientBase.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey} + * + * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} + * @param userDelegationKey {@link UserDelegationKey} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues, + UserDelegationKey userDelegationKey) { + return getBlobClient().generateUserDelegationSas(blobServiceSasSignatureValues, userDelegationKey); + } + + /** + * Generates a service sas for the blob using the specified {@link BlobServiceSasSignatureValues} + * @see BlobServiceSasSignatureValues for more information on how to construct a service SAS. + * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.blob.specialized.BlobClientBase.generateSas#BlobServiceSasSignatureValues} + * + * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues) { + return getBlobClient().generateSas(blobServiceSasSignatureValues); + } + + private BlobClient getBlobClient() { + return this.client.prepareBuilder().buildClient(); + } } diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobAsyncClientJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobAsyncClientJavaDocCodeSnippets.java index 26a0fa3c1399..3a2cd78d1567 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobAsyncClientJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobAsyncClientJavaDocCodeSnippets.java @@ -12,6 +12,9 @@ import com.azure.storage.blob.models.DownloadRetryOptions; import com.azure.storage.blob.models.ParallelTransferOptions; import com.azure.storage.blob.models.RehydratePriority; +import com.azure.storage.blob.models.UserDelegationKey; +import com.azure.storage.blob.sas.BlobSasPermission; +import com.azure.storage.blob.sas.BlobServiceSasSignatureValues; import com.azure.storage.blob.specialized.BlobAsyncClientBase; import reactor.core.publisher.Flux; @@ -40,6 +43,7 @@ public class BlobAsyncClientJavaDocCodeSnippets { private int blockSize = 50; private int numBuffers = 2; private String filePath = "filePath"; + private UserDelegationKey userDelegationKey; /** * Code snippet for {@link BlobAsyncClient#exists()} @@ -506,4 +510,29 @@ public void uploadFromFile2() { // END: com.azure.storage.blob.BlobAsyncClient.uploadFromFile#String-ParallelTransferOptions-BlobHttpHeaders-Map-AccessTier-BlobRequestConditions } + /** + * Code snippet for {@link BlobAsyncClient#generateUserDelegationSas(BlobServiceSasSignatureValues, UserDelegationKey)} + * and {@link BlobAsyncClient#generateSas(BlobServiceSasSignatureValues)} + */ + public void generateSas() { + // BEGIN: com.azure.storage.blob.BlobAsyncClient.generateSas#BlobServiceSasSignatureValues + OffsetDateTime expiryTime = OffsetDateTime.now().plusDays(1); + BlobSasPermission permission = new BlobSasPermission().setReadPermission(true); + + BlobServiceSasSignatureValues values = new BlobServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + client.generateSas(values); // Client must be authenticated via StorageSharedKeyCredential + // END: com.azure.storage.blob.BlobAsyncClient.generateSas#BlobServiceSasSignatureValues + + // BEGIN: com.azure.storage.blob.BlobAsyncClient.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey + OffsetDateTime myExpiryTime = OffsetDateTime.now().plusDays(1); + BlobSasPermission myPermission = new BlobSasPermission().setReadPermission(true); + + BlobServiceSasSignatureValues myValues = new BlobServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + client.generateUserDelegationSas(values, userDelegationKey); + // END: com.azure.storage.blob.BlobAsyncClient.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey + } } diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobClientJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobClientJavaDocCodeSnippets.java index 41a89745bf91..2679d2be3ee2 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobClientJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobClientJavaDocCodeSnippets.java @@ -15,6 +15,9 @@ import com.azure.storage.blob.models.ParallelTransferOptions; import com.azure.storage.blob.models.RehydratePriority; import com.azure.storage.blob.models.StorageAccountInfo; +import com.azure.storage.blob.models.UserDelegationKey; +import com.azure.storage.blob.sas.BlobSasPermission; +import com.azure.storage.blob.sas.BlobServiceSasSignatureValues; import com.azure.storage.blob.specialized.BlobClientBase; import com.azure.storage.common.implementation.Constants; @@ -44,6 +47,7 @@ public class BlobClientJavaDocCodeSnippets { private String value1 = "val1"; private String value2 = "val2"; private String filePath = "filePath"; + private UserDelegationKey userDelegationKey; /** * Code snippets for {@link BlobClient#exists()} @@ -427,4 +431,31 @@ public void uploadFromFile2() throws IOException { } // END: com.azure.storage.blob.BlobClient.uploadFromFile#String-ParallelTransferOptions-BlobHttpHeaders-Map-AccessTier-BlobRequestConditions-Duration } + + + /** + * Code snippet for {@link BlobClient#generateUserDelegationSas(BlobServiceSasSignatureValues, UserDelegationKey)} + * and {@link BlobClient#generateSas(BlobServiceSasSignatureValues)} + */ + public void generateSas() { + // BEGIN: com.azure.storage.blob.BlobClient.generateSas#BlobServiceSasSignatureValues + OffsetDateTime expiryTime = OffsetDateTime.now().plusDays(1); + BlobSasPermission permission = new BlobSasPermission().setReadPermission(true); + + BlobServiceSasSignatureValues values = new BlobServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + client.generateSas(values); // Client must be authenticated via StorageSharedKeyCredential + // END: com.azure.storage.blob.BlobClient.generateSas#BlobServiceSasSignatureValues + + // BEGIN: com.azure.storage.blob.BlobClient.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey + OffsetDateTime myExpiryTime = OffsetDateTime.now().plusDays(1); + BlobSasPermission myPermission = new BlobSasPermission().setReadPermission(true); + + BlobServiceSasSignatureValues myValues = new BlobServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + client.generateUserDelegationSas(values, userDelegationKey); + // END: com.azure.storage.blob.BlobClient.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey + } } diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerAsyncClientJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerAsyncClientJavaDocCodeSnippets.java index adecfd3cf357..66eb22b8c290 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerAsyncClientJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerAsyncClientJavaDocCodeSnippets.java @@ -10,6 +10,9 @@ import com.azure.storage.blob.models.BlobSignedIdentifier; import com.azure.storage.blob.models.ListBlobsOptions; import com.azure.storage.blob.models.PublicAccessType; +import com.azure.storage.blob.models.UserDelegationKey; +import com.azure.storage.blob.sas.BlobContainerSasPermission; +import com.azure.storage.blob.sas.BlobServiceSasSignatureValues; import java.time.Duration; import java.time.OffsetDateTime; @@ -29,6 +32,7 @@ public class BlobContainerAsyncClientJavaDocCodeSnippets { private String leaseId = "leaseId"; private String proposedId = "proposedId"; private int leaseDuration = (int) Duration.ofSeconds(30).getSeconds(); + private UserDelegationKey userDelegationKey; /** * Code snippet for {@link BlobContainerAsyncClient#getBlobAsyncClient(String)} @@ -343,4 +347,30 @@ public void getContainerName() { System.out.println("The name of the blob is " + containerName); // END: com.azure.storage.blob.BlobContainerAsyncClient.getBlobContainerName } + + /** + * Code snippet for {@link BlobContainerAsyncClient#generateUserDelegationSas(BlobServiceSasSignatureValues, UserDelegationKey)} + * and {@link BlobContainerAsyncClient#generateSas(BlobServiceSasSignatureValues)} + */ + public void generateSas() { + // BEGIN: com.azure.storage.blob.BlobContainerAsyncClient.generateSas#BlobServiceSasSignatureValues + OffsetDateTime expiryTime = OffsetDateTime.now().plusDays(1); + BlobContainerSasPermission permission = new BlobContainerSasPermission().setReadPermission(true); + + BlobServiceSasSignatureValues values = new BlobServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + client.generateSas(values); // Client must be authenticated via StorageSharedKeyCredential + // END: com.azure.storage.blob.BlobContainerAsyncClient.generateSas#BlobServiceSasSignatureValues + + // BEGIN: com.azure.storage.blob.BlobContainerAsyncClient.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey + OffsetDateTime myExpiryTime = OffsetDateTime.now().plusDays(1); + BlobContainerSasPermission myPermission = new BlobContainerSasPermission().setReadPermission(true); + + BlobServiceSasSignatureValues myValues = new BlobServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + client.generateUserDelegationSas(values, userDelegationKey); + // END: com.azure.storage.blob.BlobContainerAsyncClient.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey + } } diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerClientJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerClientJavaDocCodeSnippets.java index 30dedd456747..b901d1623225 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerClientJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerClientJavaDocCodeSnippets.java @@ -15,6 +15,9 @@ import com.azure.storage.blob.models.ListBlobsOptions; import com.azure.storage.blob.models.PublicAccessType; import com.azure.storage.blob.models.StorageAccountInfo; +import com.azure.storage.blob.models.UserDelegationKey; +import com.azure.storage.blob.sas.BlobContainerSasPermission; +import com.azure.storage.blob.sas.BlobServiceSasSignatureValues; import java.time.Duration; import java.time.OffsetDateTime; @@ -32,6 +35,7 @@ public class BlobContainerClientJavaDocCodeSnippets { private String proposedId = "proposedId"; private int leaseDuration = (int) Duration.ofSeconds(30).getSeconds(); private Duration timeout = Duration.ofSeconds(30); + private UserDelegationKey userDelegationKey; /** * Code snippet for {@link BlobContainerClient#getBlobClient(String)} @@ -360,4 +364,30 @@ public void getContainerName() { System.out.println("The name of the blob is " + containerName); // END: com.azure.storage.blob.BlobContainerClient.getBlobContainerName } + + /** + * Code snippet for {@link BlobContainerClient#generateUserDelegationSas(BlobServiceSasSignatureValues, UserDelegationKey)} + * and {@link BlobContainerClient#generateSas(BlobServiceSasSignatureValues)} + */ + public void generateSas() { + // BEGIN: com.azure.storage.blob.BlobContainerClient.generateSas#BlobServiceSasSignatureValues + OffsetDateTime expiryTime = OffsetDateTime.now().plusDays(1); + BlobContainerSasPermission permission = new BlobContainerSasPermission().setReadPermission(true); + + BlobServiceSasSignatureValues values = new BlobServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + client.generateSas(values); // Client must be authenticated via StorageSharedKeyCredential + // END: com.azure.storage.blob.BlobContainerClient.generateSas#BlobServiceSasSignatureValues + + // BEGIN: com.azure.storage.blob.BlobContainerClient.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey + OffsetDateTime myExpiryTime = OffsetDateTime.now().plusDays(1); + BlobContainerSasPermission myPermission = new BlobContainerSasPermission().setReadPermission(true); + + BlobServiceSasSignatureValues myValues = new BlobServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + client.generateUserDelegationSas(values, userDelegationKey); + // END: com.azure.storage.blob.BlobContainerClient.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey + } } diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobAsyncClientBaseJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobAsyncClientBaseJavaDocCodeSnippets.java index 88686e5c7278..ecb673d81817 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobAsyncClientBaseJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobAsyncClientBaseJavaDocCodeSnippets.java @@ -15,6 +15,9 @@ import com.azure.storage.blob.models.DownloadRetryOptions; import com.azure.storage.blob.models.ParallelTransferOptions; import com.azure.storage.blob.models.RehydratePriority; +import com.azure.storage.blob.models.UserDelegationKey; +import com.azure.storage.blob.sas.BlobSasPermission; +import com.azure.storage.blob.sas.BlobServiceSasSignatureValues; import reactor.core.publisher.Mono; import java.io.ByteArrayOutputStream; @@ -36,6 +39,7 @@ public class BlobAsyncClientBaseJavaDocCodeSnippets { private String copyId = "copyId"; private String url = "https://sample.com"; private String file = "file"; + private UserDelegationKey userDelegationKey; /** * Code snippet for {@link BlobAsyncClientBase#exists()} @@ -420,4 +424,30 @@ public void getAccountInfoWithResponseCodeSnippets() { response.getValue().getAccountKind(), response.getValue().getSkuName())); // END: com.azure.storage.blob.specialized.BlobAsyncClientBase.getAccountInfoWithResponse } + + /** + * Code snippet for {@link BlobAsyncClientBase#generateUserDelegationSas(BlobServiceSasSignatureValues, UserDelegationKey)} + * and {@link BlobAsyncClientBase#generateSas(BlobServiceSasSignatureValues)} + */ + public void generateSas() { + // BEGIN: com.azure.storage.blob.specialized.BlobAsyncClientBase.generateSas#BlobServiceSasSignatureValues + OffsetDateTime expiryTime = OffsetDateTime.now().plusDays(1); + BlobSasPermission permission = new BlobSasPermission().setReadPermission(true); + + BlobServiceSasSignatureValues values = new BlobServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + client.generateSas(values); // Client must be authenticated via StorageSharedKeyCredential + // END: com.azure.storage.blob.specialized.BlobAsyncClientBase.generateSas#BlobServiceSasSignatureValues + + // BEGIN: com.azure.storage.blob.specialized.BlobAsyncClientBase.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey + OffsetDateTime myExpiryTime = OffsetDateTime.now().plusDays(1); + BlobSasPermission myPermission = new BlobSasPermission().setReadPermission(true); + + BlobServiceSasSignatureValues myValues = new BlobServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + client.generateUserDelegationSas(values, userDelegationKey); + // END: com.azure.storage.blob.specialized.BlobAsyncClientBase.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey + } } diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobClientBaseJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobClientBaseJavaDocCodeSnippets.java index 7dfa2e03e0c4..be7acb599963 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobClientBaseJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobClientBaseJavaDocCodeSnippets.java @@ -19,6 +19,9 @@ import com.azure.storage.blob.models.ParallelTransferOptions; import com.azure.storage.blob.models.RehydratePriority; import com.azure.storage.blob.models.StorageAccountInfo; +import com.azure.storage.blob.models.UserDelegationKey; +import com.azure.storage.blob.sas.BlobSasPermission; +import com.azure.storage.blob.sas.BlobServiceSasSignatureValues; import com.azure.storage.common.implementation.Constants; import java.io.ByteArrayOutputStream; @@ -44,6 +47,7 @@ public class BlobClientBaseJavaDocCodeSnippets { private String key2 = "key2"; private String value1 = "val1"; private String value2 = "val2"; + private UserDelegationKey userDelegationKey; /** * Code snippets for {@link BlobClientBase#exists()} @@ -375,4 +379,30 @@ public void getAccountInfoWithResponseCodeSnippets() { System.out.printf("Account Kind: %s, SKU: %s%n", accountInfo.getAccountKind(), accountInfo.getSkuName()); // END: com.azure.storage.blob.specialized.BlobClientBase.getAccountInfoWithResponse#Duration-Context } + + /** + * Code snippet for {@link BlobClientBase#generateUserDelegationSas(BlobServiceSasSignatureValues, UserDelegationKey)} + * and {@link BlobClientBase#generateSas(BlobServiceSasSignatureValues)} + */ + public void generateSas() { + // BEGIN: com.azure.storage.blob.specialized.BlobClientBase.generateSas#BlobServiceSasSignatureValues + OffsetDateTime expiryTime = OffsetDateTime.now().plusDays(1); + BlobSasPermission permission = new BlobSasPermission().setReadPermission(true); + + BlobServiceSasSignatureValues values = new BlobServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + client.generateSas(values); // Client must be authenticated via StorageSharedKeyCredential + // END: com.azure.storage.blob.specialized.BlobClientBase.generateSas#BlobServiceSasSignatureValues + + // BEGIN: com.azure.storage.blob.specialized.BlobClientBase.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey + OffsetDateTime myExpiryTime = OffsetDateTime.now().plusDays(1); + BlobSasPermission myPermission = new BlobSasPermission().setReadPermission(true); + + BlobServiceSasSignatureValues myValues = new BlobServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + client.generateUserDelegationSas(values, userDelegationKey); + // END: com.azure.storage.blob.specialized.BlobClientBase.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey + } } diff --git a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/AccountSasImplUtil.java b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/AccountSasImplUtil.java index ed405430de95..2f2060ba5fc0 100644 --- a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/AccountSasImplUtil.java +++ b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/AccountSasImplUtil.java @@ -1,3 +1,6 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. + package com.azure.storage.common.implementation; import com.azure.core.util.CoreUtils; @@ -12,6 +15,11 @@ import static com.azure.storage.common.implementation.SasImplUtils.formatQueryParameterDate; import static com.azure.storage.common.implementation.SasImplUtils.tryAppendQueryParameter; +/** + * This class provides helper methods for common account sas patterns. + * + * RESERVED FOR INTERNAL USE. + */ public class AccountSasImplUtil { private String version; diff --git a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/SasImplUtils.java b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/SasImplUtils.java index fc0241ae7527..a6dc9e2af731 100644 --- a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/SasImplUtils.java +++ b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/SasImplUtils.java @@ -1,3 +1,6 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. + package com.azure.storage.common.implementation; import com.azure.core.http.HttpPipeline; @@ -7,6 +10,11 @@ import java.time.OffsetDateTime; +/** + * This class provides helper methods for sas. + * + * RESERVED FOR INTERNAL USE. + */ public class SasImplUtils { /** * Extracts the {@link StorageSharedKeyCredential} from a {@link HttpPipeline} diff --git a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/StorageImplUtils.java b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/StorageImplUtils.java index 7dbdd994cd6d..605c74c5dc9b 100644 --- a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/StorageImplUtils.java +++ b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/StorageImplUtils.java @@ -3,11 +3,9 @@ package com.azure.storage.common.implementation; -import com.azure.core.http.HttpPipeline; import com.azure.core.util.UrlBuilder; import com.azure.core.util.CoreUtils; import com.azure.core.util.logging.ClientLogger; -import com.azure.storage.common.StorageSharedKeyCredential; import com.azure.storage.common.Utility; import java.net.MalformedURLException; import java.net.URL; @@ -21,7 +19,6 @@ import java.util.TreeMap; import java.util.function.Function; -import com.azure.storage.common.policy.StorageSharedKeyCredentialPolicy; import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; diff --git a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasSignatureValues.java b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasSignatureValues.java index 45ee5fa9e817..ad792c4cc91f 100644 --- a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasSignatureValues.java +++ b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasSignatureValues.java @@ -38,7 +38,8 @@ public final class AccountSasSignatureValues { /** * Initializes a new {@link AccountSasSignatureValues} object. - * @deprecated Please use {@link #AccountSasSignatureValues(OffsetDateTime, AccountSasPermission, AccountSasService, AccountSasResourceType)} + * @deprecated Please use {@link #AccountSasSignatureValues(OffsetDateTime, AccountSasPermission, AccountSasService, + * AccountSasResourceType)} */ @Deprecated public AccountSasSignatureValues() { @@ -133,8 +134,8 @@ public OffsetDateTime getExpiryTime() { * * @param expiryTime Expiry time to set * @return the updated AccountSasSignatureValues object. - * @deprecated Please use {@link #AccountSasSignatureValues(OffsetDateTime, AccountSasPermission, AccountSasService, AccountSasResourceType)} - * to specify the expiry time. + * @deprecated Please use {@link #AccountSasSignatureValues(OffsetDateTime, AccountSasPermission, AccountSasService, + * AccountSasResourceType)} to specify the expiry time. */ @Deprecated public AccountSasSignatureValues setExpiryTime(OffsetDateTime expiryTime) { @@ -159,8 +160,8 @@ public String getPermissions() { * @param permissions Permissions to set. * @return the updated AccountSasSignatureValues object. * @throws NullPointerException if {@code permissions} is null. - * @deprecated Please use {@link #AccountSasSignatureValues(OffsetDateTime, AccountSasPermission, AccountSasService, AccountSasResourceType)} - * to specify the allowed permissions. + * @deprecated Please use {@link #AccountSasSignatureValues(OffsetDateTime, AccountSasPermission, AccountSasService, + * AccountSasResourceType)} to specify the allowed permissions. */ @Deprecated public AccountSasSignatureValues setPermissions(AccountSasPermission permissions) { @@ -200,8 +201,8 @@ public String getServices() { * * @param services Allowed services string to set * @return the updated AccountSasSignatureValues object. - * @deprecated Please use {@link #AccountSasSignatureValues(OffsetDateTime, AccountSasPermission, AccountSasService, AccountSasResourceType)} - * to specify the services being targeted. + * @deprecated Please use {@link #AccountSasSignatureValues(OffsetDateTime, AccountSasPermission, AccountSasService, + * AccountSasResourceType)} to specify the services being targeted. */ @Deprecated public AccountSasSignatureValues setServices(String services) { @@ -223,8 +224,8 @@ public String getResourceTypes() { * * @param resourceTypes Allowed resource types string to set * @return the updated AccountSasSignatureValues object. - * @deprecated Please use {@link #AccountSasSignatureValues(OffsetDateTime, AccountSasPermission, AccountSasService, AccountSasResourceType)} - * to specify the resource types being targeted. + * @deprecated Please use {@link #AccountSasSignatureValues(OffsetDateTime, AccountSasPermission, AccountSasService, + * AccountSasResourceType)} to specify the resource types being targeted. */ @Deprecated public AccountSasSignatureValues setResourceTypes(String resourceTypes) { From 617c3db2f3f51d3ebfae764001699ea922f5cc48 Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Mon, 25 Nov 2019 11:32:53 -0800 Subject: [PATCH 05/23] fixing test java 11 issue --- sdk/storage/azure-storage-blob/pom.xml | 1 + .../azure/storage/blob/BlobAsyncClientJavaDocCodeSnippets.java | 2 +- .../com/azure/storage/blob/BlobClientJavaDocCodeSnippets.java | 2 +- .../blob/BlobContainerAsyncClientJavaDocCodeSnippets.java | 2 +- .../storage/blob/BlobContainerClientJavaDocCodeSnippets.java | 2 +- .../specialized/BlobAsyncClientBaseJavaDocCodeSnippets.java | 2 +- .../blob/specialized/BlobClientBaseJavaDocCodeSnippets.java | 2 +- 7 files changed, 7 insertions(+), 6 deletions(-) diff --git a/sdk/storage/azure-storage-blob/pom.xml b/sdk/storage/azure-storage-blob/pom.xml index 40d4889566f2..7c89e56b2d52 100644 --- a/sdk/storage/azure-storage-blob/pom.xml +++ b/sdk/storage/azure-storage-blob/pom.xml @@ -269,6 +269,7 @@ --add-opens com.azure.storage.common/com.azure.storage.common.implementation=ALL-UNNAMED --add-opens com.azure.storage.blob/com.azure.storage.blob=ALL-UNNAMED --add-opens com.azure.storage.blob/com.azure.storage.blob.implementation=ALL-UNNAMED + --add-opens com.azure.storage.blob/com.azure.storage.blob.implementation.util=ALL-UNNAMED --add-opens com.azure.storage.blob/com.azure.storage.blob.specialized=ALL-UNNAMED --add-reads com.azure.core=ALL-UNNAMED --add-reads com.azure.core.test=ALL-UNNAMED diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobAsyncClientJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobAsyncClientJavaDocCodeSnippets.java index 3a2cd78d1567..245c28a9449b 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobAsyncClientJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobAsyncClientJavaDocCodeSnippets.java @@ -43,7 +43,7 @@ public class BlobAsyncClientJavaDocCodeSnippets { private int blockSize = 50; private int numBuffers = 2; private String filePath = "filePath"; - private UserDelegationKey userDelegationKey; + private UserDelegationKey userDelegationKey = null; /** * Code snippet for {@link BlobAsyncClient#exists()} diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobClientJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobClientJavaDocCodeSnippets.java index 2679d2be3ee2..615975c6b54f 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobClientJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobClientJavaDocCodeSnippets.java @@ -47,7 +47,7 @@ public class BlobClientJavaDocCodeSnippets { private String value1 = "val1"; private String value2 = "val2"; private String filePath = "filePath"; - private UserDelegationKey userDelegationKey; + private UserDelegationKey userDelegationKey = null; /** * Code snippets for {@link BlobClient#exists()} diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerAsyncClientJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerAsyncClientJavaDocCodeSnippets.java index 66eb22b8c290..3720c7e62eed 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerAsyncClientJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerAsyncClientJavaDocCodeSnippets.java @@ -32,7 +32,7 @@ public class BlobContainerAsyncClientJavaDocCodeSnippets { private String leaseId = "leaseId"; private String proposedId = "proposedId"; private int leaseDuration = (int) Duration.ofSeconds(30).getSeconds(); - private UserDelegationKey userDelegationKey; + private UserDelegationKey userDelegationKey = null; /** * Code snippet for {@link BlobContainerAsyncClient#getBlobAsyncClient(String)} diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerClientJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerClientJavaDocCodeSnippets.java index b901d1623225..156f6c44ac16 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerClientJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerClientJavaDocCodeSnippets.java @@ -35,7 +35,7 @@ public class BlobContainerClientJavaDocCodeSnippets { private String proposedId = "proposedId"; private int leaseDuration = (int) Duration.ofSeconds(30).getSeconds(); private Duration timeout = Duration.ofSeconds(30); - private UserDelegationKey userDelegationKey; + private UserDelegationKey userDelegationKey = null; /** * Code snippet for {@link BlobContainerClient#getBlobClient(String)} diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobAsyncClientBaseJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobAsyncClientBaseJavaDocCodeSnippets.java index ecb673d81817..ac870034dab3 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobAsyncClientBaseJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobAsyncClientBaseJavaDocCodeSnippets.java @@ -39,7 +39,7 @@ public class BlobAsyncClientBaseJavaDocCodeSnippets { private String copyId = "copyId"; private String url = "https://sample.com"; private String file = "file"; - private UserDelegationKey userDelegationKey; + private UserDelegationKey userDelegationKey = null; /** * Code snippet for {@link BlobAsyncClientBase#exists()} diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobClientBaseJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobClientBaseJavaDocCodeSnippets.java index be7acb599963..42313fe3c89d 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobClientBaseJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobClientBaseJavaDocCodeSnippets.java @@ -47,7 +47,7 @@ public class BlobClientBaseJavaDocCodeSnippets { private String key2 = "key2"; private String value1 = "val1"; private String value2 = "val2"; - private UserDelegationKey userDelegationKey; + private UserDelegationKey userDelegationKey = null; /** * Code snippets for {@link BlobClientBase#exists()} From cd2bf81fbc084477dde9e40abb16cea3ae7d2221 Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Mon, 25 Nov 2019 11:44:08 -0800 Subject: [PATCH 06/23] removed unused imports --- .../src/main/java/com/azure/storage/blob/BlobClient.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobClient.java index c3bed69cc99c..4d873e481e29 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobClient.java @@ -5,7 +5,6 @@ import com.azure.core.annotation.ServiceClient; import com.azure.core.util.logging.ClientLogger; -import com.azure.storage.blob.implementation.util.BlobSasImplUtil; import com.azure.storage.blob.models.AccessTier; import com.azure.storage.blob.models.BlobRequestConditions; import com.azure.storage.blob.models.BlobHttpHeaders; @@ -18,7 +17,6 @@ import com.azure.storage.blob.specialized.PageBlobClient; import com.azure.storage.blob.specialized.SpecializedBlobClientBuilder; import com.azure.storage.common.implementation.Constants; -import com.azure.storage.common.implementation.SasImplUtils; import com.azure.storage.common.implementation.StorageImplUtils; import reactor.core.publisher.Mono; From 8db1537ce9f43621cf7e89ef414dd4b6a1c7593a Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Mon, 25 Nov 2019 12:01:12 -0800 Subject: [PATCH 07/23] fixing code snippets --- .../storage/blob/BlobAsyncClientJavaDocCodeSnippets.java | 2 +- .../azure/storage/blob/BlobClientJavaDocCodeSnippets.java | 2 +- .../blob/BlobContainerAsyncClientJavaDocCodeSnippets.java | 2 +- .../blob/BlobContainerClientJavaDocCodeSnippets.java | 2 +- .../com/azure/storage/blob/JavaDocCodeSnippetsHelpers.java | 6 ++++++ .../specialized/BlobAsyncClientBaseJavaDocCodeSnippets.java | 3 ++- .../blob/specialized/BlobClientBaseJavaDocCodeSnippets.java | 3 ++- 7 files changed, 14 insertions(+), 6 deletions(-) diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobAsyncClientJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobAsyncClientJavaDocCodeSnippets.java index 245c28a9449b..af925299744e 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobAsyncClientJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobAsyncClientJavaDocCodeSnippets.java @@ -43,7 +43,7 @@ public class BlobAsyncClientJavaDocCodeSnippets { private int blockSize = 50; private int numBuffers = 2; private String filePath = "filePath"; - private UserDelegationKey userDelegationKey = null; + private UserDelegationKey userDelegationKey = JavaDocCodeSnippetsHelpers.getUserDelegationKey(); /** * Code snippet for {@link BlobAsyncClient#exists()} diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobClientJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobClientJavaDocCodeSnippets.java index 615975c6b54f..5f6e6f3fd64e 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobClientJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobClientJavaDocCodeSnippets.java @@ -47,7 +47,7 @@ public class BlobClientJavaDocCodeSnippets { private String value1 = "val1"; private String value2 = "val2"; private String filePath = "filePath"; - private UserDelegationKey userDelegationKey = null; + private UserDelegationKey userDelegationKey = JavaDocCodeSnippetsHelpers.getUserDelegationKey(); /** * Code snippets for {@link BlobClient#exists()} diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerAsyncClientJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerAsyncClientJavaDocCodeSnippets.java index 3720c7e62eed..5c01f5bb5060 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerAsyncClientJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerAsyncClientJavaDocCodeSnippets.java @@ -32,7 +32,7 @@ public class BlobContainerAsyncClientJavaDocCodeSnippets { private String leaseId = "leaseId"; private String proposedId = "proposedId"; private int leaseDuration = (int) Duration.ofSeconds(30).getSeconds(); - private UserDelegationKey userDelegationKey = null; + private UserDelegationKey userDelegationKey = JavaDocCodeSnippetsHelpers.getUserDelegationKey(); /** * Code snippet for {@link BlobContainerAsyncClient#getBlobAsyncClient(String)} diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerClientJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerClientJavaDocCodeSnippets.java index 156f6c44ac16..0629bc63bf5c 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerClientJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerClientJavaDocCodeSnippets.java @@ -35,7 +35,7 @@ public class BlobContainerClientJavaDocCodeSnippets { private String proposedId = "proposedId"; private int leaseDuration = (int) Duration.ofSeconds(30).getSeconds(); private Duration timeout = Duration.ofSeconds(30); - private UserDelegationKey userDelegationKey = null; + private UserDelegationKey userDelegationKey = JavaDocCodeSnippetsHelpers.getUserDelegationKey(); /** * Code snippet for {@link BlobContainerClient#getBlobClient(String)} diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/JavaDocCodeSnippetsHelpers.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/JavaDocCodeSnippetsHelpers.java index 2523d7b4bcef..04be7ae407b1 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/JavaDocCodeSnippetsHelpers.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/JavaDocCodeSnippetsHelpers.java @@ -3,6 +3,8 @@ package com.azure.storage.blob; +import com.azure.storage.blob.models.UserDelegationKey; + final class JavaDocCodeSnippetsHelpers { static BlobContainerAsyncClient getContainerAsyncClient() { return new BlobContainerClientBuilder().buildAsyncClient(); @@ -27,4 +29,8 @@ static BlobServiceAsyncClient getBlobServiceAsyncClient() { static BlobServiceClient getBlobServiceClient() { return new BlobServiceClientBuilder().buildClient(); } + + static UserDelegationKey getUserDelegationKey() { + return getBlobServiceClient().getUserDelegationKey(null, null); + } } diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobAsyncClientBaseJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobAsyncClientBaseJavaDocCodeSnippets.java index ac870034dab3..9058b8e3cb8a 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobAsyncClientBaseJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobAsyncClientBaseJavaDocCodeSnippets.java @@ -5,6 +5,7 @@ import com.azure.core.http.RequestConditions; import com.azure.core.util.polling.PollerFlux; +import com.azure.storage.blob.BlobServiceClientBuilder; import com.azure.storage.blob.BlobServiceVersion; import com.azure.storage.blob.models.AccessTier; import com.azure.storage.blob.models.BlobCopyInfo; @@ -39,7 +40,7 @@ public class BlobAsyncClientBaseJavaDocCodeSnippets { private String copyId = "copyId"; private String url = "https://sample.com"; private String file = "file"; - private UserDelegationKey userDelegationKey = null; + private UserDelegationKey userDelegationKey = new BlobServiceClientBuilder().buildClient().getUserDelegationKey(null, null); /** * Code snippet for {@link BlobAsyncClientBase#exists()} diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobClientBaseJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobClientBaseJavaDocCodeSnippets.java index 42313fe3c89d..2cd4e3c850d8 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobClientBaseJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobClientBaseJavaDocCodeSnippets.java @@ -8,6 +8,7 @@ import com.azure.core.util.polling.LongRunningOperationStatus; import com.azure.core.util.polling.PollResponse; import com.azure.core.util.polling.SyncPoller; +import com.azure.storage.blob.BlobServiceClientBuilder; import com.azure.storage.blob.models.BlobProperties; import com.azure.storage.blob.models.AccessTier; import com.azure.storage.blob.models.BlobCopyInfo; @@ -47,7 +48,7 @@ public class BlobClientBaseJavaDocCodeSnippets { private String key2 = "key2"; private String value1 = "val1"; private String value2 = "val2"; - private UserDelegationKey userDelegationKey = null; + private UserDelegationKey userDelegationKey = new BlobServiceClientBuilder().buildClient().getUserDelegationKey(null, null); /** * Code snippets for {@link BlobClientBase#exists()} From d2b69ad5e4155ad41cc3c32c0adf6eaf87d08a88 Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Mon, 25 Nov 2019 12:54:48 -0800 Subject: [PATCH 08/23] added code for queue sas --- .../azure/storage/queue/QueueAsyncClient.java | 28 ++++ .../com/azure/storage/queue/QueueClient.java | 29 ++++ .../implementation/util/QueueSasImplUtil.java | 126 ++++++++++++++++++ .../sas/QueueServiceSasQueryParameters.java | 3 + .../sas/QueueServiceSasSignatureValues.java | 43 ++++++ .../queue/QueueAsyncJavaDocCodeSamples.java | 17 +++ .../queue/QueueJavaDocCodeSamples.java | 17 +++ 7 files changed, 263 insertions(+) create mode 100644 sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/implementation/util/QueueSasImplUtil.java diff --git a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueAsyncClient.java b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueAsyncClient.java index 4f584ad25693..6694eac74b36 100644 --- a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueAsyncClient.java +++ b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueAsyncClient.java @@ -20,6 +20,7 @@ import com.azure.storage.queue.implementation.models.QueueGetPropertiesHeaders; import com.azure.storage.queue.implementation.models.QueueMessage; import com.azure.storage.queue.implementation.models.QueuesGetPropertiesResponse; +import com.azure.storage.queue.implementation.util.QueueSasImplUtil; import com.azure.storage.queue.models.PeekedMessageItem; import com.azure.storage.queue.models.QueueMessageItem; import com.azure.storage.queue.models.QueueProperties; @@ -27,6 +28,7 @@ import com.azure.storage.queue.models.QueueStorageException; import com.azure.storage.queue.models.SendMessageResult; import com.azure.storage.queue.models.UpdateMessageResult; +import com.azure.storage.queue.sas.QueueServiceSasSignatureValues; import reactor.core.publisher.Mono; import java.time.Duration; @@ -99,6 +101,15 @@ public QueueServiceVersion getServiceVersion() { return serviceVersion; } + /** + * Gets the {@link HttpPipeline} powering this client. + * + * @return The pipeline. + */ + public HttpPipeline getHttpPipeline() { + return client.getHttpPipeline(); + } + /** * Creates a new queue. * @@ -890,6 +901,23 @@ public String getAccountName() { return this.accountName; } + /** + * Generates a service sas for the queue using the specified {@link QueueServiceSasSignatureValues} + * @see QueueServiceSasSignatureValues for more information on how to construct a service SAS. + * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.queue.QueueAsyncClient.generateSas#QueueServiceSasSignatureValues} + * + * @param queueServiceSasSignatureValues {@link QueueServiceSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateSas(QueueServiceSasSignatureValues queueServiceSasSignatureValues) { + return new QueueSasImplUtil(queueServiceSasSignatureValues, getQueueName()) + .generateSas(SasImplUtils.extractSharedKeyCredential(getHttpPipeline())); + } + /* * Maps the HTTP headers returned from the service to the expected response type * @param response Service response diff --git a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueClient.java b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueClient.java index d513e812f548..d5220464eb5f 100644 --- a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueClient.java +++ b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueClient.java @@ -3,11 +3,13 @@ package com.azure.storage.queue; import com.azure.core.annotation.ServiceClient; +import com.azure.core.http.HttpPipeline; import com.azure.core.http.rest.PagedIterable; import com.azure.core.http.rest.Response; import com.azure.core.util.Context; import com.azure.storage.common.StorageSharedKeyCredential; import com.azure.storage.common.implementation.StorageImplUtils; +import com.azure.storage.queue.implementation.util.QueueSasImplUtil; import com.azure.storage.queue.models.PeekedMessageItem; import com.azure.storage.queue.models.QueueMessageItem; import com.azure.storage.queue.models.QueueProperties; @@ -15,6 +17,7 @@ import com.azure.storage.queue.models.QueueStorageException; import com.azure.storage.queue.models.SendMessageResult; import com.azure.storage.queue.models.UpdateMessageResult; +import com.azure.storage.queue.sas.QueueServiceSasSignatureValues; import reactor.core.publisher.Mono; import java.time.Duration; @@ -65,6 +68,15 @@ public QueueServiceVersion getServiceVersion() { return client.getServiceVersion(); } + /** + * Gets the {@link HttpPipeline} powering this client. + * + * @return The pipeline. + */ + public HttpPipeline getHttpPipeline() { + return client.getHttpPipeline(); + } + /** * Creates a new queue. * @@ -690,4 +702,21 @@ public String getQueueName() { public String getAccountName() { return this.client.getAccountName(); } + + /** + * Generates a service sas for the queue using the specified {@link QueueServiceSasSignatureValues} + * @see QueueServiceSasSignatureValues for more information on how to construct a service SAS. + * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.queue.QueueClient.generateSas#QueueServiceSasSignatureValues} + * + * @param queueServiceSasSignatureValues {@link QueueServiceSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateSas(QueueServiceSasSignatureValues queueServiceSasSignatureValues) { + return new QueueSasImplUtil(queueServiceSasSignatureValues, getQueueName()) + .generateSas(SasImplUtils.extractSharedKeyCredential(getHttpPipeline())); + } } diff --git a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/implementation/util/QueueSasImplUtil.java b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/implementation/util/QueueSasImplUtil.java new file mode 100644 index 000000000000..1785820faf92 --- /dev/null +++ b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/implementation/util/QueueSasImplUtil.java @@ -0,0 +1,126 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. + +package com.azure.storage.queue.implementation.util; + +import com.azure.core.util.CoreUtils; +import com.azure.storage.common.StorageSharedKeyCredential; +import com.azure.storage.common.implementation.Constants; +import com.azure.storage.common.implementation.StorageImplUtils; +import com.azure.storage.common.sas.SasIpRange; +import com.azure.storage.common.sas.SasProtocol; +import com.azure.storage.queue.QueueServiceVersion; +import com.azure.storage.queue.sas.QueueServiceSasSignatureValues; + +import java.time.OffsetDateTime; +import java.util.Objects; + +import static com.azure.storage.common.implementation.SasImplUtils.formatQueryParameterDate; +import static com.azure.storage.common.implementation.SasImplUtils.tryAppendQueryParameter; + +/** + * This class provides helper methods for common queue service sas patterns. + * + * RESERVED FOR INTERNAL USE. + */ +public class QueueSasImplUtil { + + private String version; + + private SasProtocol protocol; + + private OffsetDateTime startTime; + + private OffsetDateTime expiryTime; + + private String permissions; + + private SasIpRange sasIpRange; + + private String queueName; + + private String identifier; + + /** + * Creates a new {@link QueueSasImplUtil} with the specified parameters + * + * @param sasValues {@link QueueServiceSasSignatureValues} + * @param queueName The queue name + */ + public QueueSasImplUtil(QueueServiceSasSignatureValues sasValues, String queueName) { + Objects.requireNonNull(sasValues); + this.version = sasValues.getVersion(); + this.protocol = sasValues.getProtocol(); + this.startTime = sasValues.getStartTime(); + this.expiryTime = sasValues.getExpiryTime(); + this.permissions = sasValues.getPermissions(); + this.sasIpRange = sasValues.getSasIpRange(); + this.queueName = queueName; + this.identifier = sasValues.getIdentifier(); + } + + /** + * Generates a Sas signed with a {@link StorageSharedKeyCredential} + * + * @param storageSharedKeyCredentials {@link StorageSharedKeyCredential} + * @return A String representing the Sas + */ + public String generateSas(StorageSharedKeyCredential storageSharedKeyCredentials) { + StorageImplUtils.assertNotNull("storageSharedKeyCredentials", storageSharedKeyCredentials); + + if (CoreUtils.isNullOrEmpty(version)) { + version = QueueServiceVersion.getLatest().getVersion(); + } + + // Signature is generated on the un-url-encoded values. + String canonicalName = getCanonicalName(storageSharedKeyCredentials.getAccountName(), queueName); + String stringToSign = stringToSign(canonicalName); + String signature = storageSharedKeyCredentials.computeHmac256(stringToSign); + + return encode(signature); + } + + private String encode(String signature) { + /* + We should be url-encoding each key and each value, but because we know all the keys and values will encode to + themselves, we cheat except for the signature value. + */ + StringBuilder sb = new StringBuilder(); + + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SERVICE_VERSION, this.version); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_PROTOCOL, this.protocol); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_START_TIME, formatQueryParameterDate(this.startTime)); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_EXPIRY_TIME, formatQueryParameterDate(this.expiryTime)); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_IP_RANGE, this.sasIpRange); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_IDENTIFIER, this.identifier); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_PERMISSIONS, this.permissions); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNATURE, signature); + + return sb.toString(); + } + + /** + * Computes the canonical name for a queue resource for SAS signing. + * @param account Account of the storage account. + * @param queueName Name of the queue. + * @return Canonical name as a string. + */ + private static String getCanonicalName(String account, String queueName) { + // Queue: "/queue/account/queuename" + return String.join("", new String[] { "/queue/", account, "/", queueName }); + } + + private String stringToSign(String canonicalName) { + return String.join("\n", + this.permissions == null ? "" : this.permissions, + this.startTime == null ? "" : Constants.ISO_8601_UTC_DATE_FORMATTER.format(this.startTime), + this.expiryTime == null ? "" : Constants.ISO_8601_UTC_DATE_FORMATTER.format(this.expiryTime), + canonicalName, + this.identifier == null ? "" : this.identifier, + this.sasIpRange == null ? "" : this.sasIpRange.toString(), + this.protocol == null ? "" : protocol.toString(), + this.version == null ? "" : this.version + ); + } + +} diff --git a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/sas/QueueServiceSasQueryParameters.java b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/sas/QueueServiceSasQueryParameters.java index d3e12835ef43..944808267a44 100644 --- a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/sas/QueueServiceSasQueryParameters.java +++ b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/sas/QueueServiceSasQueryParameters.java @@ -74,7 +74,10 @@ public String getIdentifier() { * Encodes all SAS query parameters into a string that can be appended to a URL. * * @return A {@code String} representing all SAS query parameters. + * @deprecated Please use the generate*Sas method on the queue client after initializing + * {@link QueueServiceSasSignatureValues}. */ + @Deprecated public String encode() { /* We should be url-encoding each key and each value, but because we know all the keys and values will encode to diff --git a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/sas/QueueServiceSasSignatureValues.java b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/sas/QueueServiceSasSignatureValues.java index 150a42272eb3..0cc843c19fc5 100644 --- a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/sas/QueueServiceSasSignatureValues.java +++ b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/sas/QueueServiceSasSignatureValues.java @@ -55,10 +55,36 @@ public final class QueueServiceSasSignatureValues { /** * Creates an object with empty values for all fields. + * @deprecated Please use {@link #QueueServiceSasSignatureValues(String)}, or + * {@link #QueueServiceSasSignatureValues(OffsetDateTime, QueueSasPermission)} */ + @Deprecated public QueueServiceSasSignatureValues() { } + /** + * Creates an object with the specified expiry time and permissions + * + * @param expiryTime The time after which the SAS will no longer work. + * @param permissions {@link QueueSasPermission} allowed by the SAS. + */ + public QueueServiceSasSignatureValues(OffsetDateTime expiryTime, QueueSasPermission permissions) { + StorageImplUtils.assertNotNull("expiryTime", expiryTime); + StorageImplUtils.assertNotNull("permissions", permissions); + this.expiryTime = expiryTime; + this.permissions = permissions.toString(); + } + + /** + * Creates an object with the specified identifier. + * + * @param identifier Name of the access policy. + */ + public QueueServiceSasSignatureValues(String identifier) { + StorageImplUtils.assertNotNull("identifier", identifier); + this.identifier = identifier; + } + /** * @return the version of the service this SAS will target. If not specified, it will default to the version * targeted by the library. @@ -187,7 +213,10 @@ public String getQueueName() { * * @param queueName Canonical name of the object the SAS grants access * @return the updated QueueServiceSasSignatureValues object + * @deprecated Please use the generateSas methods provided on the desired queue client that will + * auto-populate the queue name. */ + @Deprecated public QueueServiceSasSignatureValues setQueueName(String queueName) { this.queueName = queueName; return this; @@ -197,11 +226,22 @@ public QueueServiceSasSignatureValues setQueueName(String queueName) { * @return the name of the access policy on the queue this SAS references if any. Please see * here * for more information. + * @deprecated Please use {@link #getIdentifier()} */ + @Deprecated public String getId() { return identifier; } + /** + * @return the name of the access policy on the queue this SAS references if any. Please see + * here + * for more information. + */ + public String getIdentifier() { + return identifier; + } + /** * Sets the name of the access policy on the queue this SAS references if any. Please see * here @@ -237,7 +277,10 @@ public QueueServiceSasSignatureValues setIdentifier(String identifier) { * @throws IllegalStateException If the HMAC-SHA256 algorithm isn't supported, if the key isn't a valid Base64 * encoded string, or the UTF-8 charset isn't supported. * @throws NullPointerException If {@code storageSharedKeyCredentials} is null. + * @deprecated Please use the generateSas(QueueServiceSasSignatureValues) method on the desired queue client + * after initializing {@link QueueServiceSasSignatureValues}. */ + @Deprecated public QueueServiceSasQueryParameters generateSasQueryParameters( StorageSharedKeyCredential storageSharedKeyCredentials) { StorageImplUtils.assertNotNull("storageSharedKeyCredentials", storageSharedKeyCredentials); diff --git a/sdk/storage/azure-storage-queue/src/samples/java/com/azure/storage/queue/QueueAsyncJavaDocCodeSamples.java b/sdk/storage/azure-storage-queue/src/samples/java/com/azure/storage/queue/QueueAsyncJavaDocCodeSamples.java index c51b049bec7c..270d12946371 100644 --- a/sdk/storage/azure-storage-queue/src/samples/java/com/azure/storage/queue/QueueAsyncJavaDocCodeSamples.java +++ b/sdk/storage/azure-storage-queue/src/samples/java/com/azure/storage/queue/QueueAsyncJavaDocCodeSamples.java @@ -7,6 +7,8 @@ import com.azure.storage.queue.models.QueueAccessPolicy; import com.azure.storage.queue.models.QueueProperties; import com.azure.storage.queue.models.QueueSignedIdentifier; +import com.azure.storage.queue.sas.QueueSasPermission; +import com.azure.storage.queue.sas.QueueServiceSasSignatureValues; import java.time.Duration; import java.time.OffsetDateTime; @@ -490,4 +492,19 @@ public void getNameAsync() { System.out.println("The name of the queue is " + queueName); // END: com.azure.storage.queue.queueAsyncClient.getQueueName } + + /** + * Code snippet for {@link QueueAsyncClient#generateSas(QueueServiceSasSignatureValues)} + */ + public void generateSas() { + // BEGIN: com.azure.storage.queue.QueueAsyncClient.generateSas#QueueServiceSasSignatureValues + OffsetDateTime expiryTime = OffsetDateTime.now().plusDays(1); + QueueSasPermission permission = new QueueSasPermission().setReadPermission(true); + + QueueServiceSasSignatureValues values = new QueueServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + client.generateSas(values); // Client must be authenticated via StorageSharedKeyCredential + // END: com.azure.storage.queue.QueueAsyncClient.generateSas#QueueServiceSasSignatureValues + } } diff --git a/sdk/storage/azure-storage-queue/src/samples/java/com/azure/storage/queue/QueueJavaDocCodeSamples.java b/sdk/storage/azure-storage-queue/src/samples/java/com/azure/storage/queue/QueueJavaDocCodeSamples.java index cbf1c64e253a..e40b2166a0e1 100644 --- a/sdk/storage/azure-storage-queue/src/samples/java/com/azure/storage/queue/QueueJavaDocCodeSamples.java +++ b/sdk/storage/azure-storage-queue/src/samples/java/com/azure/storage/queue/QueueJavaDocCodeSamples.java @@ -13,6 +13,8 @@ import com.azure.storage.queue.models.QueueSignedIdentifier; import com.azure.storage.queue.models.SendMessageResult; import com.azure.storage.queue.models.UpdateMessageResult; +import com.azure.storage.queue.sas.QueueSasPermission; +import com.azure.storage.queue.sas.QueueServiceSasSignatureValues; import java.time.Duration; import java.time.OffsetDateTime; @@ -431,4 +433,19 @@ public void getName() { System.out.println("The name of the queue is " + queueName); // END: com.azure.storage.queue.queueClient.getQueueName } + + /** + * Code snippet for {@link QueueClient#generateSas(QueueServiceSasSignatureValues)} + */ + public void generateSas() { + // BEGIN: com.azure.storage.queue.QueueClient.generateSas#QueueServiceSasSignatureValues + OffsetDateTime expiryTime = OffsetDateTime.now().plusDays(1); + QueueSasPermission permission = new QueueSasPermission().setReadPermission(true); + + QueueServiceSasSignatureValues values = new QueueServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + client.generateSas(values); // Client must be authenticated via StorageSharedKeyCredential + // END: com.azure.storage.queue.QueueClient.generateSas#QueueServiceSasSignatureValues + } } From 486b7f639ac2e0688d8012970ac1e6fbb0cf9ddd Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Mon, 25 Nov 2019 14:10:39 -0800 Subject: [PATCH 09/23] Addressed CR comments --- sdk/storage/azure-storage-blob/CHANGELOG.md | 1 + .../azure/storage/blob/BlobAsyncClient.java | 35 ------------------ .../com/azure/storage/blob/BlobClient.java | 36 +------------------ .../blob/BlobContainerAsyncClient.java | 5 ++- .../storage/blob/BlobContainerClient.java | 5 ++- .../sas/BlobServiceSasQueryParameters.java | 3 -- .../sas/BlobServiceSasSignatureValues.java | 10 ++++-- .../blob/specialized/BlobAsyncClientBase.java | 20 ++++++----- .../blob/specialized/BlobClientBase.java | 16 ++++----- .../BlobAsyncClientJavaDocCodeSnippets.java | 26 -------------- .../blob/BlobClientJavaDocCodeSnippets.java | 27 -------------- sdk/storage/azure-storage-common/CHANGELOG.md | 3 ++ 12 files changed, 39 insertions(+), 148 deletions(-) diff --git a/sdk/storage/azure-storage-blob/CHANGELOG.md b/sdk/storage/azure-storage-blob/CHANGELOG.md index 42c8d853aad0..f379f716fe6d 100644 --- a/sdk/storage/azure-storage-blob/CHANGELOG.md +++ b/sdk/storage/azure-storage-blob/CHANGELOG.md @@ -11,6 +11,7 @@ and - Fixed a bug in the RetryPolicy that would apply the delay of a fixed retry policy to the first try. - Fixed a bug that could cause the overwrite flag to not be honored in cases where data was uploaded by another source after a parallel operation has already started. - Added overloads to accept an overwrite flag to commitBlockList and getBlobOutputStream. Note that this changes the default behavior of the min overload and these methods will now fail if they are attempting to overwrite data. +- Added generate*Sas methods on clients to improve discoverability and convenience of sas. Deprecated setContainerName, setBlobName, setSnapshotId, generateSasQueryParameters methods on BlobServiceSasSignatureValues to direct users to using the methods added on clients. ## Version 12.0.0 (2019-10-31) diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobAsyncClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobAsyncClient.java index dd9639661a18..706581dccd93 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobAsyncClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobAsyncClient.java @@ -568,42 +568,7 @@ public Mono uploadFromFile(String filePath, ParallelTransferOptions parall } } - /** - * Generates a user delegation sas for the blob using the specified - * {@link BlobServiceSasSignatureValues}. - * @see BlobServiceSasSignatureValues for more information on how to construct a user delegation SAS. - * - *

Code Samples

- * - * {@codesnippet com.azure.storage.blob.BlobAsyncClient.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey} - * - * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} - * @param userDelegationKey {@link UserDelegationKey} - * - * @return A {@code String} representing all SAS query parameters. - */ - public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues, - UserDelegationKey userDelegationKey) { - return new BlobSasImplUtil(blobServiceSasSignatureValues, getContainerName(), getBlobName(), getSnapshotId()) - .generateUserDelegationSas(userDelegationKey, getAccountName()); - } - /** - * Generates a service sas for the blob using the specified {@link BlobServiceSasSignatureValues} - * @see BlobServiceSasSignatureValues for more information on how to construct a service SAS. - * - *

Code Samples

- * - * {@codesnippet com.azure.storage.blob.BlobAsyncClient.generateSas#BlobServiceSasSignatureValues} - * - * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} - * - * @return A {@code String} representing all SAS query parameters. - */ - public String generateSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues) { - return new BlobSasImplUtil(blobServiceSasSignatureValues, getContainerName(), getBlobName(), getSnapshotId()) - .generateSas(SasImplUtils.extractSharedKeyCredential(getHttpPipeline())); - } boolean uploadInBlocks(String filePath) { AsynchronousFileChannel channel = uploadFileResourceSupplier(filePath); diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobClient.java index 4d873e481e29..86c7f20646c4 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobClient.java @@ -22,6 +22,7 @@ import java.io.UncheckedIOException; import java.time.Duration; +import java.time.OffsetDateTime; import java.util.Map; /** @@ -186,39 +187,4 @@ public void uploadFromFile(String filePath, ParallelTransferOptions parallelTran throw logger.logExceptionAsError(e); } } - - /** - * Generates a user delegation sas for the blob using the specified - * {@link BlobServiceSasSignatureValues}. - * @see BlobServiceSasSignatureValues for more information on how to construct a user delegation SAS. - * - *

Code Samples

- * - * {@codesnippet com.azure.storage.blob.BlobClient.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey} - * - * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} - * @param userDelegationKey {@link UserDelegationKey} - * - * @return A {@code String} representing all SAS query parameters. - */ - public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues, - UserDelegationKey userDelegationKey) { - return this.client.generateUserDelegationSas(blobServiceSasSignatureValues, userDelegationKey); - } - - /** - * Generates a service sas for the blob using the specified {@link BlobServiceSasSignatureValues} - * @see BlobServiceSasSignatureValues for more information on how to construct a service SAS. - * - *

Code Samples

- * - * {@codesnippet com.azure.storage.blob.BlobClient.generateSas#BlobServiceSasSignatureValues} - * - * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} - * - * @return A {@code String} representing all SAS query parameters. - */ - public String generateSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues) { - return this.client.generateSas(blobServiceSasSignatureValues); - } } diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java index 2ed3cd08948d..43a353c04b84 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java @@ -39,6 +39,7 @@ import reactor.core.publisher.Mono; import java.time.Duration; +import java.time.OffsetDateTime; import java.time.temporal.ChronoUnit; import java.util.ArrayList; import java.util.List; @@ -914,7 +915,9 @@ Mono> getAccountInfoWithResponse(Context context) { * {@codesnippet com.azure.storage.blob.BlobContainerAsyncClient.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey} * * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} - * @param userDelegationKey {@link UserDelegationKey} + * @param userDelegationKey A {@link UserDelegationKey} object used to sign the SAS values. + * @see BlobServiceAsyncClient#getUserDelegationKey(OffsetDateTime, OffsetDateTime) for more information on how to + * get a user delegation key. * * @return A {@code String} representing all SAS query parameters. */ diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerClient.java index 5cd060168504..6fcd1d75f0c4 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerClient.java @@ -22,6 +22,7 @@ import reactor.core.publisher.Mono; import java.time.Duration; +import java.time.OffsetDateTime; import java.util.List; import java.util.Map; @@ -565,7 +566,9 @@ public Response getAccountInfoWithResponse(Duration timeout, * {@codesnippet com.azure.storage.blob.BlobContainerClient.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey} * * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} - * @param userDelegationKey {@link UserDelegationKey} + * @param userDelegationKey A {@link UserDelegationKey} object used to sign the SAS values. + * @see BlobServiceClient#getUserDelegationKey(OffsetDateTime, OffsetDateTime) for more information on how to get a + * user delegation key. * * @return A {@code String} representing all SAS query parameters. */ diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasQueryParameters.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasQueryParameters.java index d1fe21d78da4..69f5e2515213 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasQueryParameters.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasQueryParameters.java @@ -240,10 +240,7 @@ UserDelegationKey userDelegationKey() { * Encodes all SAS query parameters into a string that can be appended to a URL. * * @return A {@code String} representing all SAS query parameters. - * @deprecated Please use the generate*Sas method on the desired container/blob client after initializing - * {@link BlobServiceSasSignatureValues}. */ - @Deprecated public String encode() { /* We should be url-encoding each key and each value, but because we know all the keys and values will encode to diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasSignatureValues.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasSignatureValues.java index eb2a06ab47e5..cbfadfddc7a1 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasSignatureValues.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasSignatureValues.java @@ -28,8 +28,6 @@ * @see Constructing a * User Delegation SAS */ - -// TODO (gapra) : Add code snippets for new workflow public final class BlobServiceSasSignatureValues { /** * The SAS blob constant. @@ -298,7 +296,10 @@ public BlobServiceSasSignatureValues setSasIpRange(SasIpRange sasIpRange) { * Gets the name of the container the SAS user may access. * * @return The name of the container the SAS user may access. + * @deprecated Container name is not auto-populated by the generate*Sas methods provided on the desired + * container/blob client. */ + @Deprecated public String getContainerName() { return containerName; } @@ -323,7 +324,9 @@ public BlobServiceSasSignatureValues setContainerName(String containerName) { * * @return The decoded name of the blob the SAS user may access. {@code null} or an empty string is returned when a * creating a container SAS. + * @deprecated Blob name is now auto-populated by the generate*Sas methods provided on the desired blob client. */ + @Deprecated public String getBlobName() { return blobName; } @@ -344,7 +347,10 @@ public BlobServiceSasSignatureValues setBlobName(String blobName) { /** * @return the specific snapshot the SAS user may access. + * @deprecated Snapshot id is now auto-populated by the generate*Sas methods provided on the desired (snapshot) blob + * client. */ + @Deprecated public String getSnapshotId() { return this.snapshotId; } diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java index acc17efe8632..4661b0f45939 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java @@ -15,8 +15,8 @@ import com.azure.core.util.polling.LongRunningOperationStatus; import com.azure.core.util.polling.PollResponse; import com.azure.core.util.polling.PollerFlux; -import com.azure.storage.blob.BlobAsyncClient; import com.azure.storage.blob.BlobClientBuilder; +import com.azure.storage.blob.BlobServiceAsyncClient; import com.azure.storage.blob.BlobServiceVersion; import com.azure.storage.blob.HttpGetterInfo; import com.azure.storage.blob.ProgressReporter; @@ -25,6 +25,7 @@ import com.azure.storage.blob.implementation.models.BlobGetAccountInfoHeaders; import com.azure.storage.blob.implementation.models.BlobGetPropertiesHeaders; import com.azure.storage.blob.implementation.models.BlobStartCopyFromURLHeaders; +import com.azure.storage.blob.implementation.util.BlobSasImplUtil; import com.azure.storage.blob.implementation.util.ModelHelper; import com.azure.storage.blob.models.AccessTier; import com.azure.storage.blob.models.ArchiveStatus; @@ -48,6 +49,7 @@ import com.azure.storage.blob.sas.BlobServiceSasSignatureValues; import com.azure.storage.common.Utility; import com.azure.storage.common.implementation.Constants; +import com.azure.storage.common.implementation.SasImplUtils; import com.azure.storage.common.implementation.StorageImplUtils; import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; @@ -67,6 +69,7 @@ import java.nio.file.Paths; import java.nio.file.StandardOpenOption; import java.time.Duration; +import java.time.OffsetDateTime; import java.util.Map; import java.util.concurrent.atomic.AtomicLong; import java.util.concurrent.locks.Lock; @@ -1415,13 +1418,16 @@ Mono> getAccountInfoWithResponse(Context context) { * {@codesnippet com.azure.storage.blob.specialized.BlobAsyncClientBase.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey} * * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} - * @param userDelegationKey {@link UserDelegationKey} + * @param userDelegationKey A {@link UserDelegationKey} object used to sign the SAS values. + * @see BlobServiceAsyncClient#getUserDelegationKey(OffsetDateTime, OffsetDateTime) for more information on how to + * get a user delegation key. * * @return A {@code String} representing all SAS query parameters. */ public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues, UserDelegationKey userDelegationKey) { - return getBlobAsyncClient().generateUserDelegationSas(blobServiceSasSignatureValues, userDelegationKey); + return new BlobSasImplUtil(blobServiceSasSignatureValues, getContainerName(), getBlobName(), getSnapshotId()) + .generateUserDelegationSas(userDelegationKey, getAccountName()); } /** @@ -1437,11 +1443,7 @@ public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServic * @return A {@code String} representing all SAS query parameters. */ public String generateSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues) { - return getBlobAsyncClient().generateSas(blobServiceSasSignatureValues); + return new BlobSasImplUtil(blobServiceSasSignatureValues, getContainerName(), getBlobName(), getSnapshotId()) + .generateSas(SasImplUtils.extractSharedKeyCredential(getHttpPipeline())); } - - private BlobAsyncClient getBlobAsyncClient() { - return prepareBuilder().buildAsyncClient(); - } - } diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobClientBase.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobClientBase.java index 5c628603d974..39a482b5bf01 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobClientBase.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobClientBase.java @@ -12,6 +12,7 @@ import com.azure.core.util.logging.ClientLogger; import com.azure.core.util.polling.SyncPoller; import com.azure.storage.blob.BlobClient; +import com.azure.storage.blob.BlobServiceClient; import com.azure.storage.blob.models.BlobProperties; import com.azure.storage.blob.BlobServiceVersion; import com.azure.storage.blob.models.AccessTier; @@ -39,6 +40,7 @@ import java.net.URL; import java.nio.file.FileAlreadyExistsException; import java.time.Duration; +import java.time.OffsetDateTime; import java.util.Map; import static com.azure.storage.common.implementation.StorageImplUtils.blockWithOptionalTimeout; @@ -802,7 +804,6 @@ public Response getAccountInfoWithResponse(Duration timeout, return blockWithOptionalTimeout(response, timeout); } - /** * Generates a user delegation sas for the blob using the specified * {@link BlobServiceSasSignatureValues}. @@ -813,13 +814,14 @@ public Response getAccountInfoWithResponse(Duration timeout, * {@codesnippet com.azure.storage.blob.specialized.BlobClientBase.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey} * * @param blobServiceSasSignatureValues {@link BlobServiceSasSignatureValues} - * @param userDelegationKey {@link UserDelegationKey} - * + * @param userDelegationKey A {@link UserDelegationKey} object used to sign the SAS values. + * @see BlobServiceClient#getUserDelegationKey(OffsetDateTime, OffsetDateTime) for more information on how to get a + * user delegation key. * @return A {@code String} representing all SAS query parameters. */ public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues, UserDelegationKey userDelegationKey) { - return getBlobClient().generateUserDelegationSas(blobServiceSasSignatureValues, userDelegationKey); + return this.client.generateUserDelegationSas(blobServiceSasSignatureValues, userDelegationKey); } /** @@ -835,10 +837,6 @@ public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServic * @return A {@code String} representing all SAS query parameters. */ public String generateSas(BlobServiceSasSignatureValues blobServiceSasSignatureValues) { - return getBlobClient().generateSas(blobServiceSasSignatureValues); - } - - private BlobClient getBlobClient() { - return this.client.prepareBuilder().buildClient(); + return this.client.generateSas(blobServiceSasSignatureValues); } } diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobAsyncClientJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobAsyncClientJavaDocCodeSnippets.java index af925299744e..c843263a1131 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobAsyncClientJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobAsyncClientJavaDocCodeSnippets.java @@ -509,30 +509,4 @@ public void uploadFromFile2() { .subscribe(completion -> System.out.println("Upload from file succeeded")); // END: com.azure.storage.blob.BlobAsyncClient.uploadFromFile#String-ParallelTransferOptions-BlobHttpHeaders-Map-AccessTier-BlobRequestConditions } - - /** - * Code snippet for {@link BlobAsyncClient#generateUserDelegationSas(BlobServiceSasSignatureValues, UserDelegationKey)} - * and {@link BlobAsyncClient#generateSas(BlobServiceSasSignatureValues)} - */ - public void generateSas() { - // BEGIN: com.azure.storage.blob.BlobAsyncClient.generateSas#BlobServiceSasSignatureValues - OffsetDateTime expiryTime = OffsetDateTime.now().plusDays(1); - BlobSasPermission permission = new BlobSasPermission().setReadPermission(true); - - BlobServiceSasSignatureValues values = new BlobServiceSasSignatureValues(expiryTime, permission) - .setStartTime(OffsetDateTime.now()); - - client.generateSas(values); // Client must be authenticated via StorageSharedKeyCredential - // END: com.azure.storage.blob.BlobAsyncClient.generateSas#BlobServiceSasSignatureValues - - // BEGIN: com.azure.storage.blob.BlobAsyncClient.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey - OffsetDateTime myExpiryTime = OffsetDateTime.now().plusDays(1); - BlobSasPermission myPermission = new BlobSasPermission().setReadPermission(true); - - BlobServiceSasSignatureValues myValues = new BlobServiceSasSignatureValues(expiryTime, permission) - .setStartTime(OffsetDateTime.now()); - - client.generateUserDelegationSas(values, userDelegationKey); - // END: com.azure.storage.blob.BlobAsyncClient.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey - } } diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobClientJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobClientJavaDocCodeSnippets.java index 5f6e6f3fd64e..cffd347c8025 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobClientJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobClientJavaDocCodeSnippets.java @@ -431,31 +431,4 @@ public void uploadFromFile2() throws IOException { } // END: com.azure.storage.blob.BlobClient.uploadFromFile#String-ParallelTransferOptions-BlobHttpHeaders-Map-AccessTier-BlobRequestConditions-Duration } - - - /** - * Code snippet for {@link BlobClient#generateUserDelegationSas(BlobServiceSasSignatureValues, UserDelegationKey)} - * and {@link BlobClient#generateSas(BlobServiceSasSignatureValues)} - */ - public void generateSas() { - // BEGIN: com.azure.storage.blob.BlobClient.generateSas#BlobServiceSasSignatureValues - OffsetDateTime expiryTime = OffsetDateTime.now().plusDays(1); - BlobSasPermission permission = new BlobSasPermission().setReadPermission(true); - - BlobServiceSasSignatureValues values = new BlobServiceSasSignatureValues(expiryTime, permission) - .setStartTime(OffsetDateTime.now()); - - client.generateSas(values); // Client must be authenticated via StorageSharedKeyCredential - // END: com.azure.storage.blob.BlobClient.generateSas#BlobServiceSasSignatureValues - - // BEGIN: com.azure.storage.blob.BlobClient.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey - OffsetDateTime myExpiryTime = OffsetDateTime.now().plusDays(1); - BlobSasPermission myPermission = new BlobSasPermission().setReadPermission(true); - - BlobServiceSasSignatureValues myValues = new BlobServiceSasSignatureValues(expiryTime, permission) - .setStartTime(OffsetDateTime.now()); - - client.generateUserDelegationSas(values, userDelegationKey); - // END: com.azure.storage.blob.BlobClient.generateUserDelegationSas#BlobServiceSasSignatureValues-UserDelegationKey - } } diff --git a/sdk/storage/azure-storage-common/CHANGELOG.md b/sdk/storage/azure-storage-common/CHANGELOG.md index 169c45c8f3fa..25e39b7498eb 100644 --- a/sdk/storage/azure-storage-common/CHANGELOG.md +++ b/sdk/storage/azure-storage-common/CHANGELOG.md @@ -1,4 +1,7 @@ # Release History +## Version XX.X.X (XXXX-XX-XX) +- Added generateSas methods on service clients to improve discoverability and convenience of sas. Deprecated setters of required parameters, generateSasQueryParameters methods on AccountSasSignatureValues to direct users to using the methods added on clients. + ## Version 12.0.0 (2019-10-31) - Removed BaseClientBuilder - Renamed RequestRetryOptions maxTries, tryTimeout, secondaryHost, retryDelayInMs, maxRetryDelayInMs to getMaxTries, getTryTimeout, getSecondaryHosy, getRetryDelayInMs, getMaxRetryDelayInMs From 05980872697ebc724d2a9240e4066b722056ccc2 Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Mon, 25 Nov 2019 14:20:29 -0800 Subject: [PATCH 10/23] removed imports --- .../src/main/java/com/azure/storage/blob/BlobAsyncClient.java | 4 ---- .../src/main/java/com/azure/storage/blob/BlobClient.java | 3 --- 2 files changed, 7 deletions(-) diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobAsyncClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobAsyncClient.java index 706581dccd93..4c3c67ae36eb 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobAsyncClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobAsyncClient.java @@ -7,7 +7,6 @@ import com.azure.core.http.rest.Response; import com.azure.core.util.FluxUtil; import com.azure.core.util.logging.ClientLogger; -import com.azure.storage.blob.implementation.util.BlobSasImplUtil; import com.azure.storage.blob.implementation.util.ModelHelper; import com.azure.storage.blob.models.AccessTier; import com.azure.storage.blob.models.BlobHttpHeaders; @@ -17,15 +16,12 @@ import com.azure.storage.blob.models.CpkInfo; import com.azure.storage.blob.models.CustomerProvidedKey; import com.azure.storage.blob.models.ParallelTransferOptions; -import com.azure.storage.blob.models.UserDelegationKey; -import com.azure.storage.blob.sas.BlobServiceSasSignatureValues; import com.azure.storage.blob.specialized.AppendBlobAsyncClient; import com.azure.storage.blob.specialized.BlobAsyncClientBase; import com.azure.storage.blob.specialized.BlockBlobAsyncClient; import com.azure.storage.blob.specialized.PageBlobAsyncClient; import com.azure.storage.blob.specialized.SpecializedBlobClientBuilder; import com.azure.storage.common.implementation.Constants; -import com.azure.storage.common.implementation.SasImplUtils; import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobClient.java index 86c7f20646c4..718d9d4cf95b 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobClient.java @@ -9,8 +9,6 @@ import com.azure.storage.blob.models.BlobRequestConditions; import com.azure.storage.blob.models.BlobHttpHeaders; import com.azure.storage.blob.models.ParallelTransferOptions; -import com.azure.storage.blob.models.UserDelegationKey; -import com.azure.storage.blob.sas.BlobServiceSasSignatureValues; import com.azure.storage.blob.specialized.AppendBlobClient; import com.azure.storage.blob.specialized.BlobClientBase; import com.azure.storage.blob.specialized.BlockBlobClient; @@ -22,7 +20,6 @@ import java.io.UncheckedIOException; import java.time.Duration; -import java.time.OffsetDateTime; import java.util.Map; /** From 09532604bdf7f22ce08a3208302f9bf9114919e9 Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Wed, 27 Nov 2019 07:15:18 -0800 Subject: [PATCH 11/23] Updated javadoc --- .../blob/BlobContainerAsyncClient.java | 9 ++++--- .../storage/blob/BlobContainerClient.java | 9 ++++--- .../storage/blob/BlobServiceAsyncClient.java | 4 ++-- .../azure/storage/blob/BlobServiceClient.java | 4 ++-- .../blob/specialized/BlobAsyncClientBase.java | 24 ++++--------------- .../blob/specialized/BlobClientBase.java | 9 ++++--- 6 files changed, 20 insertions(+), 39 deletions(-) diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java index 43a353c04b84..1fb63b6b0bf9 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java @@ -906,9 +906,8 @@ Mono> getAccountInfoWithResponse(Context context) { } /** - * Generates a user delegation sas for the container using the specified - * {@link BlobServiceSasSignatureValues}. - * @see BlobServiceSasSignatureValues for more information on how to construct a user delegation SAS. + * Generates a user delegation SAS for the container using the specified {@link BlobServiceSasSignatureValues}. + *

See {@link BlobServiceSasSignatureValues} for more information on how to construct a user delegation SAS.

* *

Code Samples

* @@ -928,8 +927,8 @@ public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServic } /** - * Generates a service sas for the container using the specified {@link BlobServiceSasSignatureValues} - * @see BlobServiceSasSignatureValues for more information on how to construct a service SAS. + * Generates a service SAS for the container using the specified {@link BlobServiceSasSignatureValues} + *

See {@link BlobServiceSasSignatureValues} for more information on how to construct a service SAS.

* *

Code Samples

* diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerClient.java index 6fcd1d75f0c4..9662fad39774 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerClient.java @@ -557,9 +557,8 @@ public Response getAccountInfoWithResponse(Duration timeout, } /** - * Generates a user delegation sas for the container using the specified - * {@link BlobServiceSasSignatureValues}. - * @see BlobServiceSasSignatureValues for more information on how to construct a user delegation SAS. + * Generates a user delegation SAS for the container using the specified {@link BlobServiceSasSignatureValues}. + *

See {@link BlobServiceSasSignatureValues} for more information on how to construct a user delegation SAS.

* *

Code Samples

* @@ -578,8 +577,8 @@ public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServic } /** - * Generates a service sas for the container using the specified {@link BlobServiceSasSignatureValues} - * @see BlobServiceSasSignatureValues for more information on how to construct a service SAS. + * Generates a service SAS for the container using the specified {@link BlobServiceSasSignatureValues} + *

See {@link BlobServiceSasSignatureValues} for more information on how to construct a service SAS.

* *

Code Samples

* diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceAsyncClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceAsyncClient.java index 40fff379f1f4..43434d8d175c 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceAsyncClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceAsyncClient.java @@ -556,8 +556,8 @@ public String getAccountName() { } /** - * Generates an account sas for the Azure Storage account using the specified {@link AccountSasSignatureValues}. - * @see AccountSasSignatureValues for more information on how to construct an account SAS. + * Generates an account SAS for the Azure Storage account using the specified {@link AccountSasSignatureValues}. + *

See {@link AccountSasSignatureValues} for more information on how to construct an account SAS.

* *

The snippet below generates a SAS that lasts for two days and gives the user read and list access to blob * containers and file shares.

diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceClient.java index 1668483bfc59..a9dbbfeed6cc 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceClient.java @@ -375,8 +375,8 @@ public String getAccountName() { } /** - * Generates an account sas for the Azure Storage account using the specified {@link AccountSasSignatureValues}. - * @see AccountSasSignatureValues for more information on how to construct an account SAS. + * Generates an account SAS for the Azure Storage account using the specified {@link AccountSasSignatureValues}. + *

See {@link AccountSasSignatureValues} for more information on how to construct an account SAS.

* *

Generating an account SAS

*

The snippet below generates an AccountSasSignatureValues object that lasts for two days and gives the user diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java index 4661b0f45939..bbabd8818163 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java @@ -131,21 +131,6 @@ protected BlobAsyncClientBase(HttpPipeline pipeline, String url, BlobServiceVers this.customerProvidedKey = customerProvidedKey; } - BlobClientBuilder prepareBuilder() { - BlobClientBuilder builder = new BlobClientBuilder() - .pipeline(getHttpPipeline()) - .endpoint(getBlobUrl()) - .snapshot(getSnapshotId()) - .serviceVersion(getServiceVersion()); - - CpkInfo cpk = getCustomerProvidedKey(); - if (cpk != null) { - builder.customerProvidedKey(new CustomerProvidedKey(cpk.getEncryptionKey())); - } - - return builder; - } - /** * Creates a new {@link BlobAsyncClientBase} linked to the {@code snapshot} of this blob resource. * @@ -1409,9 +1394,8 @@ Mono> getAccountInfoWithResponse(Context context) { } /** - * Generates a user delegation sas for the blob using the specified - * {@link BlobServiceSasSignatureValues}. - * @see BlobServiceSasSignatureValues for more information on how to construct a user delegation SAS. + * Generates a user delegation SAS for the blob using the specified {@link BlobServiceSasSignatureValues}. + *

See {@link BlobServiceSasSignatureValues} for more information on how to construct a user delegation SAS.

* *

Code Samples

* @@ -1431,8 +1415,8 @@ public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServic } /** - * Generates a service sas for the blob using the specified {@link BlobServiceSasSignatureValues} - * @see BlobServiceSasSignatureValues for more information on how to construct a service SAS. + * Generates a service SAS for the blob using the specified {@link BlobServiceSasSignatureValues} + *

See {@link BlobServiceSasSignatureValues} for more information on how to construct a service SAS.

* *

Code Samples

* diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobClientBase.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobClientBase.java index 39a482b5bf01..00e96722564d 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobClientBase.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobClientBase.java @@ -805,9 +805,8 @@ public Response getAccountInfoWithResponse(Duration timeout, } /** - * Generates a user delegation sas for the blob using the specified - * {@link BlobServiceSasSignatureValues}. - * @see BlobServiceSasSignatureValues for more information on how to construct a user delegation SAS. + * Generates a user delegation SAS for the blob using the specified {@link BlobServiceSasSignatureValues}. + *

See {@link BlobServiceSasSignatureValues} for more information on how to construct a user delegation SAS.

* *

Code Samples

* @@ -825,8 +824,8 @@ public String generateUserDelegationSas(BlobServiceSasSignatureValues blobServic } /** - * Generates a service sas for the blob using the specified {@link BlobServiceSasSignatureValues} - * @see BlobServiceSasSignatureValues for more information on how to construct a service SAS. + * Generates a service SAS for the blob using the specified {@link BlobServiceSasSignatureValues} + *

See {@link BlobServiceSasSignatureValues} for more information on how to construct a service SAS.

* *

Code Samples

* From ca1066222fa54c437892b51db05ec909edd3cdee Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Wed, 27 Nov 2019 08:38:41 -0800 Subject: [PATCH 12/23] Added Sas test, changed a few javadocs --- sdk/storage/azure-storage-blob/CHANGELOG.md | 2 +- .../blob/sas/BlobServiceSasSignatureValues.java | 16 ++++++++-------- .../blob/specialized/BlobAsyncClientBase.java | 2 -- .../common/sas/AccountSasQueryParameters.java | 4 ++-- .../common/sas/AccountSasSignatureValues.java | 5 ++--- 5 files changed, 13 insertions(+), 16 deletions(-) diff --git a/sdk/storage/azure-storage-blob/CHANGELOG.md b/sdk/storage/azure-storage-blob/CHANGELOG.md index f379f716fe6d..f167978f499a 100644 --- a/sdk/storage/azure-storage-blob/CHANGELOG.md +++ b/sdk/storage/azure-storage-blob/CHANGELOG.md @@ -11,7 +11,7 @@ and - Fixed a bug in the RetryPolicy that would apply the delay of a fixed retry policy to the first try. - Fixed a bug that could cause the overwrite flag to not be honored in cases where data was uploaded by another source after a parallel operation has already started. - Added overloads to accept an overwrite flag to commitBlockList and getBlobOutputStream. Note that this changes the default behavior of the min overload and these methods will now fail if they are attempting to overwrite data. -- Added generate*Sas methods on clients to improve discoverability and convenience of sas. Deprecated setContainerName, setBlobName, setSnapshotId, generateSasQueryParameters methods on BlobServiceSasSignatureValues to direct users to using the methods added on clients. +- Added SAS generation methods on clients to improve discoverability and convenience of sas. Deprecated setContainerName, setBlobName, setSnapshotId, generateSasQueryParameters methods on BlobServiceSasSignatureValues to direct users to using the methods added on clients. ## Version 12.0.0 (2019-10-31) diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasSignatureValues.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasSignatureValues.java index cbfadfddc7a1..8daced5eef70 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasSignatureValues.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/sas/BlobServiceSasSignatureValues.java @@ -18,7 +18,7 @@ /** * Used to initialize parameters for a Shared Access Signature (SAS) for an Azure Blob Storage service. Once all the - * values here are set, use the appropriate generate*Sas method on the desired container/blob client to obtain a + * values here are set, use the appropriate SAS generation method on the desired container/blob client to obtain a * representation of the SAS which can then be applied to a new client using the .sasToken(String) method on the * desired client builder. * @@ -296,7 +296,7 @@ public BlobServiceSasSignatureValues setSasIpRange(SasIpRange sasIpRange) { * Gets the name of the container the SAS user may access. * * @return The name of the container the SAS user may access. - * @deprecated Container name is not auto-populated by the generate*Sas methods provided on the desired + * @deprecated Container name is now auto-populated by the SAS generation methods provided on the desired * container/blob client. */ @Deprecated @@ -309,7 +309,7 @@ public String getContainerName() { * * @param containerName The name of the container. * @return The updated BlobServiceSASSignatureValues object. - * @deprecated Please use the generate*Sas methods provided on the desired container/blob client that will + * @deprecated Please use the SAS generation methods provided on the desired container/blob client that will * auto-populate the container name. */ @Deprecated @@ -324,7 +324,7 @@ public BlobServiceSasSignatureValues setContainerName(String containerName) { * * @return The decoded name of the blob the SAS user may access. {@code null} or an empty string is returned when a * creating a container SAS. - * @deprecated Blob name is now auto-populated by the generate*Sas methods provided on the desired blob client. + * @deprecated Blob name is now auto-populated by the SAS generation methods provided on the desired blob client. */ @Deprecated public String getBlobName() { @@ -336,7 +336,7 @@ public String getBlobName() { * * @param blobName The name of the blob. Use {@code null} or an empty string to create a container SAS. * @return The updated BlobServiceSASSignatureValues object. - * @deprecated Please use the generate*Sas methods provided on the desired blob client that will auto-populate the + * @deprecated Please use the SAS generation methods provided on the desired blob client that will auto-populate the * blob name. */ @Deprecated @@ -347,8 +347,8 @@ public BlobServiceSasSignatureValues setBlobName(String blobName) { /** * @return the specific snapshot the SAS user may access. - * @deprecated Snapshot id is now auto-populated by the generate*Sas methods provided on the desired (snapshot) blob - * client. + * @deprecated Snapshot id is now auto-populated by the SAS generation methods provided on the desired (snapshot) + * blob client. */ @Deprecated public String getSnapshotId() { @@ -363,7 +363,7 @@ public String getSnapshotId() { * * @param snapshotId Identifier of the snapshot * @return the updated BlobServiceSASSignatureValues object - * @deprecated Please use the generate*Sas methods provided on the desired (snapshot) blob client that will + * @deprecated Please use the SAS generation methods provided on the desired (snapshot) blob client that will * auto-populate the snapshot id. */ @Deprecated diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java index bbabd8818163..ebbe00be59f2 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java @@ -15,7 +15,6 @@ import com.azure.core.util.polling.LongRunningOperationStatus; import com.azure.core.util.polling.PollResponse; import com.azure.core.util.polling.PollerFlux; -import com.azure.storage.blob.BlobClientBuilder; import com.azure.storage.blob.BlobServiceAsyncClient; import com.azure.storage.blob.BlobServiceVersion; import com.azure.storage.blob.HttpGetterInfo; @@ -39,7 +38,6 @@ import com.azure.storage.blob.models.BlobStorageException; import com.azure.storage.blob.models.CopyStatusType; import com.azure.storage.blob.models.CpkInfo; -import com.azure.storage.blob.models.CustomerProvidedKey; import com.azure.storage.blob.models.DeleteSnapshotsOptionType; import com.azure.storage.blob.models.DownloadRetryOptions; import com.azure.storage.blob.models.ParallelTransferOptions; diff --git a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasQueryParameters.java b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasQueryParameters.java index 66ecfc39c8c3..362d7faaabd6 100644 --- a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasQueryParameters.java +++ b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasQueryParameters.java @@ -14,7 +14,7 @@ * appended to a URL directly (though caution should be taken here in case there are existing query parameters, which * might affect the appropriate means of appending these query parameters). NOTE: Instances of this class are immutable * to ensure thread safety. - * @deprecated Please use the generate*Sas method on the desired service client after initializing + * @deprecated Please use the generateSas method on the desired service client after initializing * {@link AccountSasSignatureValues}. */ @Deprecated @@ -83,7 +83,7 @@ public String getResourceTypes() { * Encodes all SAS query parameters into a string that can be appended to a URL. * * @return A {@code String} representing all SAS query parameters. - * @deprecated Please use the generate*Sas method on the desired service client after initializing + * @deprecated Please use the generateSas method on the desired service client after initializing * {@link AccountSasSignatureValues}. */ @Deprecated diff --git a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasSignatureValues.java b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasSignatureValues.java index ad792c4cc91f..9cfff06b1ed4 100644 --- a/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasSignatureValues.java +++ b/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/sas/AccountSasSignatureValues.java @@ -12,9 +12,8 @@ /** * Used to initialize parameters for a Shared Access Signature (SAS) for an Azure Storage account. Once all the - * values here are set, use the appropriate generate*Sas method on the desired service client to obtain a - * representation of the SAS which can then be applied to a new client using the .sasToken(String) method on the - * desired client builder. + * values here are set, use the generateSas method on the desired service client to obtain a representation of the SAS + * which can then be applied to a new client using the .sasToken(String) method on the desired client builder. * * @see Storage SAS overview * @see Create an account SAS From 11f708236e93e3f8b487edb41d39324ae580416e Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Wed, 27 Nov 2019 11:24:47 -0800 Subject: [PATCH 13/23] Removed new lines --- .../src/main/java/com/azure/storage/blob/BlobAsyncClient.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobAsyncClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobAsyncClient.java index 4c3c67ae36eb..0450df7d194d 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobAsyncClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobAsyncClient.java @@ -564,8 +564,6 @@ public Mono uploadFromFile(String filePath, ParallelTransferOptions parall } } - - boolean uploadInBlocks(String filePath) { AsynchronousFileChannel channel = uploadFileResourceSupplier(filePath); boolean retVal; From cf69e8bd086b5a5e3f566592aee30c816e6142fb Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Wed, 27 Nov 2019 12:09:18 -0800 Subject: [PATCH 14/23] removed unnecessary java doc snippets class --- ...SasSignatureValuesJavaDocCodeSnippets.java | 61 ------------------- 1 file changed, 61 deletions(-) delete mode 100644 sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobServiceSasSignatureValuesJavaDocCodeSnippets.java diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobServiceSasSignatureValuesJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobServiceSasSignatureValuesJavaDocCodeSnippets.java deleted file mode 100644 index 28545a360ab2..000000000000 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobServiceSasSignatureValuesJavaDocCodeSnippets.java +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. - -package com.azure.storage.blob.specialized; - -import com.azure.storage.blob.sas.BlobSasPermission; -import com.azure.storage.blob.models.UserDelegationKey; -import com.azure.storage.blob.sas.BlobServiceSasQueryParameters; -import com.azure.storage.blob.sas.BlobServiceSasSignatureValues; -import com.azure.storage.common.StorageSharedKeyCredential; -import com.azure.storage.common.sas.SasProtocol; - -import java.time.OffsetDateTime; - -/** - * Code snippets for {@link BlobServiceSasSignatureValues}. - */ -public class BlobServiceSasSignatureValuesJavaDocCodeSnippets { - /** - * Generates a blob SAS with {@link StorageSharedKeyCredential} - */ - public void blobSas() { - // BEGIN: com.azure.storage.blob.specialized.BlobServiceSasSignatureValues.generateSasQueryParameters#StorageSharedKeyCredential - BlobSasPermission blobPermission = new BlobSasPermission().setReadPermission(true); - - // We are creating a SAS to a blob because we set both the container name and blob name. - BlobServiceSasSignatureValues builder = new BlobServiceSasSignatureValues() - .setProtocol(SasProtocol.HTTPS_ONLY) // Users MUST use HTTPS (not HTTP). - .setExpiryTime(OffsetDateTime.now().plusDays(2)) - .setContainerName("my-container") - .setBlobName("HelloWorld.txt") - .setPermissions(blobPermission); - - StorageSharedKeyCredential credential = new StorageSharedKeyCredential("account-name", "key"); - BlobServiceSasQueryParameters sasQueryParameters = builder.generateSasQueryParameters(credential); - // END: com.azure.storage.blob.specialized.BlobServiceSasSignatureValues.generateSasQueryParameters#StorageSharedKeyCredential - } - - /** - * Generates a container SAS using {@link UserDelegationKey}. - */ - public void userDelegationKey() { - // BEGIN: com.azure.storage.blob.specialized.BlobServiceSasSignatureValues.generateSasQueryParameters#UserDelegationKey-String - BlobSasPermission blobPermission = new BlobSasPermission() - .setReadPermission(true) - .setWritePermission(true); - - // We are creating a SAS to a container because only container name is set. - BlobServiceSasSignatureValues builder = new BlobServiceSasSignatureValues() - .setProtocol(SasProtocol.HTTPS_ONLY) // Users MUST use HTTPS (not HTTP). - .setExpiryTime(OffsetDateTime.now().plusDays(2)) - .setContainerName("my-container") - .setPermissions(blobPermission); - - // Get a user delegation key after signing in with Azure AD - UserDelegationKey credential = new UserDelegationKey(); - String account = "my-blob-storage-account"; - BlobServiceSasQueryParameters sasQueryParameters = builder.generateSasQueryParameters(credential, account); - // END: com.azure.storage.blob.specialized.BlobServiceSasSignatureValues.generateSasQueryParameters#UserDelegationKey-String - } -} From 3bbdc6b37e29f25acc3ce360e1bf23abea2237e2 Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Mon, 2 Dec 2019 09:14:33 -0800 Subject: [PATCH 15/23] Removed unused imports --- .../azure/storage/blob/BlobAsyncClientJavaDocCodeSnippets.java | 2 -- .../com/azure/storage/blob/BlobClientJavaDocCodeSnippets.java | 2 -- 2 files changed, 4 deletions(-) diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobAsyncClientJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobAsyncClientJavaDocCodeSnippets.java index c843263a1131..eb3080f8d894 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobAsyncClientJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobAsyncClientJavaDocCodeSnippets.java @@ -13,8 +13,6 @@ import com.azure.storage.blob.models.ParallelTransferOptions; import com.azure.storage.blob.models.RehydratePriority; import com.azure.storage.blob.models.UserDelegationKey; -import com.azure.storage.blob.sas.BlobSasPermission; -import com.azure.storage.blob.sas.BlobServiceSasSignatureValues; import com.azure.storage.blob.specialized.BlobAsyncClientBase; import reactor.core.publisher.Flux; diff --git a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobClientJavaDocCodeSnippets.java b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobClientJavaDocCodeSnippets.java index cffd347c8025..8050fdd08d73 100644 --- a/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobClientJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobClientJavaDocCodeSnippets.java @@ -16,8 +16,6 @@ import com.azure.storage.blob.models.RehydratePriority; import com.azure.storage.blob.models.StorageAccountInfo; import com.azure.storage.blob.models.UserDelegationKey; -import com.azure.storage.blob.sas.BlobSasPermission; -import com.azure.storage.blob.sas.BlobServiceSasSignatureValues; import com.azure.storage.blob.specialized.BlobClientBase; import com.azure.storage.common.implementation.Constants; From 6a539de5a45b062266c426ecd286835da30e3a07 Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Tue, 3 Dec 2019 09:20:40 -0800 Subject: [PATCH 16/23] Added queue and file SAS --- .../azure-storage-file-share/CHANGELOG.md | 2 + .../storage/file/share/ShareAsyncClient.java | 29 +++ .../azure/storage/file/share/ShareClient.java | 27 ++ .../file/share/ShareDirectoryAsyncClient.java | 29 +++ .../file/share/ShareDirectoryClient.java | 27 ++ .../file/share/ShareFileAsyncClient.java | 29 +++ .../storage/file/share/ShareFileClient.java | 27 ++ .../file/share/ShareServiceAsyncClient.java | 30 +++ .../file/share/ShareServiceClient.java | 28 +++ .../implementation/util/ShareSasImplUtil.java | 232 ++++++++++++++++++ .../sas/ShareServiceSasSignatureValues.java | 78 ++++-- ...SasSignatureValuesJavaDocCodeSnippets.java | 53 ---- .../share/ShareAsyncJavaDocCodeSamples.java | 18 ++ ...ShareDirectoryAsyncJavaDocCodeSamples.java | 18 ++ .../ShareDirectoryJavaDocCodeSamples.java | 18 ++ .../ShareFileAsyncJavaDocCodeSamples.java | 18 ++ .../share/ShareFileJavaDocCodeSamples.java | 18 ++ .../file/share/ShareJavaDocCodeSamples.java | 18 ++ .../ShareServiceAsyncJavaDocCodeSamples.java | 26 ++ .../share/ShareServiceJavaDocCodeSamples.java | 25 ++ .../azure/storage/file/share/APISpec.groovy | 2 +- .../file/share/FileSasClientTests.groovy | 184 ++++++++++++++ ...stsAccountSASNetworkCreateDeleteShare.json | 94 +++++++ ...TestsFileSASNetworkTestDownloadUpload.json | 141 +++++++++++ ...entTestsFileSASNetworkTestUploadFails.json | 96 ++++++++ ...sShareSASNetworkIdentifierPermissions.json | 172 +++++++++++++ sdk/storage/azure-storage-queue/CHANGELOG.md | 3 + .../azure/storage/queue/QueueAsyncClient.java | 3 +- .../com/azure/storage/queue/QueueClient.java | 6 +- .../queue/QueueServiceAsyncClient.java | 30 +++ .../storage/queue/QueueServiceClient.java | 29 +++ .../implementation/util/QueueSasImplUtil.java | 43 +++- .../sas/QueueServiceSasQueryParameters.java | 3 - .../sas/QueueServiceSasSignatureValues.java | 23 +- .../QueueServiceAsyncJavaDocCodeSamples.java | 27 ++ .../queue/QueueServiceJavaDocCodeSamples.java | 26 ++ ...SasSignatureValuesJavaDocCodeSnippets.java | 46 ---- .../storage/queue/QueueSasClientTests.groovy | 201 +++++++++++++++ ...QueueServiceSASCreateQueueDeleteQueue.json | 83 +++++++ ...sTestAccountQueueServiceSASListQueues.json | 45 ++++ ...tQueueSASEnqueueDequeueWithIdentifier.json | 109 ++++++++ ...QueueSASEnqueueDequeueWithPermissions.json | 112 +++++++++ ...stQueueSASUpdateDeleteWithPermissions.json | 111 +++++++++ 43 files changed, 2189 insertions(+), 150 deletions(-) create mode 100644 sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/implementation/util/ShareSasImplUtil.java delete mode 100644 sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/FileServiceSasSignatureValuesJavaDocCodeSnippets.java create mode 100644 sdk/storage/azure-storage-file-share/src/test/java/com/azure/storage/file/share/FileSasClientTests.groovy create mode 100644 sdk/storage/azure-storage-file-share/src/test/resources/session-records/FileSasClientTestsAccountSASNetworkCreateDeleteShare.json create mode 100644 sdk/storage/azure-storage-file-share/src/test/resources/session-records/FileSasClientTestsFileSASNetworkTestDownloadUpload.json create mode 100644 sdk/storage/azure-storage-file-share/src/test/resources/session-records/FileSasClientTestsFileSASNetworkTestUploadFails.json create mode 100644 sdk/storage/azure-storage-file-share/src/test/resources/session-records/FileSasClientTestsShareSASNetworkIdentifierPermissions.json delete mode 100644 sdk/storage/azure-storage-queue/src/samples/java/com/azure/storage/queue/QueueServiceSasSignatureValuesJavaDocCodeSnippets.java create mode 100644 sdk/storage/azure-storage-queue/src/test/java/com/azure/storage/queue/QueueSasClientTests.groovy create mode 100644 sdk/storage/azure-storage-queue/src/test/resources/session-records/QueueSasClientTestsTestAccountQueueServiceSASCreateQueueDeleteQueue.json create mode 100644 sdk/storage/azure-storage-queue/src/test/resources/session-records/QueueSasClientTestsTestAccountQueueServiceSASListQueues.json create mode 100644 sdk/storage/azure-storage-queue/src/test/resources/session-records/QueueSasClientTestsTestQueueSASEnqueueDequeueWithIdentifier.json create mode 100644 sdk/storage/azure-storage-queue/src/test/resources/session-records/QueueSasClientTestsTestQueueSASEnqueueDequeueWithPermissions.json create mode 100644 sdk/storage/azure-storage-queue/src/test/resources/session-records/QueueSasClientTestsTestQueueSASUpdateDeleteWithPermissions.json diff --git a/sdk/storage/azure-storage-file-share/CHANGELOG.md b/sdk/storage/azure-storage-file-share/CHANGELOG.md index d9baa700ba37..f6c3df41996d 100644 --- a/sdk/storage/azure-storage-file-share/CHANGELOG.md +++ b/sdk/storage/azure-storage-file-share/CHANGELOG.md @@ -1,4 +1,6 @@ # Release History +## Version X.X.X (XXXX-XX-XX) +- Added SAS generation methods on clients to improve discoverability and convenience of sas. Deprecated setFilePath, setShareName generateSasQueryParameters methods on ShareServiceSasSignatureValues to direct users to using the methods added on clients. ## Version 12.0.0-preview.5 (2019-10-31) diff --git a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareAsyncClient.java b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareAsyncClient.java index 92f6c1c21f76..f7c91980a56c 100644 --- a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareAsyncClient.java +++ b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareAsyncClient.java @@ -15,6 +15,7 @@ import com.azure.core.util.Context; import com.azure.core.util.logging.ClientLogger; import com.azure.storage.common.StorageSharedKeyCredential; +import com.azure.storage.common.implementation.SasImplUtils; import com.azure.storage.file.share.implementation.AzureFileStorageImpl; import com.azure.storage.file.share.implementation.models.ShareCreateSnapshotHeaders; import com.azure.storage.file.share.implementation.models.ShareGetPropertiesHeaders; @@ -22,6 +23,7 @@ import com.azure.storage.file.share.implementation.models.SharesCreateSnapshotResponse; import com.azure.storage.file.share.implementation.models.SharesGetPropertiesResponse; import com.azure.storage.file.share.implementation.models.SharesGetStatisticsResponse; +import com.azure.storage.file.share.implementation.util.ShareSasImplUtil; import com.azure.storage.file.share.models.ShareFileHttpHeaders; import com.azure.storage.file.share.models.ShareSignedIdentifier; import com.azure.storage.file.share.models.ShareStorageException; @@ -29,6 +31,7 @@ import com.azure.storage.file.share.models.ShareProperties; import com.azure.storage.file.share.models.ShareSnapshotInfo; import com.azure.storage.file.share.models.ShareStatistics; +import com.azure.storage.file.share.sas.ShareServiceSasSignatureValues; import reactor.core.publisher.Mono; import java.time.OffsetDateTime; @@ -1028,6 +1031,32 @@ public String getAccountName() { return this.accountName; } + /** + * Gets the {@link HttpPipeline} powering this client. + * + * @return The pipeline. + */ + public HttpPipeline getHttpPipeline() { + return azureFileStorageClient.getHttpPipeline(); + } + + /** + * Generates a service sas for the queue using the specified {@link ShareServiceSasSignatureValues} + *

See {@link ShareServiceSasSignatureValues} for more information on how to construct a service SAS.

+ * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.file.share.ShareAsyncClient.generateSas#ShareServiceSasSignatureValues} + * + * @param shareServiceSasSignatureValues {@link ShareServiceSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateSas(ShareServiceSasSignatureValues shareServiceSasSignatureValues) { + return new ShareSasImplUtil(shareServiceSasSignatureValues, getShareName()) + .generateSas(SasImplUtils.extractSharedKeyCredential(getHttpPipeline())); + } + private Response mapToShareInfoResponse(Response response) { String eTag = response.getHeaders().getValue("ETag"); OffsetDateTime lastModified = diff --git a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareClient.java b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareClient.java index 8e499a8754d8..534b74c061af 100644 --- a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareClient.java +++ b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareClient.java @@ -4,6 +4,7 @@ package com.azure.storage.file.share; import com.azure.core.annotation.ServiceClient; +import com.azure.core.http.HttpPipeline; import com.azure.core.http.rest.PagedIterable; import com.azure.core.http.rest.Response; import com.azure.core.http.rest.SimpleResponse; @@ -17,6 +18,7 @@ import com.azure.storage.file.share.models.ShareProperties; import com.azure.storage.file.share.models.ShareSnapshotInfo; import com.azure.storage.file.share.models.ShareStatistics; +import com.azure.storage.file.share.sas.ShareServiceSasSignatureValues; import reactor.core.publisher.Mono; import java.time.Duration; @@ -812,4 +814,29 @@ public String getShareName() { public String getAccountName() { return this.client.getAccountName(); } + + /** + * Gets the {@link HttpPipeline} powering this client. + * + * @return The pipeline. + */ + public HttpPipeline getHttpPipeline() { + return this.client.getHttpPipeline(); + } + + /** + * Generates a service sas for the queue using the specified {@link ShareServiceSasSignatureValues} + *

See {@link ShareServiceSasSignatureValues} for more information on how to construct a service SAS.

+ * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.file.share.ShareAsyncClient.generateSas#ShareServiceSasSignatureValues} + * + * @param shareServiceSasSignatureValues {@link ShareServiceSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateSas(ShareServiceSasSignatureValues shareServiceSasSignatureValues) { + return this.client.generateSas(shareServiceSasSignatureValues); + } } diff --git a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareDirectoryAsyncClient.java b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareDirectoryAsyncClient.java index f2703f9349fc..7df4f5f872c0 100644 --- a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareDirectoryAsyncClient.java +++ b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareDirectoryAsyncClient.java @@ -15,6 +15,7 @@ import com.azure.core.util.logging.ClientLogger; import com.azure.storage.common.implementation.Constants; import com.azure.storage.common.StorageSharedKeyCredential; +import com.azure.storage.common.implementation.SasImplUtils; import com.azure.storage.common.implementation.StorageImplUtils; import com.azure.storage.file.share.implementation.AzureFileStorageImpl; import com.azure.storage.file.share.implementation.models.DirectorysCreateResponse; @@ -22,6 +23,7 @@ import com.azure.storage.file.share.implementation.models.DirectorysListFilesAndDirectoriesSegmentResponse; import com.azure.storage.file.share.implementation.models.DirectorysSetMetadataResponse; import com.azure.storage.file.share.implementation.models.DirectorysSetPropertiesResponse; +import com.azure.storage.file.share.implementation.util.ShareSasImplUtil; import com.azure.storage.file.share.models.ShareDirectoryInfo; import com.azure.storage.file.share.models.ShareDirectoryProperties; import com.azure.storage.file.share.models.ShareDirectorySetMetadataInfo; @@ -29,6 +31,7 @@ import com.azure.storage.file.share.models.ShareStorageException; import com.azure.storage.file.share.models.HandleItem; import com.azure.storage.file.share.models.ShareFileItem; +import com.azure.storage.file.share.sas.ShareServiceSasSignatureValues; import reactor.core.publisher.Mono; import java.nio.charset.StandardCharsets; @@ -967,6 +970,32 @@ public String getAccountName() { return this.accountName; } + /** + * Gets the {@link HttpPipeline} powering this client. + * + * @return The pipeline. + */ + public HttpPipeline getHttpPipeline() { + return azureFileStorageClient.getHttpPipeline(); + } + + /** + * Generates a service SAS for the directory using the specified {@link ShareServiceSasSignatureValues} + *

See {@link ShareServiceSasSignatureValues} for more information on how to construct a service SAS.

+ * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.file.share.ShareDirectoryAsyncClient.generateSas#ShareServiceSasSignatureValues} + * + * @param shareServiceSasSignatureValues {@link ShareServiceSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateSas(ShareServiceSasSignatureValues shareServiceSasSignatureValues) { + return new ShareSasImplUtil(shareServiceSasSignatureValues, getShareName(), getDirectoryPath()) + .generateSas(SasImplUtils.extractSharedKeyCredential(getHttpPipeline())); + } + private Response createWithRestResponse(final DirectorysCreateResponse response) { String eTag = response.getDeserializedHeaders().getETag(); OffsetDateTime lastModified = response.getDeserializedHeaders().getLastModified(); diff --git a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareDirectoryClient.java b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareDirectoryClient.java index 662dbc05cc26..3e615b5f657f 100644 --- a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareDirectoryClient.java +++ b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareDirectoryClient.java @@ -4,6 +4,7 @@ package com.azure.storage.file.share; import com.azure.core.annotation.ServiceClient; +import com.azure.core.http.HttpPipeline; import com.azure.core.http.rest.PagedIterable; import com.azure.core.http.rest.Response; import com.azure.core.http.rest.SimpleResponse; @@ -18,6 +19,7 @@ import com.azure.storage.file.share.models.HandleItem; import com.azure.storage.file.share.models.ShareStorageException; import com.azure.storage.file.share.models.ShareFileItem; +import com.azure.storage.file.share.sas.ShareServiceSasSignatureValues; import reactor.core.publisher.Mono; import java.time.Duration; @@ -745,4 +747,29 @@ public String getDirectoryPath() { public String getAccountName() { return this.shareDirectoryAsyncClient.getAccountName(); } + + /** + * Gets the {@link HttpPipeline} powering this client. + * + * @return The pipeline. + */ + public HttpPipeline getHttpPipeline() { + return this.shareDirectoryAsyncClient.getHttpPipeline(); + } + + /** + * Generates a service SAS for the directory using the specified {@link ShareServiceSasSignatureValues} + *

See {@link ShareServiceSasSignatureValues} for more information on how to construct a service SAS.

+ * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.file.share.ShareDirectoryClient.generateSas#ShareServiceSasSignatureValues} + * + * @param shareServiceSasSignatureValues {@link ShareServiceSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateSas(ShareServiceSasSignatureValues shareServiceSasSignatureValues) { + return this.shareDirectoryAsyncClient.generateSas(shareServiceSasSignatureValues); + } } diff --git a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareFileAsyncClient.java b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareFileAsyncClient.java index 57ed55b4d063..67b0e925d03a 100644 --- a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareFileAsyncClient.java +++ b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareFileAsyncClient.java @@ -19,6 +19,7 @@ import com.azure.core.util.polling.PollerFlux; import com.azure.storage.common.StorageSharedKeyCredential; import com.azure.storage.common.implementation.Constants; +import com.azure.storage.common.implementation.SasImplUtils; import com.azure.storage.common.implementation.StorageImplUtils; import com.azure.storage.file.share.implementation.AzureFileStorageImpl; import com.azure.storage.file.share.implementation.models.FileGetPropertiesHeaders; @@ -32,6 +33,7 @@ import com.azure.storage.file.share.implementation.models.FilesUploadRangeFromURLResponse; import com.azure.storage.file.share.implementation.models.FilesUploadRangeResponse; import com.azure.storage.file.share.implementation.models.ShareFileRangeWriteType; +import com.azure.storage.file.share.implementation.util.ShareSasImplUtil; import com.azure.storage.file.share.models.CopyStatusType; import com.azure.storage.file.share.models.ShareFileCopyInfo; import com.azure.storage.file.share.models.ShareFileDownloadAsyncResponse; @@ -44,6 +46,7 @@ import com.azure.storage.file.share.models.ShareFileUploadInfo; import com.azure.storage.file.share.models.ShareFileUploadRangeFromUrlInfo; import com.azure.storage.file.share.models.HandleItem; +import com.azure.storage.file.share.sas.ShareServiceSasSignatureValues; import reactor.core.Exceptions; import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; @@ -1324,6 +1327,32 @@ public String getAccountName() { return this.accountName; } + /** + * Gets the {@link HttpPipeline} powering this client. + * + * @return The pipeline. + */ + public HttpPipeline getHttpPipeline() { + return azureFileStorageClient.getHttpPipeline(); + } + + /** + * Generates a service SAS for the file using the specified {@link ShareServiceSasSignatureValues} + *

See {@link ShareServiceSasSignatureValues} for more information on how to construct a service SAS.

+ * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.file.share.ShareFileAsyncClient.generateSas#ShareServiceSasSignatureValues} + * + * @param shareServiceSasSignatureValues {@link ShareServiceSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateSas(ShareServiceSasSignatureValues shareServiceSasSignatureValues) { + return new ShareSasImplUtil(shareServiceSasSignatureValues, getShareName(), getFilePath()) + .generateSas(SasImplUtils.extractSharedKeyCredential(getHttpPipeline())); + } + private Response createFileInfoResponse(final FilesCreateResponse response) { String eTag = response.getDeserializedHeaders().getETag(); OffsetDateTime lastModified = response.getDeserializedHeaders().getLastModified(); diff --git a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareFileClient.java b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareFileClient.java index f7df15be29e7..efb247ff7625 100644 --- a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareFileClient.java +++ b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareFileClient.java @@ -4,6 +4,7 @@ package com.azure.storage.file.share; import com.azure.core.annotation.ServiceClient; +import com.azure.core.http.HttpPipeline; import com.azure.core.http.rest.PagedIterable; import com.azure.core.http.rest.Response; import com.azure.core.util.FluxUtil; @@ -24,6 +25,7 @@ import com.azure.storage.file.share.models.ShareFileUploadInfo; import com.azure.storage.file.share.models.ShareFileUploadRangeFromUrlInfo; import com.azure.storage.file.share.models.HandleItem; +import com.azure.storage.file.share.sas.ShareServiceSasSignatureValues; import reactor.core.Exceptions; import reactor.core.publisher.Mono; @@ -954,5 +956,30 @@ public String getFilePath() { public String getAccountName() { return this.shareFileAsyncClient.getAccountName(); } + + /** + * Gets the {@link HttpPipeline} powering this client. + * + * @return The pipeline. + */ + public HttpPipeline getHttpPipeline() { + return this.shareFileAsyncClient.getHttpPipeline(); + } + + /** + * Generates a service SAS for the file using the specified {@link ShareServiceSasSignatureValues} + *

See {@link ShareServiceSasSignatureValues} for more information on how to construct a service SAS.

+ * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.file.share.ShareFileClient.generateSas#ShareServiceSasSignatureValues} + * + * @param shareServiceSasSignatureValues {@link ShareServiceSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateSas(ShareServiceSasSignatureValues shareServiceSasSignatureValues) { + return this.shareFileAsyncClient.generateSas(shareServiceSasSignatureValues); + } } diff --git a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareServiceAsyncClient.java b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareServiceAsyncClient.java index fb75701d4415..d410c5aadb8f 100644 --- a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareServiceAsyncClient.java +++ b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareServiceAsyncClient.java @@ -4,6 +4,7 @@ package com.azure.storage.file.share; import com.azure.core.annotation.ServiceClient; +import com.azure.core.http.HttpPipeline; import com.azure.core.http.rest.PagedFlux; import com.azure.core.http.rest.PagedResponse; import com.azure.core.http.rest.Response; @@ -14,7 +15,10 @@ import com.azure.core.util.Context; import com.azure.core.util.logging.ClientLogger; import com.azure.storage.common.StorageSharedKeyCredential; +import com.azure.storage.common.implementation.AccountSasImplUtil; +import com.azure.storage.common.implementation.SasImplUtils; import com.azure.storage.common.implementation.StorageImplUtils; +import com.azure.storage.common.sas.AccountSasSignatureValues; import com.azure.storage.file.share.implementation.AzureFileStorageImpl; import com.azure.storage.file.share.implementation.models.DeleteSnapshotsOptionType; import com.azure.storage.file.share.implementation.models.ListSharesIncludeType; @@ -494,4 +498,30 @@ Mono> deleteShareWithResponse(String shareName, String snapshot, public String getAccountName() { return this.accountName; } + + /** + * Gets the {@link HttpPipeline} powering this client. + * + * @return The pipeline. + */ + public HttpPipeline getHttpPipeline() { + return this.azureFileStorageClient.getHttpPipeline(); + } + + /** + * Generates an account SAS for the Azure Storage account using the specified {@link AccountSasSignatureValues}. + *

See {@link AccountSasSignatureValues} for more information on how to construct an account SAS.

+ * + *

The snippet below generates a SAS that lasts for two days and gives the user read and list access to blob + * containers and file shares.

+ * {@codesnippet com.azure.storage.file.share.ShareServiceAsyncClient.generateAccountSas#AccountSasSignatureValues} + * + * @param accountSasSignatureValues {@link AccountSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateAccountSas(AccountSasSignatureValues accountSasSignatureValues) { + return new AccountSasImplUtil(accountSasSignatureValues) + .generateSas(SasImplUtils.extractSharedKeyCredential(getHttpPipeline())); + } } diff --git a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareServiceClient.java b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareServiceClient.java index 7ed0d31fa9fa..8c5ee65f885a 100644 --- a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareServiceClient.java +++ b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareServiceClient.java @@ -4,12 +4,14 @@ package com.azure.storage.file.share; import com.azure.core.annotation.ServiceClient; +import com.azure.core.http.HttpPipeline; import com.azure.core.http.rest.PagedIterable; import com.azure.core.http.rest.Response; import com.azure.core.http.rest.SimpleResponse; import com.azure.core.util.Context; import com.azure.storage.common.StorageSharedKeyCredential; import com.azure.storage.common.implementation.StorageImplUtils; +import com.azure.storage.common.sas.AccountSasSignatureValues; import com.azure.storage.file.share.models.ShareCorsRule; import com.azure.storage.file.share.models.ShareServiceProperties; import com.azure.storage.file.share.models.ListSharesOptions; @@ -377,4 +379,30 @@ public Response deleteShareWithResponse(String shareName, String snapshot, public String getAccountName() { return this.shareServiceAsyncClient.getAccountName(); } + + /** + * Gets the {@link HttpPipeline} powering this client. + * + * @return The pipeline. + */ + public HttpPipeline getHttpPipeline() { + return this.shareServiceAsyncClient.getHttpPipeline(); + } + + /** + * Generates an account SAS for the Azure Storage account using the specified {@link AccountSasSignatureValues}. + *

See {@link AccountSasSignatureValues} for more information on how to construct an account SAS.

+ * + *

Generating an account SAS

+ *

The snippet below generates an AccountSasSignatureValues object that lasts for two days and gives the user + * read and list access to blob and file shares.

+ * {@codesnippet com.azure.storage.file.share.ShareServiceClient.generateAccountSas#AccountSasSignatureValues} + * + * @param accountSasSignatureValues {@link AccountSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateAccountSas(AccountSasSignatureValues accountSasSignatureValues) { + return this.shareServiceAsyncClient.generateAccountSas(accountSasSignatureValues); + } } diff --git a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/implementation/util/ShareSasImplUtil.java b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/implementation/util/ShareSasImplUtil.java new file mode 100644 index 000000000000..59547e4316fe --- /dev/null +++ b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/implementation/util/ShareSasImplUtil.java @@ -0,0 +1,232 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. + +package com.azure.storage.file.share.implementation.util; + +import com.azure.core.util.CoreUtils; +import com.azure.core.util.logging.ClientLogger; +import com.azure.storage.common.StorageSharedKeyCredential; +import com.azure.storage.common.implementation.Constants; +import com.azure.storage.common.implementation.StorageImplUtils; +import com.azure.storage.common.sas.SasIpRange; +import com.azure.storage.common.sas.SasProtocol; +import com.azure.storage.file.share.ShareServiceVersion; +import com.azure.storage.file.share.sas.ShareFileSasPermission; +import com.azure.storage.file.share.sas.ShareSasPermission; +import com.azure.storage.file.share.sas.ShareServiceSasSignatureValues; + +import java.time.OffsetDateTime; +import java.util.Objects; + +import static com.azure.storage.common.implementation.SasImplUtils.formatQueryParameterDate; +import static com.azure.storage.common.implementation.SasImplUtils.tryAppendQueryParameter; + +/** + * This class provides helper methods for common file service sas patterns. + * + * RESERVED FOR INTERNAL USE. + */ +public class ShareSasImplUtil { + /** + * The SAS file constant. + */ + private static final String SAS_FILE_CONSTANT = "f"; + + /** + * The SAS share constant. + */ + private static final String SAS_SHARE_CONSTANT = "s"; + + private final ClientLogger logger = new ClientLogger(ShareSasImplUtil.class); + + private String version; + + private SasProtocol protocol; + + private OffsetDateTime startTime; + + private OffsetDateTime expiryTime; + + private String permissions; + + private SasIpRange sasIpRange; + + private String shareName; + + private String filePath; + + private String resource; + + private String identifier; + + private String cacheControl; + + private String contentDisposition; + + private String contentEncoding; + + private String contentLanguage; + + private String contentType; + + /** + * Creates a new {@link ShareSasImplUtil} with the specified parameters + * + * @param sasValues {@link ShareServiceSasSignatureValues} + * @param shareName The share name + */ + public ShareSasImplUtil(ShareServiceSasSignatureValues sasValues, String shareName) { + this(sasValues, shareName, null); + } + + /** + * Creates a new {@link ShareSasImplUtil} with the specified parameters + * + * @param sasValues {@link ShareServiceSasSignatureValues} + * @param shareName The share name + * @param filePath The file path + */ + public ShareSasImplUtil(ShareServiceSasSignatureValues sasValues, String shareName, String filePath) { + Objects.requireNonNull(sasValues); + this.version = sasValues.getVersion(); + this.protocol = sasValues.getProtocol(); + this.startTime = sasValues.getStartTime(); + this.expiryTime = sasValues.getExpiryTime(); + this.permissions = sasValues.getPermissions(); + this.sasIpRange = sasValues.getSasIpRange(); + this.shareName = shareName; + this.filePath = filePath; + this.identifier = sasValues.getIdentifier(); + this.cacheControl = sasValues.getCacheControl(); + this.contentDisposition = sasValues.getContentDisposition(); + this.contentEncoding = sasValues.getContentEncoding(); + this.contentLanguage = sasValues.getContentLanguage(); + this.contentType = sasValues.getContentType(); + } + + /** + * Generates a Sas signed with a {@link StorageSharedKeyCredential} + * + * @param storageSharedKeyCredentials {@link StorageSharedKeyCredential} + * @return A String representing the Sas + */ + public String generateSas(StorageSharedKeyCredential storageSharedKeyCredentials) { + StorageImplUtils.assertNotNull("storageSharedKeyCredentials", storageSharedKeyCredentials); + + ensureState(); + + // Signature is generated on the un-url-encoded values. + final String canonicalName = getCanonicalName(storageSharedKeyCredentials.getAccountName()); + final String signature = storageSharedKeyCredentials.computeHmac256(stringToSign(canonicalName)); + + return encode(signature); + } + + /** + * Encodes a Sas from the values in this type. + * @param signature The signature of the Sas. + * @return A String representing the Sas. + */ + private String encode(String signature) { + /* + We should be url-encoding each key and each value, but because we know all the keys and values will encode to + themselves, we cheat except for the signature value. + */ + StringBuilder sb = new StringBuilder(); + + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SERVICE_VERSION, this.version); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_PROTOCOL, this.protocol); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_START_TIME, formatQueryParameterDate(this.startTime)); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_EXPIRY_TIME, formatQueryParameterDate(this.expiryTime)); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_IP_RANGE, this.sasIpRange); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_IDENTIFIER, this.identifier); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_RESOURCE, this.resource); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_PERMISSIONS, this.permissions); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNATURE, signature); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_CACHE_CONTROL, this.cacheControl); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_CONTENT_DISPOSITION, this.contentDisposition); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_CONTENT_ENCODING, this.contentEncoding); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_CONTENT_LANGUAGE, this.contentLanguage); + tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_CONTENT_TYPE, this.contentType); + + return sb.toString(); + + } + + /** + * Ensures that the builder's properties are in a consistent state. + + * 1. If there is no version, use latest. + * 2. If there is no identifier set, ensure expiryTime and permissions are set. + * 3. Resource name is chosen by: + * a. If "FilePath" is _not_ set, it is a share resource. + * b. Otherwise, it is a file resource. + * 4. Reparse permissions depending on what the resource is. If it is an unrecognised resource, do nothing. + */ + private void ensureState() { + if (version == null) { + version = ShareServiceVersion.getLatest().getVersion(); + } + + if (identifier == null) { + if (expiryTime == null || permissions == null) { + throw logger.logExceptionAsError(new IllegalStateException("If identifier is not set, expiry time " + + "and permissions must be set")); + } + } + + if (CoreUtils.isNullOrEmpty(filePath)) { + resource = SAS_SHARE_CONSTANT; + } else { + resource = SAS_FILE_CONSTANT; + } + + if (permissions != null) { + switch (resource) { + case SAS_FILE_CONSTANT: + permissions = ShareFileSasPermission.parse(permissions).toString(); + break; + case SAS_SHARE_CONSTANT: + permissions = ShareSasPermission.parse(permissions).toString(); + break; + default: + // We won't reparse the permissions if we don't know the type. + logger.info("Not re-parsing permissions. Resource type '{}' is unknown.", resource); + break; + } + } + } + + /** + * Computes the canonical name for a share or file resource for SAS signing. + * Share: "/file/account/sharename" + * File: "/file/account/sharename/filename" + * File: "/file/account/sharename/directoryname/filename" + * + * @param account The name of the storage account. + * @return The canonical resource name. + */ + private String getCanonicalName(String account) { + return !CoreUtils.isNullOrEmpty(filePath) + ? String.format("/file/%s/%s/%s", account, shareName, filePath.replace("\\", "/")) + : String.format("/file/%s/%s", account, shareName); + } + + private String stringToSign(String canonicalName) { + return String.join("\n", + this.permissions == null ? "" : this.permissions, + this.startTime == null ? "" : Constants.ISO_8601_UTC_DATE_FORMATTER.format(this.startTime), + this.expiryTime == null ? "" : Constants.ISO_8601_UTC_DATE_FORMATTER.format(this.expiryTime), + canonicalName, + this.identifier == null ? "" : this.identifier, + this.sasIpRange == null ? "" : this.sasIpRange.toString(), + this.protocol == null ? "" : this.protocol.toString(), + this.version == null ? "" : this.version, + this.cacheControl == null ? "" : this.cacheControl, + this.contentDisposition == null ? "" : this.contentDisposition, + this.contentEncoding == null ? "" : this.contentEncoding, + this.contentLanguage == null ? "" : this.contentLanguage, + this.contentType == null ? "" : this.contentType + ); + } +} diff --git a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/sas/ShareServiceSasSignatureValues.java b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/sas/ShareServiceSasSignatureValues.java index 473606d94690..53a0597e7563 100644 --- a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/sas/ShareServiceSasSignatureValues.java +++ b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/sas/ShareServiceSasSignatureValues.java @@ -14,25 +14,12 @@ import java.time.OffsetDateTime; /** - * Used to generate a Shared Access Signature (SAS) for Azure Files service. Once all the values here are set - * appropriately, call {@link - * #generateSasQueryParameters(StorageSharedKeyCredential) generateSasQueryParameters(StorageSharedKeyCredential)} to - * obtain a representation of the SAS which can be applied to file urls. + * Used to initialize parameters for a Shared Access Signature (SAS) for an Azure File Storage service. Once all the + * values here are set, use the appropriate SAS generation method on the desired share/file/directory client to obtain a + * representation of the SAS which can then be applied to a new client using the .sasToken(String) method on the + * desired client builder. * - *

Generating a file share SAS

- *

The snippet below generates a file share SAS that lasts for three days, and gives the user read, create, and list - * permissions to the share. - * - * {@codesnippet com.azure.storage.file.fileServiceSasQueryParameters.generateSasQueryParameters.shareSas#StorageSharedKeyCredential} - * - *

Generating a file SAS

- *

The snippet below generates a file SAS that has the same duration and permissions specified by the - * {@link #setIdentifier(String) stored access policy}. - * - * {@codesnippet com.azure.storage.file.fileServiceSasQueryParameters.generateSasQueryParameters#StorageSharedKeyCredential} - * - * @see ShareServiceSasQueryParameters - * @see Storage SAS overview + * @see Storage SAS overview * @see Constructing a Service * SAS */ @@ -77,10 +64,50 @@ public final class ShareServiceSasSignatureValues { /** * Creates an object with empty values for all fields. + * @deprecated Please use {@link #ShareServiceSasSignatureValues(String)}, + * {@link #ShareServiceSasSignatureValues(OffsetDateTime, ShareSasPermission)}, or + * {@link #ShareServiceSasSignatureValues(OffsetDateTime, ShareFileSasPermission)} */ + @Deprecated public ShareServiceSasSignatureValues() { } + /** + * Creates an object with the specified expiry time and permissions + * + * @param expiryTime The time after which the SAS will no longer work. + * @param permissions {@link ShareSasPermission} allowed by the SAS. + */ + public ShareServiceSasSignatureValues(OffsetDateTime expiryTime, ShareSasPermission permissions) { + StorageImplUtils.assertNotNull("expiryTime", expiryTime); + StorageImplUtils.assertNotNull("permissions", permissions); + this.expiryTime = expiryTime; + this.permissions = permissions.toString(); + } + + /** + * Creates an object with the specified expiry time and permissions + * + * @param expiryTime The time after which the SAS will no longer work. + * @param permissions {@link ShareFileSasPermission} allowed by the SAS. + */ + public ShareServiceSasSignatureValues(OffsetDateTime expiryTime, ShareFileSasPermission permissions) { + StorageImplUtils.assertNotNull("expiryTime", expiryTime); + StorageImplUtils.assertNotNull("permissions", permissions); + this.expiryTime = expiryTime; + this.permissions = permissions.toString(); + } + + /** + * Creates an object with the specified identifier. + * + * @param identifier Name of the access policy. + */ + public ShareServiceSasSignatureValues(String identifier) { + StorageImplUtils.assertNotNull("identifier", identifier); + this.identifier = identifier; + } + /** * @return the version of the service this SAS will target. If not specified, it will default to the version * targeted by the library. @@ -211,7 +238,10 @@ public ShareServiceSasSignatureValues setSasIpRange(SasIpRange sasIpRange) { * Gets the name of the share being made accessible. * * @return The name of the share being made accessible. + * @deprecated Share name is now auto-populated by the SAS generation methods provided on the desired + * share/file/directory client. */ + @Deprecated public String getShareName() { return shareName; } @@ -221,7 +251,10 @@ public String getShareName() { * * @param shareName The name of the share being made accessible. * @return the updated FileServiceSasSignatureValues object + * @deprecated Please use the generateSas methods provided on the desired share/file/directory client that will + * auto-populate the share name. */ + @Deprecated public ShareServiceSasSignatureValues setShareName(String shareName) { this.shareName = shareName; return this; @@ -231,7 +264,10 @@ public ShareServiceSasSignatureValues setShareName(String shareName) { * Gets the path of the file or directory being made accessible. {@code null} or an empty string for a share SAS. * * @return The path of the file or directory being made accessible. {@code null} or an empty string for a share SAS. + * @deprecated File path is now auto-populated by the SAS generation methods provided on the desired file/directory + * client. */ + @Deprecated public String getFilePath() { return filePath; } @@ -242,7 +278,10 @@ public String getFilePath() { * * @param filePath The name of the share being made accessible. * @return the updated FileServiceSasSignatureValues object + * @deprecated Please use the generateSas methods provided on the desired file/directory client that will + * auto-populate the file path. */ + @Deprecated public ShareServiceSasSignatureValues setFilePath(String filePath) { this.filePath = filePath; return this; @@ -391,7 +430,10 @@ public ShareServiceSasSignatureValues setContentType(String contentType) { * encoded string, or the UTF-8 charset isn't supported. * @throws IllegalArgumentException if {@link #getPermissions()} contains an invalid character for the SAS resource. * @throws NullPointerException If {@code storageSharedKeyCredentials} is null. + * @deprecated Please use the generateSas(ShareServiceSasSignatureValues) method on the desired share/file/directory + * client after initializing {@link ShareServiceSasSignatureValues}. */ + @Deprecated public ShareServiceSasQueryParameters generateSasQueryParameters( StorageSharedKeyCredential storageSharedKeyCredentials) { StorageImplUtils.assertNotNull("storageSharedKeyCredentials", storageSharedKeyCredentials); diff --git a/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/FileServiceSasSignatureValuesJavaDocCodeSnippets.java b/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/FileServiceSasSignatureValuesJavaDocCodeSnippets.java deleted file mode 100644 index 4696f7190eac..000000000000 --- a/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/FileServiceSasSignatureValuesJavaDocCodeSnippets.java +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. -package com.azure.storage.file.share; - -import com.azure.storage.common.StorageSharedKeyCredential; -import com.azure.storage.file.share.sas.ShareSasPermission; -import com.azure.storage.file.share.sas.ShareServiceSasQueryParameters; -import com.azure.storage.file.share.sas.ShareServiceSasSignatureValues; - -import java.time.Duration; -import java.time.OffsetDateTime; - -/** - * Code snippets for {@link ShareServiceSasSignatureValues}. - */ -public class FileServiceSasSignatureValuesJavaDocCodeSnippets { - /** - * Creates a file share SAS. - */ - public void shareSas() { - // BEGIN: com.azure.storage.file.fileServiceSasQueryParameters.generateSasQueryParameters.shareSas#StorageSharedKeyCredential - StorageSharedKeyCredential credential = new StorageSharedKeyCredential("my-account", "key"); - ShareSasPermission permission = new ShareSasPermission() - .setCreatePermission(true) - .setReadPermission(true); - - // The expiry time and permissions are required to create a valid SAS - // if a stored access policy identifier is not set. - ShareServiceSasQueryParameters sasQueryParameters = new ShareServiceSasSignatureValues() - .setExpiryTime(OffsetDateTime.now().plus(Duration.ofDays(3))) - .setPermissions(permission) - .setShareName("file-share-name") - .generateSasQueryParameters(credential); - // END: com.azure.storage.file.fileServiceSasQueryParameters.generateSasQueryParameters.shareSas#StorageSharedKeyCredential - } - - /** - * Creates a file share SAS. - */ - public void fileSas() { - // BEGIN: com.azure.storage.file.fileServiceSasQueryParameters.generateSasQueryParameters#StorageSharedKeyCredential - StorageSharedKeyCredential credential = new StorageSharedKeyCredential("my-account", "key"); - - // The shared access policy, "read-write-user" exists in the storage account. The file SAS generated from this - // has the same duration and permissions as the policy. - // The expiry and permissions should not be set explicitly. - ShareServiceSasQueryParameters sasQueryParameters = new ShareServiceSasSignatureValues() - .setIdentifier("read-write-user") - .setShareName("file-share-name") - .generateSasQueryParameters(credential); - // END: com.azure.storage.file.fileServiceSasQueryParameters.generateSasQueryParameters#StorageSharedKeyCredential - } -} diff --git a/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareAsyncJavaDocCodeSamples.java b/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareAsyncJavaDocCodeSamples.java index 2ad1e5837cef..076c10fdbc54 100644 --- a/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareAsyncJavaDocCodeSamples.java +++ b/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareAsyncJavaDocCodeSamples.java @@ -7,6 +7,8 @@ import com.azure.storage.file.share.models.ShareFileHttpHeaders; import com.azure.storage.file.share.models.ShareSignedIdentifier; import com.azure.storage.file.share.models.NtfsFileAttributes; +import com.azure.storage.file.share.sas.ShareSasPermission; +import com.azure.storage.file.share.sas.ShareServiceSasSignatureValues; import java.time.LocalDateTime; import java.time.OffsetDateTime; @@ -527,4 +529,20 @@ public void getShareNameAsync() { System.out.println("The name of the share is " + shareName); // END: com.azure.storage.file.share.ShareAsyncClient.getShareName } + + /** + * Code snippet for {@link ShareAsyncClient#generateSas(ShareServiceSasSignatureValues)} + */ + public void generateSas() { + ShareAsyncClient shareAsyncClient = createAsyncClientWithCredential(); + // BEGIN: com.azure.storage.file.share.ShareAsyncClient.generateSas#ShareServiceSasSignatureValues + OffsetDateTime expiryTime = OffsetDateTime.now().plusDays(1); + ShareSasPermission permission = new ShareSasPermission().setReadPermission(true); + + ShareServiceSasSignatureValues values = new ShareServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + shareAsyncClient.generateSas(values); // Client must be authenticated via StorageSharedKeyCredential + // END: com.azure.storage.file.share.ShareAsyncClient.generateSas#ShareServiceSasSignatureValues + } } diff --git a/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareDirectoryAsyncJavaDocCodeSamples.java b/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareDirectoryAsyncJavaDocCodeSamples.java index 1f63f2589b18..ec1553145f98 100644 --- a/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareDirectoryAsyncJavaDocCodeSamples.java +++ b/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareDirectoryAsyncJavaDocCodeSamples.java @@ -5,6 +5,8 @@ import com.azure.storage.common.StorageSharedKeyCredential; import com.azure.storage.file.share.models.ShareFileHttpHeaders; import com.azure.storage.file.share.models.NtfsFileAttributes; +import com.azure.storage.file.share.sas.ShareFileSasPermission; +import com.azure.storage.file.share.sas.ShareServiceSasSignatureValues; import java.time.LocalDateTime; import java.time.OffsetDateTime; @@ -478,4 +480,20 @@ public void getDirectoryNameAsync() { System.out.println("The name of the directory is " + directoryPath); // END: com.azure.storage.file.share.ShareDirectoryAsyncClient.getDirectoryPath } + + /** + * Code snippet for {@link ShareDirectoryAsyncClient#generateSas(ShareServiceSasSignatureValues)} + */ + public void generateSas() { + ShareDirectoryAsyncClient shareDirectoryAsyncClient = createAsyncClientWithCredential(); + // BEGIN: com.azure.storage.file.share.ShareDirectoryAsyncClient.generateSas#ShareServiceSasSignatureValues + OffsetDateTime expiryTime = OffsetDateTime.now().plusDays(1); + ShareFileSasPermission permission = new ShareFileSasPermission().setReadPermission(true); + + ShareServiceSasSignatureValues values = new ShareServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + shareDirectoryAsyncClient.generateSas(values); // Client must be authenticated via StorageSharedKeyCredential + // END: com.azure.storage.file.share.ShareDirectoryAsyncClient.generateSas#ShareServiceSasSignatureValues + } } diff --git a/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareDirectoryJavaDocCodeSamples.java b/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareDirectoryJavaDocCodeSamples.java index bb83d58b12c5..1545f127e210 100644 --- a/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareDirectoryJavaDocCodeSamples.java +++ b/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareDirectoryJavaDocCodeSamples.java @@ -11,6 +11,8 @@ import com.azure.storage.file.share.models.ShareFileHttpHeaders; import com.azure.storage.file.share.models.HandleItem; import com.azure.storage.file.share.models.NtfsFileAttributes; +import com.azure.storage.file.share.sas.ShareFileSasPermission; +import com.azure.storage.file.share.sas.ShareServiceSasSignatureValues; import java.time.Duration; import java.time.LocalDateTime; @@ -470,4 +472,20 @@ public void getDirectoryPath() { System.out.println("The name of the directory is " + directoryPath); // END: com.azure.storage.file.share.ShareDirectoryClient.getDirectoryPath } + + /** + * Code snippet for {@link ShareDirectoryClient#generateSas(ShareServiceSasSignatureValues)} + */ + public void generateSas() { + ShareDirectoryClient shareDirectoryClient = createClientWithCredential(); + // BEGIN: com.azure.storage.file.share.ShareDirectoryClient.generateSas#ShareServiceSasSignatureValues + OffsetDateTime expiryTime = OffsetDateTime.now().plusDays(1); + ShareFileSasPermission permission = new ShareFileSasPermission().setReadPermission(true); + + ShareServiceSasSignatureValues values = new ShareServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + shareDirectoryClient.generateSas(values); // Client must be authenticated via StorageSharedKeyCredential + // END: com.azure.storage.file.share.ShareDirectoryClient.generateSas#ShareServiceSasSignatureValues + } } diff --git a/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareFileAsyncJavaDocCodeSamples.java b/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareFileAsyncJavaDocCodeSamples.java index e7aa0389d2a0..f4660efae484 100644 --- a/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareFileAsyncJavaDocCodeSamples.java +++ b/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareFileAsyncJavaDocCodeSamples.java @@ -9,6 +9,8 @@ import com.azure.storage.file.share.models.ShareFileProperties; import com.azure.storage.file.share.models.ShareFileRange; import com.azure.storage.file.share.models.NtfsFileAttributes; +import com.azure.storage.file.share.sas.ShareFileSasPermission; +import com.azure.storage.file.share.sas.ShareServiceSasSignatureValues; import reactor.core.publisher.Flux; import java.nio.ByteBuffer; @@ -630,4 +632,20 @@ public void getFilePathAsync() { System.out.println("The name of the file is " + filePath); // END: com.azure.storage.file.share.ShareFileAsyncClient.getFilePath } + + /** + * Code snippet for {@link ShareFileAsyncClient#generateSas(ShareServiceSasSignatureValues)} + */ + public void generateSas() { + ShareFileAsyncClient shareFileAsyncClient = createAsyncClientWithCredential(); + // BEGIN: com.azure.storage.file.share.ShareFileAsyncClient.generateSas#ShareServiceSasSignatureValues + OffsetDateTime expiryTime = OffsetDateTime.now().plusDays(1); + ShareFileSasPermission permission = new ShareFileSasPermission().setReadPermission(true); + + ShareServiceSasSignatureValues values = new ShareServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + shareFileAsyncClient.generateSas(values); // Client must be authenticated via StorageSharedKeyCredential + // END: com.azure.storage.file.share.ShareFileAsyncClient.generateSas#ShareServiceSasSignatureValues + } } diff --git a/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareFileJavaDocCodeSamples.java b/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareFileJavaDocCodeSamples.java index b023c5cd0b0c..812a518bcc5d 100644 --- a/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareFileJavaDocCodeSamples.java +++ b/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareFileJavaDocCodeSamples.java @@ -16,6 +16,8 @@ import com.azure.storage.file.share.models.ShareFileUploadInfo; import com.azure.storage.file.share.models.ShareFileUploadRangeFromUrlInfo; import com.azure.storage.file.share.models.NtfsFileAttributes; +import com.azure.storage.file.share.sas.ShareFileSasPermission; +import com.azure.storage.file.share.sas.ShareServiceSasSignatureValues; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; @@ -630,4 +632,20 @@ public void getName() { System.out.println("The name of the file is " + filePath); // END: com.azure.storage.file.share.ShareFileClient.getFilePath } + + /** + * Code snippet for {@link ShareFileClient#generateSas(ShareServiceSasSignatureValues)} + */ + public void generateSas() { + ShareFileClient shareFileClient = createClientWithCredential(); + // BEGIN: com.azure.storage.file.share.ShareFileClient.generateSas#ShareServiceSasSignatureValues + OffsetDateTime expiryTime = OffsetDateTime.now().plusDays(1); + ShareFileSasPermission permission = new ShareFileSasPermission().setReadPermission(true); + + ShareServiceSasSignatureValues values = new ShareServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + shareFileClient.generateSas(values); // Client must be authenticated via StorageSharedKeyCredential + // END: com.azure.storage.file.share.ShareFileClient.generateSas#ShareServiceSasSignatureValues + } } diff --git a/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareJavaDocCodeSamples.java b/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareJavaDocCodeSamples.java index 01b9221fb6e0..161532fb173b 100644 --- a/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareJavaDocCodeSamples.java +++ b/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareJavaDocCodeSamples.java @@ -13,6 +13,8 @@ import com.azure.storage.file.share.models.ShareProperties; import com.azure.storage.file.share.models.ShareSnapshotInfo; import com.azure.storage.file.share.models.ShareStatistics; +import com.azure.storage.file.share.sas.ShareSasPermission; +import com.azure.storage.file.share.sas.ShareServiceSasSignatureValues; import java.time.Duration; import java.time.LocalDateTime; @@ -517,4 +519,20 @@ public void getShareName() { System.out.println("The name of the share is " + shareName); // END: com.azure.storage.file.share.ShareClient.getShareName } + + /** + * Code snippet for {@link ShareClient#generateSas(ShareServiceSasSignatureValues)} + */ + public void generateSas() { + ShareClient shareClient = createClientWithCredential(); + // BEGIN: com.azure.storage.file.share.ShareClient.generateSas#ShareServiceSasSignatureValues + OffsetDateTime expiryTime = OffsetDateTime.now().plusDays(1); + ShareSasPermission permission = new ShareSasPermission().setReadPermission(true); + + ShareServiceSasSignatureValues values = new ShareServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + shareClient.generateSas(values); // Client must be authenticated via StorageSharedKeyCredential + // END: com.azure.storage.file.share.ShareClient.generateSas#ShareServiceSasSignatureValues + } } diff --git a/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareServiceAsyncJavaDocCodeSamples.java b/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareServiceAsyncJavaDocCodeSamples.java index 1c683674fae4..3ee712153943 100644 --- a/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareServiceAsyncJavaDocCodeSamples.java +++ b/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareServiceAsyncJavaDocCodeSamples.java @@ -3,9 +3,14 @@ package com.azure.storage.file.share; import com.azure.storage.common.StorageSharedKeyCredential; +import com.azure.storage.common.sas.AccountSasPermission; +import com.azure.storage.common.sas.AccountSasResourceType; +import com.azure.storage.common.sas.AccountSasService; +import com.azure.storage.common.sas.AccountSasSignatureValues; import com.azure.storage.file.share.models.ShareServiceProperties; import com.azure.storage.file.share.models.ListSharesOptions; +import java.time.Duration; import java.time.LocalDateTime; import java.time.OffsetDateTime; import java.time.ZoneOffset; @@ -260,4 +265,25 @@ public void clearPropertiesAsync() { }); // END: com.azure.storage.file.share.ShareServiceAsyncClient.setPropertiesWithResponse#fileServiceProperties.clearCORS } + + /** + * Code snippet for {@link ShareServiceAsyncClient#generateAccountSas(AccountSasSignatureValues)} + */ + public void generateAccountSas() { + ShareServiceAsyncClient fileServiceAsyncClient = createAsyncClientWithCredential(); + // BEGIN: com.azure.storage.file.share.ShareServiceAsyncClient.generateAccountSas#AccountSasSignatureValues + AccountSasPermission permissions = new AccountSasPermission() + .setListPermission(true) + .setReadPermission(true); + AccountSasResourceType resourceTypes = new AccountSasResourceType().setContainer(true); + AccountSasService services = new AccountSasService().setBlobAccess(true).setFileAccess(true); + OffsetDateTime expiryTime = OffsetDateTime.now().plus(Duration.ofDays(2)); + + AccountSasSignatureValues sasValues = + new AccountSasSignatureValues(expiryTime, permissions, services, resourceTypes); + + // Client must be authenticated via StorageSharedKeyCredential + String sas = fileServiceAsyncClient.generateAccountSas(sasValues); + // END: com.azure.storage.file.share.ShareServiceAsyncClient.generateAccountSas#AccountSasSignatureValues + } } diff --git a/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareServiceJavaDocCodeSamples.java b/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareServiceJavaDocCodeSamples.java index fa567fc2bf35..1278ec60d850 100644 --- a/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareServiceJavaDocCodeSamples.java +++ b/sdk/storage/azure-storage-file-share/src/samples/java/com/azure/storage/file/share/ShareServiceJavaDocCodeSamples.java @@ -5,6 +5,10 @@ import com.azure.core.http.rest.Response; import com.azure.core.util.Context; import com.azure.storage.common.StorageSharedKeyCredential; +import com.azure.storage.common.sas.AccountSasPermission; +import com.azure.storage.common.sas.AccountSasResourceType; +import com.azure.storage.common.sas.AccountSasService; +import com.azure.storage.common.sas.AccountSasSignatureValues; import com.azure.storage.file.share.models.ShareServiceProperties; import com.azure.storage.file.share.models.ListSharesOptions; @@ -251,4 +255,25 @@ public void clearProperties() { System.out.printf("Setting File service properties completed with status code %d", response.getStatusCode()); // END: com.azure.storage.file.share.ShareServiceClient.setPropertiesWithResponse#fileServiceProperties-Context.clearCORS } + + /** + * Code snippet for {@link ShareServiceClient#generateAccountSas(AccountSasSignatureValues)} + */ + public void generateAccountSas() { + ShareServiceClient fileServiceClient = createClientWithCredential(); + // BEGIN: com.azure.storage.file.share.ShareServiceClient.generateAccountSas#AccountSasSignatureValues + AccountSasPermission permissions = new AccountSasPermission() + .setListPermission(true) + .setReadPermission(true); + AccountSasResourceType resourceTypes = new AccountSasResourceType().setContainer(true); + AccountSasService services = new AccountSasService().setBlobAccess(true).setFileAccess(true); + OffsetDateTime expiryTime = OffsetDateTime.now().plus(Duration.ofDays(2)); + + AccountSasSignatureValues sasValues = + new AccountSasSignatureValues(expiryTime, permissions, services, resourceTypes); + + // Client must be authenticated via StorageSharedKeyCredential + String sas = fileServiceClient.generateAccountSas(sasValues); + // END: com.azure.storage.file.share.ShareServiceClient.generateAccountSas#AccountSasSignatureValues + } } diff --git a/sdk/storage/azure-storage-file-share/src/test/java/com/azure/storage/file/share/APISpec.groovy b/sdk/storage/azure-storage-file-share/src/test/java/com/azure/storage/file/share/APISpec.groovy index f1bfd26f5a0b..1014bb4394fc 100644 --- a/sdk/storage/azure-storage-file-share/src/test/java/com/azure/storage/file/share/APISpec.groovy +++ b/sdk/storage/azure-storage-file-share/src/test/java/com/azure/storage/file/share/APISpec.groovy @@ -39,7 +39,7 @@ class APISpec extends Specification { String connectionString // If debugging is enabled, recordings cannot run as there can only be one proxy at a time. - static boolean enableDebugging = false + static boolean enableDebugging = true /** * Setup the File service clients commonly used for the API tests. diff --git a/sdk/storage/azure-storage-file-share/src/test/java/com/azure/storage/file/share/FileSasClientTests.groovy b/sdk/storage/azure-storage-file-share/src/test/java/com/azure/storage/file/share/FileSasClientTests.groovy new file mode 100644 index 000000000000..49b2c198dca2 --- /dev/null +++ b/sdk/storage/azure-storage-file-share/src/test/java/com/azure/storage/file/share/FileSasClientTests.groovy @@ -0,0 +1,184 @@ +package com.azure.storage.file.share + +import com.azure.storage.common.StorageSharedKeyCredential +import com.azure.storage.common.implementation.Constants +import com.azure.storage.common.sas.AccountSasPermission +import com.azure.storage.common.sas.AccountSasResourceType +import com.azure.storage.common.sas.AccountSasService +import com.azure.storage.common.sas.AccountSasSignatureValues +import com.azure.storage.common.sas.SasIpRange +import com.azure.storage.common.sas.SasProtocol +import com.azure.storage.file.share.models.ShareAccessPolicy +import com.azure.storage.file.share.models.ShareSignedIdentifier +import com.azure.storage.file.share.models.ShareStorageException +import com.azure.storage.file.share.sas.ShareFileSasPermission +import com.azure.storage.file.share.sas.ShareSasPermission +import com.azure.storage.file.share.sas.ShareServiceSasSignatureValues + +import java.nio.charset.StandardCharsets +import java.time.OffsetDateTime + +class FileSasClientTests extends APISpec { + + private ShareFileClient primaryFileClient + private ShareClient primaryShareClient + private ShareServiceClient primaryFileServiceClient + private String shareName + + private String filePath = "filename" + private String data + + def setup() { + shareName = testResourceName.randomName(methodName, 60) + + primaryFileServiceClient = fileServiceBuilderHelper(interceptorManager).buildClient() + primaryShareClient = shareBuilderHelper(interceptorManager, shareName).buildClient() + primaryFileClient = fileBuilderHelper(interceptorManager, shareName, filePath).buildFileClient() + + data = "test" + primaryShareClient.create() + primaryFileClient.create(Constants.KB) + } + + ShareServiceSasSignatureValues generateValues(ShareFileSasPermission permission) { + return new ShareServiceSasSignatureValues(getUTCNow().plusDays(1), permission) + .setStartTime(getUTCNow().minusDays(1)) + .setProtocol(SasProtocol.HTTPS_HTTP) + .setSasIpRange(new SasIpRange() + .setIpMin("0.0.0.0") + .setIpMax("255.255.255.255")) + .setCacheControl("cache") + .setContentDisposition("disposition") + .setContentEncoding("encoding") + .setContentLanguage("language") + .setContentType("type") + } + + def "FileSAS network test download upload"() { + setup: + primaryFileClient.upload(getInputStream(data.getBytes()), (long) data.length()) + def permissions = new ShareFileSasPermission() + .setReadPermission(true) + .setWritePermission(true) + .setCreatePermission(true) + .setDeletePermission(true) + def sasValues = generateValues(permissions) + + when: + def sas = primaryFileClient.generateSas(sasValues) + def client = fileBuilderHelper(interceptorManager, shareName, filePath) + .endpoint(primaryFileClient.getFileUrl()) + .sasToken(sas) + .buildFileClient() + + def stream = new ByteArrayOutputStream() + client.download(stream) + + client.upload(getInputStream(data.getBytes(StandardCharsets.UTF_8)), (long) data.length()) + + then: + notThrown(ShareStorageException) + Arrays.copyOfRange(stream.toByteArray(), 0, data.length()) == data.getBytes(StandardCharsets.UTF_8) + } + + def "FileSAS network test upload fails"() { + setup: + def permissions = new ShareFileSasPermission() + .setReadPermission(true) + .setWritePermission(false) + .setCreatePermission(true) + .setDeletePermission(true) + def sasValues = generateValues(permissions) + + when: + def sas = primaryFileClient.generateSas(sasValues) + + def client = fileBuilderHelper(interceptorManager, shareName, filePath) + .endpoint(primaryFileClient.getFileUrl()) + .sasToken(sas) + .buildFileClient() + + client.upload(getInputStream(data.getBytes()), (long) data.length()) + + then: + thrown(ShareStorageException) + + when: + client.delete() + + then: + notThrown(ShareStorageException) + } + + def "ShareSAS network identifier permissions"() { + setup: + ShareSignedIdentifier identifier = new ShareSignedIdentifier() + .setId("0000") + .setAccessPolicy(new ShareAccessPolicy().setPermissions("rcwdl") + .setExpiresOn(getUTCNow().plusDays(1))) + primaryShareClient.setAccessPolicy(Arrays.asList(identifier)) + + // Check shareSASPermissions + ShareSasPermission permissions = new ShareSasPermission() + .setReadPermission(true) + .setWritePermission(true) + .setCreatePermission(true) + .setDeletePermission(true) + .setListPermission(true) + + OffsetDateTime expiryTime = getUTCNow().plusDays(1) + + when: + def sasValues = new ShareServiceSasSignatureValues(identifier.getId()) + def sasWithId = primaryShareClient.generateSas(sasValues) + + ShareClient client1 = shareBuilderHelper(interceptorManager, primaryShareClient.getShareName()) + .endpoint(primaryShareClient.getShareUrl()) + .sasToken(sasWithId) + .buildClient() + + client1.createDirectory("dir") + client1.deleteDirectory("dir") + + sasValues = new ShareServiceSasSignatureValues(expiryTime, permissions) + def sasWithPermissions = primaryShareClient.generateSas(sasValues) + def client2 = shareBuilderHelper(interceptorManager, primaryShareClient.getShareName()) + .endpoint(primaryFileClient.getFileUrl()) + .sasToken(sasWithPermissions) + .buildClient() + + client2.createDirectory("dir") + client2.deleteDirectory("dir") + + then: + notThrown(ShareStorageException) + } + + def "AccountSAS network create delete share"() { + setup: + def service = new AccountSasService() + .setFileAccess(true) + def resourceType = new AccountSasResourceType() + .setContainer(true) + .setService(true) + .setObject(true) + def permissions = new AccountSasPermission() + .setReadPermission(true) + .setCreatePermission(true) + .setDeletePermission(true) + def expiryTime = getUTCNow().plusDays(1) + + when: + def sasValues = new AccountSasSignatureValues(expiryTime, permissions, service, resourceType) + def sas = primaryFileServiceClient.generateAccountSas(sasValues) + def scBuilder = fileServiceBuilderHelper(interceptorManager) + scBuilder.endpoint(primaryFileServiceClient.getFileServiceUrl()) + .sasToken(sas) + def sc = scBuilder.buildClient() + sc.createShare("create") + sc.deleteShare("create") + + then: + notThrown(ShareStorageException) + } +} diff --git a/sdk/storage/azure-storage-file-share/src/test/resources/session-records/FileSasClientTestsAccountSASNetworkCreateDeleteShare.json b/sdk/storage/azure-storage-file-share/src/test/resources/session-records/FileSasClientTestsAccountSASNetworkCreateDeleteShare.json new file mode 100644 index 000000000000..525e5be8ec40 --- /dev/null +++ b/sdk/storage/azure-storage-file-share/src/test/resources/session-records/FileSasClientTestsAccountSASNetworkCreateDeleteShare.json @@ -0,0 +1,94 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "http://gapradev.file.core.windows.net/filesasclienttestsaccountsasnetworkcreatedeleteshare113593?restype=share", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-share/12.0.0-beta.6 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "7e2be6b5-1cb0-4427-a4b5-2870586edb47" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7780FD157E07E", + "Last-Modified" : "Tue, 03 Dec 2019 16:42:42 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "afed1108-e01a-001e-65f8-a97ee3000000", + "Date" : "Tue, 03 Dec 2019 16:42:42 GMT", + "x-ms-client-request-id" : "7e2be6b5-1cb0-4427-a4b5-2870586edb47" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "http://gapradev.file.core.windows.net/filesasclienttestsaccountsasnetworkcreatedeleteshare113593/filename", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-share/12.0.0-beta.6 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "755a910b-3f08-4c4c-b8e9-8bc61f59e1eb" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "x-ms-file-permission-key" : "15581347578553677299*8114634751575874941", + "x-ms-file-id" : "13835128424026341376", + "Server" : "Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-file-creation-time" : "2019-12-03T16:42:42.9247296Z", + "Last-Modified" : "Tue, 03 Dec 2019 16:42:42 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Tue, 03 Dec 2019 16:42:42 GMT", + "ETag" : "0x8D7780FD1670740", + "x-ms-file-attributes" : "Archive", + "x-ms-file-change-time" : "2019-12-03T16:42:42.9247296Z", + "x-ms-file-parent-id" : "0", + "Content-Length" : "0", + "x-ms-request-id" : "afed110a-e01a-001e-66f8-a97ee3000000", + "x-ms-client-request-id" : "755a910b-3f08-4c4c-b8e9-8bc61f59e1eb", + "x-ms-file-last-write-time" : "2019-12-03T16:42:42.9247296Z" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "http://gapradev.file.core.windows.net/create?restype=share&sv=2019-02-02&ss=f&srt=sco&se=2019-12-04T16%3A42%3A42Z&sp=rdc&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-share/12.0.0-beta.6 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "519d138f-a44c-49bc-ad0a-bb4773a76e02" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7780FD17BBBF2", + "Last-Modified" : "Tue, 03 Dec 2019 16:42:43 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "afed110c-e01a-001e-68f8-a97ee3000000", + "Date" : "Tue, 03 Dec 2019 16:42:42 GMT", + "x-ms-client-request-id" : "519d138f-a44c-49bc-ad0a-bb4773a76e02" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "http://gapradev.file.core.windows.net/create?restype=share&sv=2019-02-02&ss=f&srt=sco&se=2019-12-04T16%3A42%3A42Z&sp=rdc&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-share/12.0.0-beta.6 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e32d2076-17dd-4af8-9e24-1aa729b45517" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "afed110e-e01a-001e-69f8-a97ee3000000", + "Date" : "Tue, 03 Dec 2019 16:42:42 GMT", + "x-ms-client-request-id" : "e32d2076-17dd-4af8-9e24-1aa729b45517" + }, + "Exception" : null + } ], + "variables" : [ "filesasclienttestsaccountsasnetworkcreatedeleteshare113593", "2019-12-03T16:42:42.972784200Z" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-share/src/test/resources/session-records/FileSasClientTestsFileSASNetworkTestDownloadUpload.json b/sdk/storage/azure-storage-file-share/src/test/resources/session-records/FileSasClientTestsFileSASNetworkTestDownloadUpload.json new file mode 100644 index 000000000000..86530822d606 --- /dev/null +++ b/sdk/storage/azure-storage-file-share/src/test/resources/session-records/FileSasClientTestsFileSASNetworkTestDownloadUpload.json @@ -0,0 +1,141 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "http://gapradev.file.core.windows.net/filesasclienttestsfilesasnetworktestdownloadupload11910eb?restype=share", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-share/12.0.0-beta.6 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "60ec0837-286a-40a8-a093-43ab191d92a7" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7780FC6BF0439", + "Last-Modified" : "Tue, 03 Dec 2019 16:42:25 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "afed10cf-e01a-001e-48f8-a97ee3000000", + "Date" : "Tue, 03 Dec 2019 16:42:24 GMT", + "x-ms-client-request-id" : "60ec0837-286a-40a8-a093-43ab191d92a7" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "http://gapradev.file.core.windows.net/filesasclienttestsfilesasnetworktestdownloadupload11910eb/filename", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-share/12.0.0-beta.6 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "870f1cfa-6d8a-48cd-b597-fe305a4192ed" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "x-ms-file-permission-key" : "15581347578553677299*8114634751575874941", + "x-ms-file-id" : "13835128424026341376", + "Server" : "Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-file-creation-time" : "2019-12-03T16:42:25.2568727Z", + "Last-Modified" : "Tue, 03 Dec 2019 16:42:25 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Tue, 03 Dec 2019 16:42:24 GMT", + "ETag" : "0x8D7780FC6DF2097", + "x-ms-file-attributes" : "Archive", + "x-ms-file-change-time" : "2019-12-03T16:42:25.2568727Z", + "x-ms-file-parent-id" : "0", + "Content-Length" : "0", + "x-ms-request-id" : "afed10d2-e01a-001e-49f8-a97ee3000000", + "x-ms-client-request-id" : "870f1cfa-6d8a-48cd-b597-fe305a4192ed", + "x-ms-file-last-write-time" : "2019-12-03T16:42:25.2568727Z" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "http://gapradev.file.core.windows.net/filesasclienttestsfilesasnetworktestdownloadupload11910eb/filename?comp=range", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-share/12.0.0-beta.6 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "7466e09f-410c-4560-9b15-a6f3aa1a77ff", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7780FC6F3B7F6", + "Last-Modified" : "Tue, 03 Dec 2019 16:42:25 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "afed10d4-e01a-001e-4af8-a97ee3000000", + "x-ms-request-server-encrypted" : "true", + "Date" : "Tue, 03 Dec 2019 16:42:24 GMT", + "x-ms-client-request-id" : "7466e09f-410c-4560-9b15-a6f3aa1a77ff", + "Content-MD5" : "CY9rzUYh03PK3k6DJie09g==" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "http://gapradev.file.core.windows.net/filesasclienttestsfilesasnetworktestdownloadupload11910eb/filename?sv=2019-02-02&spr=https%2Chttp&st=2019-12-02T16%3A42%3A25Z&se=2019-12-04T16%3A42%3A25Z&sip=0.0.0.0-255.255.255.255&sr=f&sp=rcwd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-share/12.0.0-beta.6 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "28800290-c247-4d65-adc2-957c41c6c009" + }, + "Response" : { + "x-ms-lease-status" : "unlocked", + "x-ms-file-id" : "13835128424026341376", + "Server" : "Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-file-creation-time" : "2019-12-03T16:42:25.2568727Z", + "Access-Control-Allow-Origin" : "*", + "x-ms-lease-state" : "available", + "Last-Modified" : "Tue, 03 Dec 2019 16:42:25 GMT", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-file-attributes" : "Archive", + "Content-Length" : "1024", + "x-ms-request-id" : "afed10d5-e01a-001e-4bf8-a97ee3000000", + "Body" : "test\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000", + "Content-Type" : "type", + "x-ms-file-permission-key" : "15581347578553677299*8114634751575874941", + "x-ms-version" : "2019-02-02", + "Date" : "Tue, 03 Dec 2019 16:42:24 GMT", + "Accept-Ranges" : "bytes", + "x-ms-server-encrypted" : "true", + "x-ms-type" : "File", + "Cache-Control" : "cache", + "ETag" : "0x8D7780FC6F3B7F6", + "Content-Disposition" : "disposition", + "x-ms-file-change-time" : "2019-12-03T16:42:25.2568727Z", + "x-ms-file-parent-id" : "0", + "Content-Language" : "language", + "x-ms-client-request-id" : "28800290-c247-4d65-adc2-957c41c6c009", + "x-ms-file-last-write-time" : "2019-12-03T16:42:25.2568727Z" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "http://gapradev.file.core.windows.net/filesasclienttestsfilesasnetworktestdownloadupload11910eb/filename?comp=range&sv=2019-02-02&spr=https%2Chttp&st=2019-12-02T16%3A42%3A25Z&se=2019-12-04T16%3A42%3A25Z&sip=0.0.0.0-255.255.255.255&sr=f&sp=rcwd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-share/12.0.0-beta.6 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "6b3471ea-f4ce-4ed7-8c4e-8c9e72515354", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7780FC71A7995", + "Last-Modified" : "Tue, 03 Dec 2019 16:42:25 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "afed10d6-e01a-001e-4cf8-a97ee3000000", + "x-ms-request-server-encrypted" : "true", + "Date" : "Tue, 03 Dec 2019 16:42:25 GMT", + "x-ms-client-request-id" : "6b3471ea-f4ce-4ed7-8c4e-8c9e72515354", + "Content-MD5" : "CY9rzUYh03PK3k6DJie09g==" + }, + "Exception" : null + } ], + "variables" : [ "filesasclienttestsfilesasnetworktestdownloadupload11910eb", "2019-12-03T16:42:25.407336100Z", "2019-12-03T16:42:25.412335400Z" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-share/src/test/resources/session-records/FileSasClientTestsFileSASNetworkTestUploadFails.json b/sdk/storage/azure-storage-file-share/src/test/resources/session-records/FileSasClientTestsFileSASNetworkTestUploadFails.json new file mode 100644 index 000000000000..43770ac4b7e0 --- /dev/null +++ b/sdk/storage/azure-storage-file-share/src/test/resources/session-records/FileSasClientTestsFileSASNetworkTestUploadFails.json @@ -0,0 +1,96 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "http://gapradev.file.core.windows.net/filesasclienttestsfilesasnetworktestuploadfails035865738?restype=share", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-share/12.0.0-beta.6 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "3c987ad0-40ee-4aee-9b3c-ca497b37ec2a" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7780FD06E43C6", + "Last-Modified" : "Tue, 03 Dec 2019 16:42:41 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "afed10f9-e01a-001e-59f8-a97ee3000000", + "Date" : "Tue, 03 Dec 2019 16:42:40 GMT", + "x-ms-client-request-id" : "3c987ad0-40ee-4aee-9b3c-ca497b37ec2a" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "http://gapradev.file.core.windows.net/filesasclienttestsfilesasnetworktestuploadfails035865738/filename", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-share/12.0.0-beta.6 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b4c65739-2b44-49c2-8ae7-0ba57922072d" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "x-ms-file-permission-key" : "15581347578553677299*8114634751575874941", + "x-ms-file-id" : "13835128424026341376", + "Server" : "Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-file-creation-time" : "2019-12-03T16:42:41.3937251Z", + "Last-Modified" : "Tue, 03 Dec 2019 16:42:41 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Tue, 03 Dec 2019 16:42:40 GMT", + "ETag" : "0x8D7780FD07D6A63", + "x-ms-file-attributes" : "Archive", + "x-ms-file-change-time" : "2019-12-03T16:42:41.3937251Z", + "x-ms-file-parent-id" : "0", + "Content-Length" : "0", + "x-ms-request-id" : "afed10fb-e01a-001e-5af8-a97ee3000000", + "x-ms-client-request-id" : "b4c65739-2b44-49c2-8ae7-0ba57922072d", + "x-ms-file-last-write-time" : "2019-12-03T16:42:41.3937251Z" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "http://gapradev.file.core.windows.net/filesasclienttestsfilesasnetworktestuploadfails035865738/filename?comp=range&sv=2019-02-02&spr=https%2Chttp&st=2019-12-02T16%3A42%3A41Z&se=2019-12-04T16%3A42%3A41Z&sip=0.0.0.0-255.255.255.255&sr=f&sp=rcd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-share/12.0.0-beta.6 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "1e975055-b2ed-416f-86cd-269521410521", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-error-code" : "AuthorizationPermissionMismatch", + "retry-after" : "0", + "Content-Length" : "279", + "StatusCode" : "403", + "x-ms-request-id" : "afed10fc-e01a-001e-5bf8-a97ee3000000", + "Body" : "AuthorizationPermissionMismatchThis request is not authorized to perform this operation using this permission.\nRequestId:afed10fc-e01a-001e-5bf8-a97ee3000000\nTime:2019-12-03T16:42:41.4814328Z", + "Date" : "Tue, 03 Dec 2019 16:42:40 GMT", + "x-ms-client-request-id" : "1e975055-b2ed-416f-86cd-269521410521", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "http://gapradev.file.core.windows.net/filesasclienttestsfilesasnetworktestuploadfails035865738/filename?sv=2019-02-02&spr=https%2Chttp&st=2019-12-02T16%3A42%3A41Z&se=2019-12-04T16%3A42%3A41Z&sip=0.0.0.0-255.255.255.255&sr=f&sp=rcd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-share/12.0.0-beta.6 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "a2c711b5-a161-4a96-a14e-27f13a649684" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "afed10fd-e01a-001e-5cf8-a97ee3000000", + "Date" : "Tue, 03 Dec 2019 16:42:40 GMT", + "x-ms-client-request-id" : "a2c711b5-a161-4a96-a14e-27f13a649684" + }, + "Exception" : null + } ], + "variables" : [ "filesasclienttestsfilesasnetworktestuploadfails035865738", "2019-12-03T16:42:41.404028Z", "2019-12-03T16:42:41.404028Z" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-share/src/test/resources/session-records/FileSasClientTestsShareSASNetworkIdentifierPermissions.json b/sdk/storage/azure-storage-file-share/src/test/resources/session-records/FileSasClientTestsShareSASNetworkIdentifierPermissions.json new file mode 100644 index 000000000000..31cbba329d73 --- /dev/null +++ b/sdk/storage/azure-storage-file-share/src/test/resources/session-records/FileSasClientTestsShareSASNetworkIdentifierPermissions.json @@ -0,0 +1,172 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "http://gapradev.file.core.windows.net/filesasclienttestssharesasnetworkidentifierpermissions30482?restype=share", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-share/12.0.0-beta.6 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "fb2d3bc3-67f4-40ce-8196-32ea86f1944d" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7780FD0CABB76", + "Last-Modified" : "Tue, 03 Dec 2019 16:42:41 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "afed10fe-e01a-001e-5df8-a97ee3000000", + "Date" : "Tue, 03 Dec 2019 16:42:41 GMT", + "x-ms-client-request-id" : "fb2d3bc3-67f4-40ce-8196-32ea86f1944d" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "http://gapradev.file.core.windows.net/filesasclienttestssharesasnetworkidentifierpermissions30482/filename", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-share/12.0.0-beta.6 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ad57e220-658e-4c27-936e-dff774b85580" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "x-ms-file-permission-key" : "15581347578553677299*8114634751575874941", + "x-ms-file-id" : "13835128424026341376", + "Server" : "Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-file-creation-time" : "2019-12-03T16:42:42.0017909Z", + "Last-Modified" : "Tue, 03 Dec 2019 16:42:42 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Tue, 03 Dec 2019 16:42:41 GMT", + "ETag" : "0x8D7780FD0DA32F5", + "x-ms-file-attributes" : "Archive", + "x-ms-file-change-time" : "2019-12-03T16:42:42.0017909Z", + "x-ms-file-parent-id" : "0", + "Content-Length" : "0", + "x-ms-request-id" : "afed1100-e01a-001e-5ef8-a97ee3000000", + "x-ms-client-request-id" : "ad57e220-658e-4c27-936e-dff774b85580", + "x-ms-file-last-write-time" : "2019-12-03T16:42:42.0017909Z" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "http://gapradev.file.core.windows.net/filesasclienttestssharesasnetworkidentifierpermissions30482?restype=share&comp=acl", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-share/12.0.0-beta.6 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "60632e25-9ed9-4ce6-8b3c-5cca1d156f87", + "Content-Type" : "application/xml; charset=utf-8" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7780FD0EB63AF", + "Last-Modified" : "Tue, 03 Dec 2019 16:42:42 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "afed1102-e01a-001e-5ff8-a97ee3000000", + "Date" : "Tue, 03 Dec 2019 16:42:41 GMT", + "x-ms-client-request-id" : "60632e25-9ed9-4ce6-8b3c-5cca1d156f87" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "http://gapradev.file.core.windows.net/filesasclienttestssharesasnetworkidentifierpermissions30482/dir?restype=directory&sv=2019-02-02&si=0000&sr=s&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-share/12.0.0-beta.6 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "1d9c9bcf-7fa9-4896-9f90-209b614233dd" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "x-ms-file-permission-key" : "1749612463032355572*8114634751575874941", + "x-ms-file-id" : "11529285414812647424", + "Server" : "Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-file-creation-time" : "2019-12-03T16:42:42.2587658Z", + "Last-Modified" : "Tue, 03 Dec 2019 16:42:42 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Tue, 03 Dec 2019 16:42:41 GMT", + "ETag" : "0x8D7780FD101690A", + "x-ms-file-attributes" : "Directory", + "x-ms-file-change-time" : "2019-12-03T16:42:42.2587658Z", + "x-ms-file-parent-id" : "0", + "Content-Length" : "0", + "x-ms-request-id" : "afed1103-e01a-001e-60f8-a97ee3000000", + "x-ms-client-request-id" : "1d9c9bcf-7fa9-4896-9f90-209b614233dd", + "x-ms-file-last-write-time" : "2019-12-03T16:42:42.2587658Z" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "http://gapradev.file.core.windows.net/filesasclienttestssharesasnetworkidentifierpermissions30482/dir?restype=directory&sv=2019-02-02&si=0000&sr=s&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-share/12.0.0-beta.6 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "2b65328c-a133-4a8d-bcdf-2aa9f212f34c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "afed1104-e01a-001e-61f8-a97ee3000000", + "Date" : "Tue, 03 Dec 2019 16:42:41 GMT", + "x-ms-client-request-id" : "2b65328c-a133-4a8d-bcdf-2aa9f212f34c" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "http://gapradev.file.core.windows.net/filesasclienttestssharesasnetworkidentifierpermissions30482/dir?restype=directory&sv=2019-02-02&se=2019-12-04T16%3A42%3A42Z&sr=s&sp=rcwdl&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-share/12.0.0-beta.6 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "7fbc9bd9-c173-4ebe-bde0-536f5b8793a6" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "x-ms-file-permission-key" : "1749612463032355572*8114634751575874941", + "x-ms-file-id" : "16140971433240035328", + "Server" : "Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-file-creation-time" : "2019-12-03T16:42:42.4627566Z", + "Last-Modified" : "Tue, 03 Dec 2019 16:42:42 GMT", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-server-encrypted" : "true", + "Date" : "Tue, 03 Dec 2019 16:42:41 GMT", + "ETag" : "0x8D7780FD120896E", + "x-ms-file-attributes" : "Directory", + "x-ms-file-change-time" : "2019-12-03T16:42:42.4627566Z", + "x-ms-file-parent-id" : "0", + "Content-Length" : "0", + "x-ms-request-id" : "afed1106-e01a-001e-63f8-a97ee3000000", + "x-ms-client-request-id" : "7fbc9bd9-c173-4ebe-bde0-536f5b8793a6", + "x-ms-file-last-write-time" : "2019-12-03T16:42:42.4627566Z" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "http://gapradev.file.core.windows.net/filesasclienttestssharesasnetworkidentifierpermissions30482/dir?restype=directory&sv=2019-02-02&se=2019-12-04T16%3A42%3A42Z&sr=s&sp=rcwdl&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-share/12.0.0-beta.6 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d6d7298e-c599-403c-b205-b5ea2eb3fd68" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "afed1107-e01a-001e-64f8-a97ee3000000", + "Date" : "Tue, 03 Dec 2019 16:42:41 GMT", + "x-ms-client-request-id" : "d6d7298e-c599-403c-b205-b5ea2eb3fd68" + }, + "Exception" : null + } ], + "variables" : [ "filesasclienttestssharesasnetworkidentifierpermissions30482", "2019-12-03T16:42:42.017575800Z", "2019-12-03T16:42:42.152625600Z" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-queue/CHANGELOG.md b/sdk/storage/azure-storage-queue/CHANGELOG.md index 165137ed888e..50ea83b3d260 100644 --- a/sdk/storage/azure-storage-queue/CHANGELOG.md +++ b/sdk/storage/azure-storage-queue/CHANGELOG.md @@ -1,4 +1,7 @@ # Release History +## Version X.X.X (XXXX-XX-XX) +- Added SAS generation methods on clients to improve discoverability and convenience of sas. Deprecated setQueueName, generateSasQueryParameters methods on QueueServiceSasSignatureValues to direct users to using the methods added on clients. + ## Version 12.0.0 (2019-10-31) - Removed QueueMessage from public API - Removed BaseQueueClientBuilder diff --git a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueAsyncClient.java b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueAsyncClient.java index 6694eac74b36..0bc6b8b9e15a 100644 --- a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueAsyncClient.java +++ b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueAsyncClient.java @@ -13,6 +13,7 @@ import com.azure.core.util.Context; import com.azure.core.util.logging.ClientLogger; import com.azure.storage.common.StorageSharedKeyCredential; +import com.azure.storage.common.implementation.SasImplUtils; import com.azure.storage.common.implementation.StorageImplUtils; import com.azure.storage.queue.implementation.AzureQueueStorageImpl; import com.azure.storage.queue.implementation.models.MessageIdUpdateHeaders; @@ -903,7 +904,7 @@ public String getAccountName() { /** * Generates a service sas for the queue using the specified {@link QueueServiceSasSignatureValues} - * @see QueueServiceSasSignatureValues for more information on how to construct a service SAS. + *

See {@link QueueServiceSasSignatureValues} for more information on how to construct a service SAS.

* *

Code Samples

* diff --git a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueClient.java b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueClient.java index d5220464eb5f..86f4c89fed3c 100644 --- a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueClient.java +++ b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueClient.java @@ -9,7 +9,6 @@ import com.azure.core.util.Context; import com.azure.storage.common.StorageSharedKeyCredential; import com.azure.storage.common.implementation.StorageImplUtils; -import com.azure.storage.queue.implementation.util.QueueSasImplUtil; import com.azure.storage.queue.models.PeekedMessageItem; import com.azure.storage.queue.models.QueueMessageItem; import com.azure.storage.queue.models.QueueProperties; @@ -705,7 +704,7 @@ public String getAccountName() { /** * Generates a service sas for the queue using the specified {@link QueueServiceSasSignatureValues} - * @see QueueServiceSasSignatureValues for more information on how to construct a service SAS. + *

See {@link QueueServiceSasSignatureValues} for more information on how to construct a service SAS.

* *

Code Samples

* @@ -716,7 +715,6 @@ public String getAccountName() { * @return A {@code String} representing all SAS query parameters. */ public String generateSas(QueueServiceSasSignatureValues queueServiceSasSignatureValues) { - return new QueueSasImplUtil(queueServiceSasSignatureValues, getQueueName()) - .generateSas(SasImplUtils.extractSharedKeyCredential(getHttpPipeline())); + return this.client.generateSas(queueServiceSasSignatureValues); } } diff --git a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueServiceAsyncClient.java b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueServiceAsyncClient.java index 94feb3fc6139..27dc13d90ccd 100644 --- a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueServiceAsyncClient.java +++ b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueServiceAsyncClient.java @@ -3,6 +3,7 @@ package com.azure.storage.queue; import com.azure.core.annotation.ServiceClient; +import com.azure.core.http.HttpPipeline; import com.azure.core.http.rest.PagedFlux; import com.azure.core.http.rest.PagedResponse; import com.azure.core.http.rest.Response; @@ -12,7 +13,10 @@ import com.azure.core.util.Context; import com.azure.core.util.logging.ClientLogger; import com.azure.storage.common.StorageSharedKeyCredential; +import com.azure.storage.common.implementation.AccountSasImplUtil; +import com.azure.storage.common.implementation.SasImplUtils; import com.azure.storage.common.implementation.StorageImplUtils; +import com.azure.storage.common.sas.AccountSasSignatureValues; import com.azure.storage.queue.implementation.AzureQueueStorageImpl; import com.azure.storage.queue.implementation.models.ListQueuesIncludeType; import com.azure.storage.queue.models.QueueCorsRule; @@ -489,4 +493,30 @@ Mono> getStatisticsWithResponse(Context context public String getAccountName() { return this.accountName; } + + /** + * Gets the {@link HttpPipeline} powering this client. + * + * @return The pipeline. + */ + public HttpPipeline getHttpPipeline() { + return this.client.getHttpPipeline(); + } + + /** + * Generates an account SAS for the Azure Storage account using the specified {@link AccountSasSignatureValues}. + *

See {@link AccountSasSignatureValues} for more information on how to construct an account SAS.

+ * + *

The snippet below generates a SAS that lasts for two days and gives the user read and list access to + * queues and file shares.

+ * {@codesnippet com.azure.storage.queue.QueueServiceAsyncClient.generateAccountSas#AccountSasSignatureValues} + * + * @param accountSasSignatureValues {@link AccountSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateAccountSas(AccountSasSignatureValues accountSasSignatureValues) { + return new AccountSasImplUtil(accountSasSignatureValues) + .generateSas(SasImplUtils.extractSharedKeyCredential(getHttpPipeline())); + } } diff --git a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueServiceClient.java b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueServiceClient.java index 79c2e09d2826..9f52f4111ebc 100644 --- a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueServiceClient.java +++ b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueServiceClient.java @@ -3,12 +3,14 @@ package com.azure.storage.queue; import com.azure.core.annotation.ServiceClient; +import com.azure.core.http.HttpPipeline; import com.azure.core.http.rest.PagedIterable; import com.azure.core.http.rest.Response; import com.azure.core.http.rest.SimpleResponse; import com.azure.core.util.Context; import com.azure.storage.common.StorageSharedKeyCredential; import com.azure.storage.common.implementation.StorageImplUtils; +import com.azure.storage.common.sas.AccountSasSignatureValues; import com.azure.storage.queue.models.QueueCorsRule; import com.azure.storage.queue.models.QueueItem; import com.azure.storage.queue.models.QueueServiceProperties; @@ -404,4 +406,31 @@ public Response getStatisticsWithResponse(Duration timeo public String getAccountName() { return this.client.getAccountName(); } + + + /** + * Gets the {@link HttpPipeline} powering this client. + * + * @return The pipeline. + */ + public HttpPipeline getHttpPipeline() { + return this.client.getHttpPipeline(); + } + + /** + * Generates an account SAS for the Azure Storage account using the specified {@link AccountSasSignatureValues}. + *

See {@link AccountSasSignatureValues} for more information on how to construct an account SAS.

+ * + *

Generating an account SAS

+ *

The snippet below generates an AccountSasSignatureValues object that lasts for two days and gives the user + * read and list access to queue and file shares.

+ * {@codesnippet com.azure.storage.queue.QueueServiceClient.generateAccountSas#AccountSasSignatureValues} + * + * @param accountSasSignatureValues {@link AccountSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateAccountSas(AccountSasSignatureValues accountSasSignatureValues) { + return this.client.generateAccountSas(accountSasSignatureValues); + } } diff --git a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/implementation/util/QueueSasImplUtil.java b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/implementation/util/QueueSasImplUtil.java index 1785820faf92..844fa0cb425f 100644 --- a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/implementation/util/QueueSasImplUtil.java +++ b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/implementation/util/QueueSasImplUtil.java @@ -3,13 +3,14 @@ package com.azure.storage.queue.implementation.util; -import com.azure.core.util.CoreUtils; +import com.azure.core.util.logging.ClientLogger; import com.azure.storage.common.StorageSharedKeyCredential; import com.azure.storage.common.implementation.Constants; import com.azure.storage.common.implementation.StorageImplUtils; import com.azure.storage.common.sas.SasIpRange; import com.azure.storage.common.sas.SasProtocol; import com.azure.storage.queue.QueueServiceVersion; +import com.azure.storage.queue.sas.QueueSasPermission; import com.azure.storage.queue.sas.QueueServiceSasSignatureValues; import java.time.OffsetDateTime; @@ -25,6 +26,8 @@ */ public class QueueSasImplUtil { + private final ClientLogger logger = new ClientLogger(QueueSasImplUtil.class); + private String version; private SasProtocol protocol; @@ -68,12 +71,10 @@ public QueueSasImplUtil(QueueServiceSasSignatureValues sasValues, String queueNa public String generateSas(StorageSharedKeyCredential storageSharedKeyCredentials) { StorageImplUtils.assertNotNull("storageSharedKeyCredentials", storageSharedKeyCredentials); - if (CoreUtils.isNullOrEmpty(version)) { - version = QueueServiceVersion.getLatest().getVersion(); - } + ensureState(); // Signature is generated on the un-url-encoded values. - String canonicalName = getCanonicalName(storageSharedKeyCredentials.getAccountName(), queueName); + String canonicalName = getCanonicalName(storageSharedKeyCredentials.getAccountName()); String stringToSign = stringToSign(canonicalName); String signature = storageSharedKeyCredentials.computeHmac256(stringToSign); @@ -99,13 +100,41 @@ private String encode(String signature) { return sb.toString(); } + /** + * Ensures that the builder's properties are in a consistent state. + + * 1. If there is no version, use latest. + * 2. If there is no identifier set, ensure expiryTime and permissions are set. + * 4. Reparse permissions depending on what the resource is. If it is an unrecognised resource, do nothing. + */ + private void ensureState() { + if (version == null) { + version = QueueServiceVersion.getLatest().getVersion(); + } + + if (identifier == null) { + if (expiryTime == null || permissions == null) { + throw logger.logExceptionAsError(new IllegalStateException("If identifier is not set, expiry time " + + "and permissions must be set")); + } + } + + if (permissions != null) { + if (queueName != null) { + permissions = QueueSasPermission.parse(permissions).toString(); + } else { + // We won't reparse the permissions if we don't know the type. + logger.info("Not re-parsing permissions. Resource type is not queue."); + } + } + } + /** * Computes the canonical name for a queue resource for SAS signing. * @param account Account of the storage account. - * @param queueName Name of the queue. * @return Canonical name as a string. */ - private static String getCanonicalName(String account, String queueName) { + private String getCanonicalName(String account) { // Queue: "/queue/account/queuename" return String.join("", new String[] { "/queue/", account, "/", queueName }); } diff --git a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/sas/QueueServiceSasQueryParameters.java b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/sas/QueueServiceSasQueryParameters.java index 944808267a44..d3e12835ef43 100644 --- a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/sas/QueueServiceSasQueryParameters.java +++ b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/sas/QueueServiceSasQueryParameters.java @@ -74,10 +74,7 @@ public String getIdentifier() { * Encodes all SAS query parameters into a string that can be appended to a URL. * * @return A {@code String} representing all SAS query parameters. - * @deprecated Please use the generate*Sas method on the queue client after initializing - * {@link QueueServiceSasSignatureValues}. */ - @Deprecated public String encode() { /* We should be url-encoding each key and each value, but because we know all the keys and values will encode to diff --git a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/sas/QueueServiceSasSignatureValues.java b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/sas/QueueServiceSasSignatureValues.java index 0cc843c19fc5..2699e76959e7 100644 --- a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/sas/QueueServiceSasSignatureValues.java +++ b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/sas/QueueServiceSasSignatureValues.java @@ -14,24 +14,11 @@ import java.time.OffsetDateTime; /** - * Used to generate a Shared Access Signature (SAS) for Azure Storage Queues service. Once all the values here are set, - * call {@link - * #generateSasQueryParameters(StorageSharedKeyCredential) generateSasQueryParameters(StorageSharedKeyCredential)} - * to obtain a representation of the SAS which can be applied to queue urls. + * Used to initialize parameters for a Shared Access Signature (SAS) for an Azure Queue Storage service. Once all the + * values here are set, use the appropriate SAS generation method on the desired queue client to obtain a + * representation of the SAS which can then be applied to a new client using the .sasToken(String) method on the + * desired client builder. * - *

Generating a queue SAS with expiryTime and permissions

- *

The snippet below generates a queue SAS that lasts for two days and gives the user read, add, and update - * permissions to the queue. - * - * {@codesnippet com.azure.storage.queue.queueServiceSasSignatureValues.generateSasQueryParameters#StorageSharedKeyCredential} - * - *

Generating a queue SAS with stored access policy identifier

- *

The snippet below generates a queue SAS that has the same duration and permissions specified by the - * {@link #setIdentifier(String) stored access policy}. - * - * {@codesnippet com.azure.storage.queue.queueServiceSasSignatureValues.generateSasQueryParameters.identifier#StorageSharedKeyCredential} - * - * @see QueueServiceSasQueryParameters * @see Storage SAS overview * @see Constructing a Service * SAS @@ -203,7 +190,9 @@ public QueueServiceSasSignatureValues setSasIpRange(SasIpRange sasIpRange) { * Gets the name of the queue this SAS may access. * * @return The name of the queue the SAS user may access. + * @deprecated Queue name is now auto-populated by the SAS generation methods provided on the desired queue client. */ + @Deprecated public String getQueueName() { return queueName; } diff --git a/sdk/storage/azure-storage-queue/src/samples/java/com/azure/storage/queue/QueueServiceAsyncJavaDocCodeSamples.java b/sdk/storage/azure-storage-queue/src/samples/java/com/azure/storage/queue/QueueServiceAsyncJavaDocCodeSamples.java index f19a52c62f60..bbe244a5c44e 100644 --- a/sdk/storage/azure-storage-queue/src/samples/java/com/azure/storage/queue/QueueServiceAsyncJavaDocCodeSamples.java +++ b/sdk/storage/azure-storage-queue/src/samples/java/com/azure/storage/queue/QueueServiceAsyncJavaDocCodeSamples.java @@ -3,10 +3,16 @@ package com.azure.storage.queue; import com.azure.storage.common.StorageSharedKeyCredential; +import com.azure.storage.common.sas.AccountSasPermission; +import com.azure.storage.common.sas.AccountSasResourceType; +import com.azure.storage.common.sas.AccountSasService; +import com.azure.storage.common.sas.AccountSasSignatureValues; import com.azure.storage.queue.models.QueueServiceProperties; import com.azure.storage.queue.models.QueueServiceStatistics; import com.azure.storage.queue.models.QueuesSegmentOptions; +import java.time.Duration; +import java.time.OffsetDateTime; import java.util.Collections; import java.util.Map; @@ -260,4 +266,25 @@ public void getStatisticsWithResponse() { }); // END: com.azure.storage.queue.queueServiceAsyncClient.getStatisticsWithResponse } + + /** + * Code snippet for {@link QueueServiceAsyncClient#generateAccountSas(AccountSasSignatureValues)} + */ + public void generateAccountSas() { + QueueServiceAsyncClient queueServiceAsyncClient = createAsyncClientWithCredential(); + // BEGIN: com.azure.storage.queue.QueueServiceAsyncClient.generateAccountSas#AccountSasSignatureValues + AccountSasPermission permissions = new AccountSasPermission() + .setListPermission(true) + .setReadPermission(true); + AccountSasResourceType resourceTypes = new AccountSasResourceType().setContainer(true).setObject(true); + AccountSasService services = new AccountSasService().setQueueAccess(true).setFileAccess(true); + OffsetDateTime expiryTime = OffsetDateTime.now().plus(Duration.ofDays(2)); + + AccountSasSignatureValues sasValues = + new AccountSasSignatureValues(expiryTime, permissions, services, resourceTypes); + + // Client must be authenticated via StorageSharedKeyCredential + String sas = queueServiceAsyncClient.generateAccountSas(sasValues); + // END: com.azure.storage.queue.QueueServiceAsyncClient.generateAccountSas#AccountSasSignatureValues + } } diff --git a/sdk/storage/azure-storage-queue/src/samples/java/com/azure/storage/queue/QueueServiceJavaDocCodeSamples.java b/sdk/storage/azure-storage-queue/src/samples/java/com/azure/storage/queue/QueueServiceJavaDocCodeSamples.java index 5a147eaec2c2..0a34f6484734 100644 --- a/sdk/storage/azure-storage-queue/src/samples/java/com/azure/storage/queue/QueueServiceJavaDocCodeSamples.java +++ b/sdk/storage/azure-storage-queue/src/samples/java/com/azure/storage/queue/QueueServiceJavaDocCodeSamples.java @@ -5,11 +5,16 @@ import com.azure.core.http.rest.Response; import com.azure.core.util.Context; import com.azure.storage.common.StorageSharedKeyCredential; +import com.azure.storage.common.sas.AccountSasPermission; +import com.azure.storage.common.sas.AccountSasResourceType; +import com.azure.storage.common.sas.AccountSasService; +import com.azure.storage.common.sas.AccountSasSignatureValues; import com.azure.storage.queue.models.QueueServiceProperties; import com.azure.storage.queue.models.QueueServiceStatistics; import com.azure.storage.queue.models.QueuesSegmentOptions; import java.time.Duration; +import java.time.OffsetDateTime; import java.util.Collections; import java.util.Map; @@ -250,4 +255,25 @@ public void getStatisticsWithResponse() { stats.getGeoReplication().getStatus(), stats.getGeoReplication().getLastSyncTime()); // END: com.azure.storage.queue.queueServiceClient.getStatisticsWithResponse#duration-context } + + /** + * Code snippet for {@link QueueServiceClient#generateAccountSas(AccountSasSignatureValues)} + */ + public void generateAccountSas() { + QueueServiceClient queueServiceClient = createClientWithCredential(); + // BEGIN: com.azure.storage.queue.QueueServiceClient.generateAccountSas#AccountSasSignatureValues + AccountSasPermission permissions = new AccountSasPermission() + .setListPermission(true) + .setReadPermission(true); + AccountSasResourceType resourceTypes = new AccountSasResourceType().setContainer(true).setObject(true); + AccountSasService services = new AccountSasService().setQueueAccess(true).setFileAccess(true); + OffsetDateTime expiryTime = OffsetDateTime.now().plus(Duration.ofDays(2)); + + AccountSasSignatureValues sasValues = + new AccountSasSignatureValues(expiryTime, permissions, services, resourceTypes); + + // Client must be authenticated via StorageSharedKeyCredential + String sas = queueServiceClient.generateAccountSas(sasValues); + // END: com.azure.storage.queue.QueueServiceClient.generateAccountSas#AccountSasSignatureValues + } } diff --git a/sdk/storage/azure-storage-queue/src/samples/java/com/azure/storage/queue/QueueServiceSasSignatureValuesJavaDocCodeSnippets.java b/sdk/storage/azure-storage-queue/src/samples/java/com/azure/storage/queue/QueueServiceSasSignatureValuesJavaDocCodeSnippets.java deleted file mode 100644 index 09fc98425358..000000000000 --- a/sdk/storage/azure-storage-queue/src/samples/java/com/azure/storage/queue/QueueServiceSasSignatureValuesJavaDocCodeSnippets.java +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. - -package com.azure.storage.queue; - -import com.azure.storage.common.StorageSharedKeyCredential; -import com.azure.storage.common.sas.SasProtocol; -import com.azure.storage.queue.sas.QueueSasPermission; -import com.azure.storage.queue.sas.QueueServiceSasQueryParameters; -import com.azure.storage.queue.sas.QueueServiceSasSignatureValues; - -import java.time.Duration; -import java.time.OffsetDateTime; - -/** - * Code snippets for {@link QueueServiceSasSignatureValues}. - */ -public class QueueServiceSasSignatureValuesJavaDocCodeSnippets { - public void generateSasExpiryTime() { - // BEGIN: com.azure.storage.queue.queueServiceSasSignatureValues.generateSasQueryParameters#StorageSharedKeyCredential - StorageSharedKeyCredential credential = new StorageSharedKeyCredential("my-account", "my-key"); - - // The expiry time and permissions are required to create a valid SAS - // if a stored access policy identifier is not set. - QueueServiceSasQueryParameters sasQueryParameters = new QueueServiceSasSignatureValues() - .setPermissions(QueueSasPermission.parse("rau")) - .setProtocol(SasProtocol.HTTPS_ONLY) - .setExpiryTime(OffsetDateTime.now().plus(Duration.ofDays(2))) - .generateSasQueryParameters(credential); - // END: com.azure.storage.queue.queueServiceSasSignatureValues.generateSasQueryParameters#StorageSharedKeyCredential - } - - public void generateWithStoredAccessPolicy() { - // BEGIN: com.azure.storage.queue.queueServiceSasSignatureValues.generateSasQueryParameters.identifier#StorageSharedKeyCredential - StorageSharedKeyCredential credential = new StorageSharedKeyCredential("my-account", "my-key"); - - // The shared access policy, "read-write-user" exists in the storage account. The SAS generated from this has - // the same duration and permissions as the policy. - // The expiry and permissions should not be set explicitly. - QueueServiceSasQueryParameters sasQueryParameters = new QueueServiceSasSignatureValues() - .setIdentifier("read-write-user") - .setProtocol(SasProtocol.HTTPS_ONLY) - .generateSasQueryParameters(credential); - // END: com.azure.storage.queue.queueServiceSasSignatureValues.generateSasQueryParameters.identifier#StorageSharedKeyCredential - } -} diff --git a/sdk/storage/azure-storage-queue/src/test/java/com/azure/storage/queue/QueueSasClientTests.groovy b/sdk/storage/azure-storage-queue/src/test/java/com/azure/storage/queue/QueueSasClientTests.groovy new file mode 100644 index 000000000000..a15a24a358d0 --- /dev/null +++ b/sdk/storage/azure-storage-queue/src/test/java/com/azure/storage/queue/QueueSasClientTests.groovy @@ -0,0 +1,201 @@ +package com.azure.storage.queue + +import com.azure.storage.common.sas.AccountSasPermission +import com.azure.storage.common.sas.AccountSasResourceType +import com.azure.storage.common.sas.AccountSasService +import com.azure.storage.common.sas.AccountSasSignatureValues +import com.azure.storage.common.sas.SasIpRange +import com.azure.storage.common.sas.SasProtocol +import com.azure.storage.queue.models.QueueAccessPolicy +import com.azure.storage.queue.models.QueueSignedIdentifier +import com.azure.storage.queue.models.QueueStorageException +import com.azure.storage.queue.models.SendMessageResult +import com.azure.storage.queue.sas.QueueSasPermission +import com.azure.storage.queue.sas.QueueServiceSasSignatureValues + +import java.time.Duration +import java.time.temporal.ChronoUnit + +class QueueSasClientTests extends APISpec { + + QueueClient sasClient + def resp + + def setup() { + primaryQueueServiceClient = queueServiceBuilderHelper(interceptorManager).buildClient() + sasClient = primaryQueueServiceClient.getQueueClient(testResourceName.randomName(methodName, 10)) + sasClient.create() + resp = sasClient.sendMessage("test") + } + + QueueServiceSasSignatureValues generateValues(QueueSasPermission permission) { + return new QueueServiceSasSignatureValues(getUTCNow().plusDays(1), permission) + .setStartTime(getUTCNow().minusDays(1)) + .setProtocol(SasProtocol.HTTPS_HTTP) + .setSasIpRange(new SasIpRange() + .setIpMin("0.0.0.0") + .setIpMax("255.255.255.255")) + } + + def "Test QueueSAS enqueue dequeue with permissions"() { + setup: + def permissions = new QueueSasPermission() + .setReadPermission(true) + .setAddPermission(true) + .setProcessPermission(true) + def sasValues = generateValues(permissions) + + when: + def sasPermissions = sasClient.generateSas(sasValues) + + def clientPermissions = queueBuilderHelper(interceptorManager) + .endpoint(sasClient.getQueueUrl()) + .queueName(sasClient.getQueueName()) + .sasToken(sasPermissions) + .buildClient() + clientPermissions.sendMessage("sastest") + def dequeueMsgIterPermissions = clientPermissions.receiveMessages(2).iterator() + + then: + notThrown(QueueStorageException) + "test" == dequeueMsgIterPermissions.next().getMessageText() + "sastest" == dequeueMsgIterPermissions.next().getMessageText() + + when: + clientPermissions.updateMessage(resp.getMessageId(), resp.getPopReceipt(), "testing", Duration.ofHours(1)) + + then: + thrown(QueueStorageException) + } + + def "Test QueueSAS update delete with permissions"() { + setup: + def permissions = new QueueSasPermission() + .setReadPermission(true) + .setAddPermission(true) + .setProcessPermission(true) + .setUpdatePermission(true) + def sasValues = generateValues(permissions) + + when: + def sasPermissions = sasClient.generateSas(sasValues) + + def clientPermissions = queueBuilderHelper(interceptorManager) + .endpoint(sasClient.getQueueUrl()) + .queueName(sasClient.getQueueName()) + .sasToken(sasPermissions) + .buildClient() + clientPermissions.updateMessage(resp.getMessageId(), resp.getPopReceipt(), "testing", Duration.ZERO) + def dequeueMsgIterPermissions = clientPermissions.receiveMessages(1).iterator() + + then: + notThrown(QueueStorageException) + "testing" == dequeueMsgIterPermissions.next().getMessageText() + + when: + clientPermissions.delete() + + then: + thrown(QueueStorageException) + } + + // NOTE: Serializer for set access policy keeps milliseconds + def "Test QueueSAS enqueue dequeue with identifier"() { + setup: + + def permissions = new QueueSasPermission() + .setReadPermission(true) + .setAddPermission(true) + .setUpdatePermission(true) + .setProcessPermission(true) + def expiryTime = getUTCNow().plusDays(1).truncatedTo(ChronoUnit.SECONDS) + def startTime = getUTCNow().minusDays(1).truncatedTo(ChronoUnit.SECONDS) + + QueueSignedIdentifier identifier = new QueueSignedIdentifier() + .setId(testResourceName.randomUuid()) + .setAccessPolicy(new QueueAccessPolicy().setPermissions(permissions.toString()) + .setExpiresOn(expiryTime).setStartsOn(startTime)) + sasClient.setAccessPolicy(Arrays.asList(identifier)) + + // Wait 30 seconds as it may take time for the access policy to take effect. + sleepIfLive(30000) + + when: + def sasValues = new QueueServiceSasSignatureValues(identifier.getId()) + + def sasIdentifier = sasClient.generateSas(sasValues) + + def clientBuilder = queueBuilderHelper(interceptorManager) + def clientIdentifier = clientBuilder + .endpoint(sasClient.getQueueUrl()) + .queueName(sasClient.getQueueName()) + .sasToken(sasIdentifier) + .buildClient() + clientIdentifier.sendMessage("sastest") + def dequeueMsgIterIdentifier = clientIdentifier.receiveMessages(2).iterator() + + then: + notThrown(QueueStorageException) + "test" == dequeueMsgIterIdentifier.next().getMessageText() + "sastest" == dequeueMsgIterIdentifier.next().getMessageText() + } + + def "Test Account QueueServiceSAS create queue delete queue"() { + def service = new AccountSasService() + .setQueueAccess(true) + def resourceType = new AccountSasResourceType() + .setContainer(true) + .setService(true) + .setObject(true) + def permissions = new AccountSasPermission() + .setReadPermission(true) + .setCreatePermission(true) + .setDeletePermission(true) + def expiryTime = getUTCNow().plusDays(1) + + when: + def sasValues = new AccountSasSignatureValues(expiryTime, permissions, service, resourceType) + def sas = primaryQueueServiceClient.generateAccountSas(sasValues) + + def scBuilder = queueServiceBuilderHelper(interceptorManager) + scBuilder.endpoint(primaryQueueServiceClient.getQueueServiceUrl()) + .sasToken(sas) + def sc = scBuilder.buildClient() + sc.createQueue("queue") + + then: + notThrown(QueueStorageException) + + when: + sc.deleteQueue("queue") + + then: + notThrown(QueueStorageException) + } + + def "Test Account QueueServiceSAS list queues"() { + def service = new AccountSasService() + .setQueueAccess(true) + def resourceType = new AccountSasResourceType() + .setContainer(true) + .setService(true) + .setObject(true) + def permissions = new AccountSasPermission() + .setListPermission(true) + def expiryTime = getUTCNow().plusDays(1) + + when: + def sasValues = new AccountSasSignatureValues(expiryTime, permissions, service, resourceType) + def sas = primaryQueueServiceClient.generateAccountSas(sasValues) + + def scBuilder = queueServiceBuilderHelper(interceptorManager) + scBuilder.endpoint(primaryQueueServiceClient.getQueueServiceUrl()) + .sasToken(sas) + def sc = scBuilder.buildClient() + + sc.listQueues() + + then: + notThrown(QueueStorageException) + } +} diff --git a/sdk/storage/azure-storage-queue/src/test/resources/session-records/QueueSasClientTestsTestAccountQueueServiceSASCreateQueueDeleteQueue.json b/sdk/storage/azure-storage-queue/src/test/resources/session-records/QueueSasClientTestsTestAccountQueueServiceSASCreateQueueDeleteQueue.json new file mode 100644 index 000000000000..6567b039b714 --- /dev/null +++ b/sdk/storage/azure-storage-queue/src/test/resources/session-records/QueueSasClientTestsTestAccountQueueServiceSASCreateQueueDeleteQueue.json @@ -0,0 +1,83 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "http://gapradev.queue.core.windows.net/e7bc4b6553", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-queue/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b3f598b1-7d17-430b-bfc7-ea5e60b47477" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "c338fd06-9003-002b-78f6-a912f7000000", + "Date" : "Tue, 03 Dec 2019 16:30:05 GMT", + "x-ms-client-request-id" : "b3f598b1-7d17-430b-bfc7-ea5e60b47477" + }, + "Exception" : null + }, { + "Method" : "POST", + "Uri" : "http://gapradev.queue.core.windows.net/e7bc4b6553/messages", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-queue/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e27354b9-9d39-41a7-adda-77773d7c9868", + "Content-Type" : "application/xml; charset=utf-8" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "c338fd08-9003-002b-79f6-a912f7000000", + "Body" : "6cd99460-8e47-49df-9c88-6f3caab797efTue, 03 Dec 2019 16:30:06 GMTTue, 10 Dec 2019 16:30:06 GMTAgAAAAMAAAAAAAAAs8ju6/ap1QE=Tue, 03 Dec 2019 16:30:06 GMT", + "Date" : "Tue, 03 Dec 2019 16:30:05 GMT", + "x-ms-client-request-id" : "e27354b9-9d39-41a7-adda-77773d7c9868", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "http://gapradev.queue.core.windows.net/queue?sv=2019-02-02&ss=q&srt=sco&se=2019-12-04T16%3A30%3A06Z&sp=rdc&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-queue/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "0999f23b-661c-4666-aeec-12b7e94cbab0" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "c338fd09-9003-002b-7af6-a912f7000000", + "Date" : "Tue, 03 Dec 2019 16:30:05 GMT", + "x-ms-client-request-id" : "0999f23b-661c-4666-aeec-12b7e94cbab0" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "http://gapradev.queue.core.windows.net/queue?sv=2019-02-02&ss=q&srt=sco&se=2019-12-04T16%3A30%3A06Z&sp=rdc&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-queue/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "c38db82f-aaa5-4849-9adb-297041d2920c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "204", + "x-ms-request-id" : "c338fd0b-9003-002b-7bf6-a912f7000000", + "Date" : "Tue, 03 Dec 2019 16:30:05 GMT", + "x-ms-client-request-id" : "c38db82f-aaa5-4849-9adb-297041d2920c" + }, + "Exception" : null + } ], + "variables" : [ "e7bc4b6553", "2019-12-03T16:30:06.281838600Z" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-queue/src/test/resources/session-records/QueueSasClientTestsTestAccountQueueServiceSASListQueues.json b/sdk/storage/azure-storage-queue/src/test/resources/session-records/QueueSasClientTestsTestAccountQueueServiceSASListQueues.json new file mode 100644 index 000000000000..a269308007f8 --- /dev/null +++ b/sdk/storage/azure-storage-queue/src/test/resources/session-records/QueueSasClientTestsTestAccountQueueServiceSASListQueues.json @@ -0,0 +1,45 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "http://gapradev.queue.core.windows.net/6ea898ac58", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-queue/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d02bd6a6-5b04-4326-8c2e-7c639c44b38b" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "c338fd0d-9003-002b-7df6-a912f7000000", + "Date" : "Tue, 03 Dec 2019 16:30:05 GMT", + "x-ms-client-request-id" : "d02bd6a6-5b04-4326-8c2e-7c639c44b38b" + }, + "Exception" : null + }, { + "Method" : "POST", + "Uri" : "http://gapradev.queue.core.windows.net/6ea898ac58/messages", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-queue/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "96a0ffdf-c03c-4fd9-83e5-1da26c54e727", + "Content-Type" : "application/xml; charset=utf-8" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "c338fd10-9003-002b-7ef6-a912f7000000", + "Body" : "9aab594c-812b-44f0-bbd0-c9fa53e868a1Tue, 03 Dec 2019 16:30:06 GMTTue, 10 Dec 2019 16:30:06 GMTAgAAAAMAAAAAAAAAf7lA7Pap1QE=Tue, 03 Dec 2019 16:30:06 GMT", + "Date" : "Tue, 03 Dec 2019 16:30:06 GMT", + "x-ms-client-request-id" : "96a0ffdf-c03c-4fd9-83e5-1da26c54e727", + "Content-Type" : "application/xml" + }, + "Exception" : null + } ], + "variables" : [ "6ea898ac58", "2019-12-03T16:30:06.808736100Z" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-queue/src/test/resources/session-records/QueueSasClientTestsTestQueueSASEnqueueDequeueWithIdentifier.json b/sdk/storage/azure-storage-queue/src/test/resources/session-records/QueueSasClientTestsTestQueueSASEnqueueDequeueWithIdentifier.json new file mode 100644 index 000000000000..5d22d019566e --- /dev/null +++ b/sdk/storage/azure-storage-queue/src/test/resources/session-records/QueueSasClientTestsTestQueueSASEnqueueDequeueWithIdentifier.json @@ -0,0 +1,109 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "http://gapradev.queue.core.windows.net/45c06bcf11", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-queue/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b64b22d4-5bb1-46ee-8024-39ffa45a8915" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "c338fcd8-9003-002b-66f6-a912f7000000", + "Date" : "Tue, 03 Dec 2019 16:29:35 GMT", + "x-ms-client-request-id" : "b64b22d4-5bb1-46ee-8024-39ffa45a8915" + }, + "Exception" : null + }, { + "Method" : "POST", + "Uri" : "http://gapradev.queue.core.windows.net/45c06bcf11/messages", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-queue/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8bb0557e-4455-4626-b85d-90f257f11544", + "Content-Type" : "application/xml; charset=utf-8" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "c338fcda-9003-002b-67f6-a912f7000000", + "Body" : "a3f07532-82ed-45b6-88c5-f8c57027468cTue, 03 Dec 2019 16:29:35 GMTTue, 10 Dec 2019 16:29:35 GMTAgAAAAMAAAAAAAAAQMSk2fap1QE=Tue, 03 Dec 2019 16:29:35 GMT", + "Date" : "Tue, 03 Dec 2019 16:29:35 GMT", + "x-ms-client-request-id" : "8bb0557e-4455-4626-b85d-90f257f11544", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "http://gapradev.queue.core.windows.net/45c06bcf11?comp=acl", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-queue/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "427f7fb9-bef0-4154-a2c9-059411d0a536", + "Content-Type" : "application/xml; charset=utf-8" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "204", + "x-ms-request-id" : "c338fcdb-9003-002b-68f6-a912f7000000", + "Date" : "Tue, 03 Dec 2019 16:29:35 GMT", + "x-ms-client-request-id" : "427f7fb9-bef0-4154-a2c9-059411d0a536" + }, + "Exception" : null + }, { + "Method" : "POST", + "Uri" : "http://gapradev.queue.core.windows.net/45c06bcf11/messages?sv=2019-02-02&si=03ab0fb6-ccea-48fe-b657-c72befb6acdf&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-queue/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "6b7c67fe-666e-4238-beef-aca394fe1277", + "Content-Type" : "application/xml; charset=utf-8" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "c338fd01-9003-002b-75f6-a912f7000000", + "Body" : "45b5544b-0328-4c5d-8857-295f0f858e49Tue, 03 Dec 2019 16:30:05 GMTTue, 10 Dec 2019 16:30:05 GMTAgAAAAMAAAAAAAAANJC16/ap1QE=Tue, 03 Dec 2019 16:30:05 GMT", + "Date" : "Tue, 03 Dec 2019 16:30:05 GMT", + "x-ms-client-request-id" : "6b7c67fe-666e-4238-beef-aca394fe1277", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "http://gapradev.queue.core.windows.net/45c06bcf11/messages?numofmessages=2&visibilitytimeout=30&sv=2019-02-02&si=03ab0fb6-ccea-48fe-b657-c72befb6acdf&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-queue/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "7d64ef3b-1a95-4f0b-b307-5f07994cc07a" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0", + "Cache-Control" : "no-cache", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "c338fd04-9003-002b-76f6-a912f7000000", + "Body" : "a3f07532-82ed-45b6-88c5-f8c57027468cTue, 03 Dec 2019 16:29:35 GMTTue, 10 Dec 2019 16:29:35 GMTAgAAAAMAAAAAAAAAmCuk/fap1QE=Tue, 03 Dec 2019 16:30:35 GMT1test45b5544b-0328-4c5d-8857-295f0f858e49Tue, 03 Dec 2019 16:30:05 GMTTue, 10 Dec 2019 16:30:05 GMTAgAAAAMAAAAAAAAAmCuk/fap1QE=Tue, 03 Dec 2019 16:30:35 GMT1sastest", + "Date" : "Tue, 03 Dec 2019 16:30:05 GMT", + "x-ms-client-request-id" : "7d64ef3b-1a95-4f0b-b307-5f07994cc07a", + "Content-Type" : "application/xml" + }, + "Exception" : null + } ], + "variables" : [ "45c06bcf11", "2019-12-03T16:29:35.586848400Z", "2019-12-03T16:29:35.588847600Z", "03ab0fb6-ccea-48fe-b657-c72befb6acdf", "queue3729950c" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-queue/src/test/resources/session-records/QueueSasClientTestsTestQueueSASEnqueueDequeueWithPermissions.json b/sdk/storage/azure-storage-queue/src/test/resources/session-records/QueueSasClientTestsTestQueueSASEnqueueDequeueWithPermissions.json new file mode 100644 index 000000000000..6942b59738f1 --- /dev/null +++ b/sdk/storage/azure-storage-queue/src/test/resources/session-records/QueueSasClientTestsTestQueueSASEnqueueDequeueWithPermissions.json @@ -0,0 +1,112 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "http://gapradev.queue.core.windows.net/e54115704f", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-queue/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "69ef3973-80c3-42db-9f3a-e1724074d6fe" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "c338fcc6-9003-002b-59f6-a912f7000000", + "Date" : "Tue, 03 Dec 2019 16:29:33 GMT", + "x-ms-client-request-id" : "69ef3973-80c3-42db-9f3a-e1724074d6fe" + }, + "Exception" : null + }, { + "Method" : "POST", + "Uri" : "http://gapradev.queue.core.windows.net/e54115704f/messages", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-queue/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b6d13a64-2007-4497-901e-16d9b2a382a6", + "Content-Type" : "application/xml; charset=utf-8" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "c338fcc9-9003-002b-5af6-a912f7000000", + "Body" : "2ed9f73f-18dc-416b-a8db-f740f06b0669Tue, 03 Dec 2019 16:29:34 GMTTue, 10 Dec 2019 16:29:34 GMTAgAAAAMAAAAAAAAAcse52Pap1QE=Tue, 03 Dec 2019 16:29:34 GMT", + "Date" : "Tue, 03 Dec 2019 16:29:33 GMT", + "x-ms-client-request-id" : "b6d13a64-2007-4497-901e-16d9b2a382a6", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "POST", + "Uri" : "http://gapradev.queue.core.windows.net/e54115704f/messages?sv=2019-02-02&spr=https%2Chttp&st=2019-12-02T16%3A29%3A34Z&se=2019-12-04T16%3A29%3A34Z&sip=0.0.0.0-255.255.255.255&sp=rap&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-queue/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "7e70c212-ffe8-45f0-a8e5-b817630b53ff", + "Content-Type" : "application/xml; charset=utf-8" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "c338fccb-9003-002b-5cf6-a912f7000000", + "Body" : "bea69690-fb87-4100-a12a-67804eeb66f6Tue, 03 Dec 2019 16:29:34 GMTTue, 10 Dec 2019 16:29:34 GMTAgAAAAMAAAAAAAAAwyDa2Pap1QE=Tue, 03 Dec 2019 16:29:34 GMT", + "Date" : "Tue, 03 Dec 2019 16:29:34 GMT", + "x-ms-client-request-id" : "7e70c212-ffe8-45f0-a8e5-b817630b53ff", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "http://gapradev.queue.core.windows.net/e54115704f/messages?numofmessages=2&visibilitytimeout=30&sv=2019-02-02&spr=https%2Chttp&st=2019-12-02T16%3A29%3A34Z&se=2019-12-04T16%3A29%3A34Z&sip=0.0.0.0-255.255.255.255&sp=rap&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-queue/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "9a9e09a3-0320-4587-8c8a-93cb50eab972" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0", + "Cache-Control" : "no-cache", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "c338fccc-9003-002b-5df6-a912f7000000", + "Body" : "2ed9f73f-18dc-416b-a8db-f740f06b0669Tue, 03 Dec 2019 16:29:34 GMTTue, 10 Dec 2019 16:29:34 GMTAgAAAAMAAAAAAAAAlT7M6vap1QE=Tue, 03 Dec 2019 16:30:04 GMT1testbea69690-fb87-4100-a12a-67804eeb66f6Tue, 03 Dec 2019 16:29:34 GMTTue, 10 Dec 2019 16:29:34 GMTAgAAAAMAAAAAAAAAlT7M6vap1QE=Tue, 03 Dec 2019 16:30:04 GMT1sastest", + "Date" : "Tue, 03 Dec 2019 16:29:34 GMT", + "x-ms-client-request-id" : "9a9e09a3-0320-4587-8c8a-93cb50eab972", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "http://gapradev.queue.core.windows.net/e54115704f/messages/2ed9f73f-18dc-416b-a8db-f740f06b0669?popreceipt=AgAAAAMAAAAAAAAAcse52Pap1QE%3d&visibilitytimeout=3600&sv=2019-02-02&spr=https%2Chttp&st=2019-12-02T16%3A29%3A34Z&se=2019-12-04T16%3A29%3A34Z&sip=0.0.0.0-255.255.255.255&sp=rap&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-queue/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "2828dd7c-d9f0-49b3-8e1b-4da303dbbb96", + "Content-Type" : "application/xml; charset=utf-8" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-error-code" : "AuthorizationPermissionMismatch", + "retry-after" : "0", + "Content-Length" : "279", + "StatusCode" : "403", + "x-ms-request-id" : "c338fcce-9003-002b-5ef6-a912f7000000", + "Body" : "AuthorizationPermissionMismatchThis request is not authorized to perform this operation using this permission.\nRequestId:c338fcce-9003-002b-5ef6-a912f7000000\nTime:2019-12-03T16:29:34.5534502Z", + "Date" : "Tue, 03 Dec 2019 16:29:34 GMT", + "x-ms-client-request-id" : "2828dd7c-d9f0-49b3-8e1b-4da303dbbb96", + "Content-Type" : "application/xml" + }, + "Exception" : null + } ], + "variables" : [ "e54115704f", "2019-12-03T16:29:34.110942600Z", "2019-12-03T16:29:34.115970800Z", "queue41903203" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-queue/src/test/resources/session-records/QueueSasClientTestsTestQueueSASUpdateDeleteWithPermissions.json b/sdk/storage/azure-storage-queue/src/test/resources/session-records/QueueSasClientTestsTestQueueSASUpdateDeleteWithPermissions.json new file mode 100644 index 000000000000..93370735cfed --- /dev/null +++ b/sdk/storage/azure-storage-queue/src/test/resources/session-records/QueueSasClientTestsTestQueueSASUpdateDeleteWithPermissions.json @@ -0,0 +1,111 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "http://gapradev.queue.core.windows.net/e3fd469c94", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-queue/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "6d5ba806-0aed-4952-a351-b18a0270f433" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "c338fcd0-9003-002b-60f6-a912f7000000", + "Date" : "Tue, 03 Dec 2019 16:29:34 GMT", + "x-ms-client-request-id" : "6d5ba806-0aed-4952-a351-b18a0270f433" + }, + "Exception" : null + }, { + "Method" : "POST", + "Uri" : "http://gapradev.queue.core.windows.net/e3fd469c94/messages", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-queue/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "a5daf148-d0d1-4df4-b0d1-8d2a043548de", + "Content-Type" : "application/xml; charset=utf-8" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "c338fcd2-9003-002b-61f6-a912f7000000", + "Body" : "f71c058d-f67f-4b3b-8b97-51a38c0c2216Tue, 03 Dec 2019 16:29:34 GMTTue, 10 Dec 2019 16:29:34 GMTAgAAAAMAAAAAAAAAZwJG2fap1QE=Tue, 03 Dec 2019 16:29:34 GMT", + "Date" : "Tue, 03 Dec 2019 16:29:34 GMT", + "x-ms-client-request-id" : "a5daf148-d0d1-4df4-b0d1-8d2a043548de", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "http://gapradev.queue.core.windows.net/e3fd469c94/messages/f71c058d-f67f-4b3b-8b97-51a38c0c2216?popreceipt=AgAAAAMAAAAAAAAAZwJG2fap1QE%3d&visibilitytimeout=0&sv=2019-02-02&spr=https%2Chttp&st=2019-12-02T16%3A29%3A34Z&se=2019-12-04T16%3A29%3A34Z&sip=0.0.0.0-255.255.255.255&sp=raup&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-queue/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "5e7a1ce6-46ab-44dc-b12d-240184df417c", + "Content-Type" : "application/xml; charset=utf-8" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-time-next-visible" : "Tue, 03 Dec 2019 16:29:35 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "204", + "x-ms-request-id" : "c338fcd3-9003-002b-62f6-a912f7000000", + "x-ms-popreceipt" : "AwAAAAMAAAAAAAAAwy5W2fap1QEAAAAA", + "Date" : "Tue, 03 Dec 2019 16:29:34 GMT", + "x-ms-client-request-id" : "5e7a1ce6-46ab-44dc-b12d-240184df417c" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "http://gapradev.queue.core.windows.net/e3fd469c94/messages?numofmessages=1&visibilitytimeout=30&sv=2019-02-02&spr=https%2Chttp&st=2019-12-02T16%3A29%3A34Z&se=2019-12-04T16%3A29%3A34Z&sip=0.0.0.0-255.255.255.255&sp=raup&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-queue/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e09729d9-2816-47f1-91d4-a22b08361844" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0", + "Cache-Control" : "no-cache", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "c338fcd5-9003-002b-63f6-a912f7000000", + "Body" : "f71c058d-f67f-4b3b-8b97-51a38c0c2216Tue, 03 Dec 2019 16:29:34 GMTTue, 10 Dec 2019 16:29:34 GMTAgAAAAMAAAAAAAAAOdNJ6/ap1QE=Tue, 03 Dec 2019 16:30:05 GMT1testing", + "Date" : "Tue, 03 Dec 2019 16:29:34 GMT", + "x-ms-client-request-id" : "e09729d9-2816-47f1-91d4-a22b08361844", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "http://gapradev.queue.core.windows.net/e3fd469c94?sv=2019-02-02&spr=https%2Chttp&st=2019-12-02T16%3A29%3A34Z&se=2019-12-04T16%3A29%3A34Z&sip=0.0.0.0-255.255.255.255&sp=raup&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-queue/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "7da0a6f6-bc2f-40b2-aa1f-b02c6c4a1f86" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0", + "x-ms-error-code" : "AuthorizationFailure", + "retry-after" : "0", + "Content-Length" : "246", + "StatusCode" : "403", + "x-ms-request-id" : "c338fcd6-9003-002b-64f6-a912f7000000", + "Body" : "AuthorizationFailureThis request is not authorized to perform this operation.\nRequestId:c338fcd6-9003-002b-64f6-a912f7000000\nTime:2019-12-03T16:29:35.3201722Z", + "Date" : "Tue, 03 Dec 2019 16:29:35 GMT", + "x-ms-client-request-id" : "7da0a6f6-bc2f-40b2-aa1f-b02c6c4a1f86", + "Content-Type" : "application/xml" + }, + "Exception" : null + } ], + "variables" : [ "e3fd469c94", "2019-12-03T16:29:34.971090100Z", "2019-12-03T16:29:34.971090100Z", "queue320848ee" ] +} \ No newline at end of file From dc6518e2722a812efa4bb73c114cbd7cd47805ac Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Tue, 3 Dec 2019 11:49:40 -0800 Subject: [PATCH 17/23] added datalake sas --- .../DataLakeFileSystemAsyncClient.java | 43 +++ .../datalake/DataLakeFileSystemClient.java | 42 +++ .../datalake/DataLakePathAsyncClient.java | 42 +++ .../file/datalake/DataLakePathClient.java | 40 ++ .../datalake/DataLakeServiceAsyncClient.java | 17 + .../file/datalake/DataLakeServiceClient.java | 17 + .../storage/file/datalake/Transforms.java | 51 +++ .../DataLakeServiceSasQueryParameters.java | 276 -------------- .../DataLakeServiceSasSignatureValues.java | 347 ++---------------- ...ServiceAsyncClientJavaDocCodeSnippets.java | 25 ++ ...aLakeServiceClientJavaDocCodeSnippets.java | 24 ++ ...SasSignatureValuesJavaDocCodeSnippets.java | 61 --- ...leSystemAsyncClientJavaDocCodeSamples.java | 30 ++ .../FileSystemClientJavaDocCodeSamples.java | 30 ++ .../datalake/JavaDocCodeSnippetsHelpers.java | 6 + .../PathAsyncClientJavaDocCodeSamples.java | 31 ++ .../PathClientJavaDocCodeSamples.java | 31 ++ .../storage/file/datalake/APISpec.groovy | 7 + .../storage/file/datalake/SASTest.groovy | 205 ++++------- ...ccountsasnetworkcreatefilesystemfails.json | 120 ++++-- ...untsasnetworkcreatefilesystemsucceeds.json | 134 +++++-- ...taccountsasnetworktestfiledeletefails.json | 136 +++++-- .../SASTestaccountsasnetworktestfileread.json | 168 ++++++--- .../session-records/SASTestfilerange[0].json | 106 ++++-- .../session-records/SASTestfilerange[1].json | 106 ++++-- .../session-records/SASTestfilerange[2].json | 106 ++++-- .../SASTestfilerangeia[0].json | 106 ++++-- .../SASTestfilerangeia[1].json | 106 ++++-- ...ASTestfilesystemsaspermissionparse[0].json | 106 ++++-- ...ASTestfilesystemsaspermissionparse[1].json | 106 ++++-- ...ASTestfilesystemsaspermissionparse[2].json | 106 ++++-- ...ASTestfilesystemsaspermissionparse[3].json | 106 ++++-- ...ASTestfilesystemsaspermissionparse[4].json | 106 ++++-- ...ASTestfilesystemsaspermissionparse[5].json | 106 ++++-- ...ASTestfilesystemsaspermissionparse[6].json | 106 ++++-- ...ASTestfilesystemsaspermissionparse[7].json | 106 ++++-- ...SASTestfilesystemsaspermissionparseia.json | 106 ++++-- ...estfilesystemsaspermissiontostring[0].json | 106 ++++-- ...estfilesystemsaspermissiontostring[1].json | 106 ++++-- ...estfilesystemsaspermissiontostring[2].json | 106 ++++-- ...estfilesystemsaspermissiontostring[3].json | 106 ++++-- ...estfilesystemsaspermissiontostring[4].json | 106 ++++-- ...estfilesystemsaspermissiontostring[5].json | 106 ++++-- ...estfilesystemsaspermissiontostring[6].json | 106 ++++-- .../SASTestpathsaspermissionparse[0].json | 106 ++++-- .../SASTestpathsaspermissionparse[1].json | 106 ++++-- .../SASTestpathsaspermissionparse[2].json | 106 ++++-- .../SASTestpathsaspermissionparse[3].json | 106 ++++-- .../SASTestpathsaspermissionparse[4].json | 106 ++++-- .../SASTestpathsaspermissionparse[5].json | 106 ++++-- .../SASTestpathsaspermissionparse[6].json | 106 ++++-- .../SASTestpathsaspermissionparseia.json | 106 ++++-- .../SASTestpathsaspermissiontostring[0].json | 106 ++++-- .../SASTestpathsaspermissiontostring[1].json | 106 ++++-- .../SASTestpathsaspermissiontostring[2].json | 106 ++++-- .../SASTestpathsaspermissiontostring[3].json | 106 ++++-- .../SASTestpathsaspermissiontostring[4].json | 106 ++++-- .../SASTestpathsaspermissiontostring[5].json | 106 ++++-- ...stservicesassignaturesstringtosign[0].json | 106 ++++-- ...stservicesassignaturesstringtosign[1].json | 106 ++++-- ...stservicesassignaturesstringtosign[2].json | 106 ++++-- ...stservicesassignaturesstringtosign[3].json | 106 ++++-- ...stservicesassignaturesstringtosign[4].json | 106 ++++-- ...stservicesassignaturesstringtosign[5].json | 106 ++++-- ...stservicesassignaturesstringtosign[6].json | 106 ++++-- ...stservicesassignaturesstringtosign[7].json | 106 ++++-- ...stservicesassignaturesstringtosign[8].json | 106 ++++-- ...turesstringtosignuserdelegationkey[0].json | 106 ++++-- ...uresstringtosignuserdelegationkey[10].json | 106 ++++-- ...uresstringtosignuserdelegationkey[11].json | 106 ++++-- ...uresstringtosignuserdelegationkey[12].json | 106 ++++-- ...uresstringtosignuserdelegationkey[13].json | 106 ++++-- ...turesstringtosignuserdelegationkey[1].json | 106 ++++-- ...turesstringtosignuserdelegationkey[2].json | 106 ++++-- ...turesstringtosignuserdelegationkey[3].json | 106 ++++-- ...turesstringtosignuserdelegationkey[4].json | 106 ++++-- ...turesstringtosignuserdelegationkey[5].json | 106 ++++-- ...turesstringtosignuserdelegationkey[6].json | 106 ++++-- ...turesstringtosignuserdelegationkey[7].json | 106 ++++-- ...turesstringtosignuserdelegationkey[8].json | 106 ++++-- ...turesstringtosignuserdelegationkey[9].json | 106 ++++-- ...vicesassignaturevaluesnetworktestfile.json | 122 +++--- ...ssignaturevaluesnetworktestfilesystem.json | 140 +++++-- ...esnetworktestfilesystemuserdelegation.json | 132 +++++-- ...revaluesnetworktestfileuserdelegation.json | 134 +++---- 85 files changed, 6197 insertions(+), 2362 deletions(-) delete mode 100644 sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/sas/DataLakeServiceSasQueryParameters.java delete mode 100644 sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/DataLakeServiceSasSignatureValuesJavaDocCodeSnippets.java diff --git a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeFileSystemAsyncClient.java b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeFileSystemAsyncClient.java index 5d7d5fc3009c..7b2ccdcc0c82 100644 --- a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeFileSystemAsyncClient.java +++ b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeFileSystemAsyncClient.java @@ -29,9 +29,12 @@ import com.azure.storage.file.datalake.models.PathHttpHeaders; import com.azure.storage.file.datalake.models.PathItem; import com.azure.storage.file.datalake.models.PublicAccessType; +import com.azure.storage.file.datalake.models.UserDelegationKey; +import com.azure.storage.file.datalake.sas.DataLakeServiceSasSignatureValues; import reactor.core.publisher.Mono; import java.time.Duration; +import java.time.OffsetDateTime; import java.util.List; import java.util.Map; import java.util.Objects; @@ -710,4 +713,44 @@ public Mono> getAccessPolicyWithResponse(Stri BlobContainerAsyncClient getBlobContainerAsyncClient() { return blobContainerAsyncClient; } + + /** + * Generates a user delegation SAS for the file system using the specified + * {@link DataLakeServiceSasSignatureValues}. + *

See {@link DataLakeServiceSasSignatureValues} for more information on how to construct a user delegation SAS. + *

+ * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.file.datalake.DataLakeFileSystemAsyncClient.generateUserDelegationSas#DataLakeServiceSasSignatureValues-UserDelegationKey} + * + * @param dataLakeServiceSasSignatureValues {@link DataLakeServiceSasSignatureValues} + * @param userDelegationKey A {@link UserDelegationKey} object used to sign the SAS values. + * @see DataLakeServiceAsyncClient#getUserDelegationKey(OffsetDateTime, OffsetDateTime) for more information on how + * to get a user delegation key. + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateUserDelegationSas(DataLakeServiceSasSignatureValues dataLakeServiceSasSignatureValues, + UserDelegationKey userDelegationKey) { + return blobContainerAsyncClient.generateUserDelegationSas( + Transforms.toBlobSasValues(dataLakeServiceSasSignatureValues), + Transforms.toBlobUserDelegationKey(userDelegationKey)); + } + + /** + * Generates a service SAS for the file system using the specified {@link DataLakeServiceSasSignatureValues} + *

See {@link DataLakeServiceSasSignatureValues} for more information on how to construct a service SAS.

+ * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.file.datalake.DataLakeFileSystemAsyncClient.generateSas#DataLakeServiceSasSignatureValues} + * + * @param dataLakeServiceSasSignatureValues {@link DataLakeServiceSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateSas(DataLakeServiceSasSignatureValues dataLakeServiceSasSignatureValues) { + return blobContainerAsyncClient.generateSas(Transforms.toBlobSasValues(dataLakeServiceSasSignatureValues)); + } } diff --git a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeFileSystemClient.java b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeFileSystemClient.java index 33f5708748d5..ca75801162db 100644 --- a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeFileSystemClient.java +++ b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeFileSystemClient.java @@ -21,8 +21,11 @@ import com.azure.storage.file.datalake.models.PathHttpHeaders; import com.azure.storage.file.datalake.models.PathItem; import com.azure.storage.file.datalake.models.PublicAccessType; +import com.azure.storage.file.datalake.models.UserDelegationKey; +import com.azure.storage.file.datalake.sas.DataLakeServiceSasSignatureValues; import java.time.Duration; +import java.time.OffsetDateTime; import java.util.List; import java.util.Map; import java.util.Objects; @@ -581,4 +584,43 @@ BlobContainerClient getBlobContainerClient() { return blobContainerClient; } + /** + * Generates a user delegation SAS for the file system using the specified + * {@link DataLakeServiceSasSignatureValues}. + *

See {@link DataLakeServiceSasSignatureValues} for more information on how to construct a user delegation SAS. + *

+ * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.file.datalake.DataLakeFileSystemAsyncClient.generateUserDelegationSas#DataLakeServiceSasSignatureValues-UserDelegationKey} + * + * @param dataLakeServiceSasSignatureValues {@link DataLakeServiceSasSignatureValues} + * @param userDelegationKey A {@link UserDelegationKey} object used to sign the SAS values. + * @see DataLakeServiceClient#getUserDelegationKey(OffsetDateTime, OffsetDateTime) for more information on how to + * get a user delegation key. + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateUserDelegationSas(DataLakeServiceSasSignatureValues dataLakeServiceSasSignatureValues, + UserDelegationKey userDelegationKey) { + return dataLakeFileSystemAsyncClient.generateUserDelegationSas(dataLakeServiceSasSignatureValues, + userDelegationKey); + } + + /** + * Generates a service SAS for the file system using the specified {@link DataLakeServiceSasSignatureValues} + *

See {@link DataLakeServiceSasSignatureValues} for more information on how to construct a service SAS.

+ * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.file.datalake.DataLakeFileSystemClient.generateSas#DataLakeServiceSasSignatureValues} + * + * @param dataLakeServiceSasSignatureValues {@link DataLakeServiceSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateSas(DataLakeServiceSasSignatureValues dataLakeServiceSasSignatureValues) { + return dataLakeFileSystemAsyncClient.generateSas(dataLakeServiceSasSignatureValues); + } + } diff --git a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakePathAsyncClient.java b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakePathAsyncClient.java index 0b2acf5aae0f..0260093d5fb1 100644 --- a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakePathAsyncClient.java +++ b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakePathAsyncClient.java @@ -33,9 +33,12 @@ import com.azure.storage.file.datalake.models.PathItem; import com.azure.storage.file.datalake.models.PathPermissions; import com.azure.storage.file.datalake.models.PathProperties; +import com.azure.storage.file.datalake.models.UserDelegationKey; +import com.azure.storage.file.datalake.sas.DataLakeServiceSasSignatureValues; import reactor.core.publisher.Mono; import java.nio.charset.StandardCharsets; +import java.time.OffsetDateTime; import java.util.Base64; import java.util.List; import java.util.Map; @@ -686,4 +689,43 @@ SpecializedBlobClientBuilder prepareBuilderReplacePath(String destinationPath) { BlockBlobAsyncClient getBlockBlobAsyncClient() { return this.blockBlobAsyncClient; } + + /** + * Generates a user delegation SAS for the path using the specified {@link DataLakeServiceSasSignatureValues}. + *

See {@link DataLakeServiceSasSignatureValues} for more information on how to construct a user delegation SAS. + *

+ * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.file.datalake.DataLakePathAsyncClient.generateUserDelegationSas#DataLakeServiceSasSignatureValues-UserDelegationKey} + * + * @param dataLakeServiceSasSignatureValues {@link DataLakeServiceSasSignatureValues} + * @param userDelegationKey A {@link UserDelegationKey} object used to sign the SAS values. + * @see DataLakeServiceAsyncClient#getUserDelegationKey(OffsetDateTime, OffsetDateTime) for more information on how + * to get a user delegation key. + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateUserDelegationSas(DataLakeServiceSasSignatureValues dataLakeServiceSasSignatureValues, + UserDelegationKey userDelegationKey) { + return blockBlobAsyncClient.generateUserDelegationSas( + Transforms.toBlobSasValues(dataLakeServiceSasSignatureValues), + Transforms.toBlobUserDelegationKey(userDelegationKey)); + } + + /** + * Generates a service SAS for the path using the specified {@link DataLakeServiceSasSignatureValues} + *

See {@link DataLakeServiceSasSignatureValues} for more information on how to construct a service SAS.

+ * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.file.datalake.DataLakePathAsyncClient.generateSas#DataLakeServiceSasSignatureValues} + * + * @param dataLakeServiceSasSignatureValues {@link DataLakeServiceSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateSas(DataLakeServiceSasSignatureValues dataLakeServiceSasSignatureValues) { + return blockBlobAsyncClient.generateSas(Transforms.toBlobSasValues(dataLakeServiceSasSignatureValues)); + } } diff --git a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakePathClient.java b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakePathClient.java index b200504ac844..1806f831566a 100644 --- a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakePathClient.java +++ b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakePathClient.java @@ -22,9 +22,12 @@ import com.azure.storage.file.datalake.models.PathInfo; import com.azure.storage.file.datalake.models.PathPermissions; import com.azure.storage.file.datalake.models.PathProperties; +import com.azure.storage.file.datalake.models.UserDelegationKey; +import com.azure.storage.file.datalake.sas.DataLakeServiceSasSignatureValues; import reactor.core.publisher.Mono; import java.time.Duration; +import java.time.OffsetDateTime; import java.util.List; import java.util.Map; @@ -456,4 +459,41 @@ BlockBlobClient getBlockBlobClient() { return blockBlobClient; } + /** + * Generates a user delegation SAS for the path using the specified {@link DataLakeServiceSasSignatureValues}. + *

See {@link DataLakeServiceSasSignatureValues} for more information on how to construct a user delegation SAS. + *

+ * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.file.datalake.DataLakePathClient.generateUserDelegationSas#DataLakeServiceSasSignatureValues-UserDelegationKey} + * + * @param dataLakeServiceSasSignatureValues {@link DataLakeServiceSasSignatureValues} + * @param userDelegationKey A {@link UserDelegationKey} object used to sign the SAS values. + * @see DataLakeServiceClient#getUserDelegationKey(OffsetDateTime, OffsetDateTime) for more information on how to + * get a user delegation key. + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateUserDelegationSas(DataLakeServiceSasSignatureValues dataLakeServiceSasSignatureValues, + UserDelegationKey userDelegationKey) { + return dataLakePathAsyncClient.generateUserDelegationSas(dataLakeServiceSasSignatureValues, userDelegationKey); + } + + /** + * Generates a service SAS for the path using the specified {@link DataLakeServiceSasSignatureValues} + *

See {@link DataLakeServiceSasSignatureValues} for more information on how to construct a service SAS.

+ * + *

Code Samples

+ * + * {@codesnippet com.azure.storage.file.datalake.DataLakePathClient.generateSas#DataLakeServiceSasSignatureValues} + * + * @param dataLakeServiceSasSignatureValues {@link DataLakeServiceSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateSas(DataLakeServiceSasSignatureValues dataLakeServiceSasSignatureValues) { + return dataLakePathAsyncClient.generateSas(dataLakeServiceSasSignatureValues); + } + } diff --git a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeServiceAsyncClient.java b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeServiceAsyncClient.java index 145a3d08ca12..ef73624b05e2 100644 --- a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeServiceAsyncClient.java +++ b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeServiceAsyncClient.java @@ -15,6 +15,7 @@ import com.azure.storage.blob.BlobServiceAsyncClient; import com.azure.storage.common.Utility; import com.azure.storage.common.implementation.StorageImplUtils; +import com.azure.storage.common.sas.AccountSasSignatureValues; import com.azure.storage.file.datalake.implementation.DataLakeStorageClientBuilder; import com.azure.storage.file.datalake.implementation.DataLakeStorageClientImpl; import com.azure.storage.file.datalake.models.DataLakeRequestConditions; @@ -317,4 +318,20 @@ public String getAccountName() { return this.accountName; } + /** + * Generates an account SAS for the Azure Storage account using the specified {@link AccountSasSignatureValues}. + *

See {@link AccountSasSignatureValues} for more information on how to construct an account SAS.

+ * + *

The snippet below generates a SAS that lasts for two days and gives the user read and list access to file + * systems and file shares.

+ * {@codesnippet com.azure.storage.file.datalake.DataLakeServiceAsyncClient.generateAccountSas#AccountSasSignatureValues} + * + * @param accountSasSignatureValues {@link AccountSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateAccountSas(AccountSasSignatureValues accountSasSignatureValues) { + return blobServiceAsyncClient.generateAccountSas(accountSasSignatureValues); + } + } diff --git a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeServiceClient.java b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeServiceClient.java index 83dab73065d2..4825d04d1a1e 100644 --- a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeServiceClient.java +++ b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeServiceClient.java @@ -11,6 +11,7 @@ import com.azure.core.http.rest.SimpleResponse; import com.azure.core.util.Context; import com.azure.storage.blob.BlobServiceClient; +import com.azure.storage.common.sas.AccountSasSignatureValues; import com.azure.storage.file.datalake.models.DataLakeRequestConditions; import com.azure.storage.file.datalake.models.FileSystemItem; import com.azure.storage.file.datalake.models.ListFileSystemsOptions; @@ -246,4 +247,20 @@ public Response getUserDelegationKeyWithResponse(OffsetDateTi public String getAccountName() { return this.dataLakeServiceAsyncClient.getAccountName(); } + + /** + * Generates an account SAS for the Azure Storage account using the specified {@link AccountSasSignatureValues}. + *

See {@link AccountSasSignatureValues} for more information on how to construct an account SAS.

+ * + *

The snippet below generates a SAS that lasts for two days and gives the user read and list access to file + * systems and file shares.

+ * {@codesnippet com.azure.storage.file.datalake.DataLakeServiceClient.generateAccountSas#AccountSasSignatureValues} + * + * @param accountSasSignatureValues {@link AccountSasSignatureValues} + * + * @return A {@code String} representing all SAS query parameters. + */ + public String generateAccountSas(AccountSasSignatureValues accountSasSignatureValues) { + return dataLakeServiceAsyncClient.generateAccountSas(accountSasSignatureValues); + } } diff --git a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/Transforms.java b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/Transforms.java index 94f8e33160a7..c0f7cc9e0d41 100644 --- a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/Transforms.java +++ b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/Transforms.java @@ -18,6 +18,8 @@ import com.azure.storage.blob.models.BlobRequestConditions; import com.azure.storage.blob.models.BlobSignedIdentifier; import com.azure.storage.blob.models.ListBlobContainersOptions; +import com.azure.storage.blob.sas.BlobContainerSasPermission; +import com.azure.storage.blob.sas.BlobServiceSasSignatureValues; import com.azure.storage.file.datalake.implementation.models.Path; import com.azure.storage.file.datalake.models.AccessTier; import com.azure.storage.file.datalake.models.ArchiveStatus; @@ -44,6 +46,7 @@ import com.azure.storage.file.datalake.models.PublicAccessType; import com.azure.storage.file.datalake.models.DownloadRetryOptions; import com.azure.storage.file.datalake.models.UserDelegationKey; +import com.azure.storage.file.datalake.sas.DataLakeServiceSasSignatureValues; import java.time.OffsetDateTime; import java.time.format.DateTimeFormatter; @@ -155,6 +158,21 @@ static UserDelegationKey toDataLakeUserDelegationKey(com.azure.storage.blob.mode .setValue(blobUserDelegationKey.getValue()); } + static com.azure.storage.blob.models.UserDelegationKey toBlobUserDelegationKey(UserDelegationKey + dataLakeUserDelegationKey) { + if (dataLakeUserDelegationKey == null) { + return null; + } + return new com.azure.storage.blob.models.UserDelegationKey() + .setSignedExpiry(dataLakeUserDelegationKey.getSignedExpiry()) + .setSignedObjectId(dataLakeUserDelegationKey.getSignedObjectId()) + .setSignedTenantId(dataLakeUserDelegationKey.getSignedTenantId()) + .setSignedService(dataLakeUserDelegationKey.getSignedService()) + .setSignedStart(dataLakeUserDelegationKey.getSignedStart()) + .setSignedVersion(dataLakeUserDelegationKey.getSignedVersion()) + .setValue(dataLakeUserDelegationKey.getValue()); + } + static BlobHttpHeaders toBlobHttpHeaders(PathHttpHeaders pathHTTPHeaders) { if (pathHTTPHeaders == null) { return null; @@ -374,4 +392,37 @@ private static DataLakeAccessPolicy toDataLakeAccessPolicy(BlobAccessPolicy acce .setPermissions(accessPolicy.getPermissions()); } + static BlobServiceSasSignatureValues toBlobSasValues(DataLakeServiceSasSignatureValues + dataLakeServiceSasSignatureValues) { + if (dataLakeServiceSasSignatureValues == null) { + return null; + } + BlobServiceSasSignatureValues blobServiceSasSignatureValues; + if (dataLakeServiceSasSignatureValues.getIdentifier() != null) { + blobServiceSasSignatureValues = + new BlobServiceSasSignatureValues(dataLakeServiceSasSignatureValues.getIdentifier()); + } else { + // It's ok to use blob container sas permission since its a super set of blob sas permission + blobServiceSasSignatureValues = + new BlobServiceSasSignatureValues(dataLakeServiceSasSignatureValues.getExpiryTime(), + BlobContainerSasPermission.parse(dataLakeServiceSasSignatureValues.getPermissions())); + } + blobServiceSasSignatureValues.setVersion(dataLakeServiceSasSignatureValues.getVersion()) + .setProtocol(dataLakeServiceSasSignatureValues.getProtocol()) + .setStartTime(dataLakeServiceSasSignatureValues.getStartTime()) + .setExpiryTime(dataLakeServiceSasSignatureValues.getExpiryTime()) + .setSasIpRange(dataLakeServiceSasSignatureValues.getSasIpRange()) + .setIdentifier(dataLakeServiceSasSignatureValues.getIdentifier()) + .setCacheControl(dataLakeServiceSasSignatureValues.getCacheControl()) + .setContentDisposition(dataLakeServiceSasSignatureValues.getContentDisposition()) + .setContentEncoding(dataLakeServiceSasSignatureValues.getContentEncoding()) + .setContentLanguage(dataLakeServiceSasSignatureValues.getContentLanguage()) + .setContentType(dataLakeServiceSasSignatureValues.getContentType()); + if (dataLakeServiceSasSignatureValues.getPermissions() != null) { + // It's ok to use blob container sas permission since its a super set of blob sas permission + blobServiceSasSignatureValues.setPermissions(BlobContainerSasPermission.parse( + dataLakeServiceSasSignatureValues.getPermissions())); + } + return blobServiceSasSignatureValues; + } } diff --git a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/sas/DataLakeServiceSasQueryParameters.java b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/sas/DataLakeServiceSasQueryParameters.java deleted file mode 100644 index 9de0ee994b08..000000000000 --- a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/sas/DataLakeServiceSasQueryParameters.java +++ /dev/null @@ -1,276 +0,0 @@ -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. - -package com.azure.storage.file.datalake.sas; - -import com.azure.storage.common.Utility; -import com.azure.storage.common.implementation.Constants; -import com.azure.storage.common.sas.BaseSasQueryParameters; -import com.azure.storage.common.sas.SasIpRange; -import com.azure.storage.common.sas.SasProtocol; -import com.azure.storage.file.datalake.DataLakePathClientBuilder; -import com.azure.storage.file.datalake.models.UserDelegationKey; - -import java.time.OffsetDateTime; -import java.util.Map; - -/** - * Represents the components that make up an Azure Storage SAS' query parameters. This type is not constructed directly - * by the user; it is only generated by the {@link DataLakeServiceSasSignatureValues} type. Once generated, it can be - * encoded to a {@code String} and set on a {@link DataLakePathClientBuilder} object to be constructed as part of a URL - * or appended to a URL directly (though caution should be taken here in case there are existing query parameters, - * which might affect the appropriate means of appending these query parameters). NOTE: Instances of this class are - * immutable to ensure thread safety. - */ -public final class DataLakeServiceSasQueryParameters extends BaseSasQueryParameters { - - private final String identifier; - - private final String keyObjectId; - - private final String keyTenantId; - - private final OffsetDateTime keyStart; - - private final OffsetDateTime keyExpiry; - - private final String keyService; - - private final String keyVersion; - - private final String resource; - - private final String cacheControl; - - private final String contentDisposition; - - private final String contentEncoding; - - private final String contentLanguage; - - private final String contentType; - - /** - * Creates a new {@link DataLakeServiceSasQueryParameters} object. - * - * @param queryParamsMap All query parameters for the request as key-value pairs - * @param removeSasParametersFromMap When {@code true}, the SAS query parameters will be removed from - * queryParamsMap - */ - public DataLakeServiceSasQueryParameters(Map queryParamsMap, boolean removeSasParametersFromMap) { - super(queryParamsMap, removeSasParametersFromMap); - this.identifier = getQueryParameter(queryParamsMap, Constants.UrlConstants.SAS_SIGNED_IDENTIFIER, - removeSasParametersFromMap); - this.keyObjectId = getQueryParameter(queryParamsMap, Constants.UrlConstants.SAS_SIGNED_OBJECT_ID, - removeSasParametersFromMap); - this.keyTenantId = getQueryParameter(queryParamsMap, Constants.UrlConstants.SAS_SIGNED_TENANT_ID, - removeSasParametersFromMap); - this.keyStart = getQueryParameter(queryParamsMap, Constants.UrlConstants.SAS_SIGNED_KEY_START, - removeSasParametersFromMap, Utility::parseDate); - this.keyExpiry = getQueryParameter(queryParamsMap, Constants.UrlConstants.SAS_SIGNED_KEY_EXPIRY, - removeSasParametersFromMap, Utility::parseDate); - this.keyService = getQueryParameter(queryParamsMap, Constants.UrlConstants.SAS_SIGNED_KEY_SERVICE, - removeSasParametersFromMap); - this.keyVersion = getQueryParameter(queryParamsMap, Constants.UrlConstants.SAS_SIGNED_KEY_VERSION, - removeSasParametersFromMap); - this.resource = getQueryParameter(queryParamsMap, Constants.UrlConstants.SAS_SIGNED_RESOURCE, - removeSasParametersFromMap); - this.cacheControl = getQueryParameter(queryParamsMap, Constants.UrlConstants.SAS_CACHE_CONTROL, - removeSasParametersFromMap); - this.contentDisposition = getQueryParameter(queryParamsMap, Constants.UrlConstants.SAS_CONTENT_DISPOSITION, - removeSasParametersFromMap); - this.contentEncoding = getQueryParameter(queryParamsMap, Constants.UrlConstants.SAS_CONTENT_ENCODING, - removeSasParametersFromMap); - this.contentLanguage = getQueryParameter(queryParamsMap, Constants.UrlConstants.SAS_CONTENT_LANGUAGE, - removeSasParametersFromMap); - this.contentType = getQueryParameter(queryParamsMap, Constants.UrlConstants.SAS_CONTENT_TYPE, - removeSasParametersFromMap); - } - - /** - * Creates a new {@link DataLakeServiceSasQueryParameters} object. These objects are only created internally by - * SASSignatureValues classes. - * - * @param version A {@code String} representing the storage version. - * @param protocol A {@code String} representing the allowed HTTP protocol(s) or {@code null}. - * @param startTime A {@code java.util.Date} representing the start time for this SAS token or {@code null}. - * @param expiryTime A {@code java.util.Date} representing the expiry time for this SAS token. - * @param sasIpRange A {@link SasIpRange} representing the range of valid IP addresses for this SAS token or - * {@code null}. - * @param identifier A {@code String} representing the signed identifier (only for Service SAS) or {@code null}. - * @param resource A {@code String} representing the storage file system or path (only for Service SAS). - * @param permissions A {@code String} representing the storage permissions or {@code null}. - * @param signature A {@code String} representing the signature for the SAS token. - */ - DataLakeServiceSasQueryParameters(String version, SasProtocol protocol, OffsetDateTime startTime, - OffsetDateTime expiryTime, SasIpRange sasIpRange, String identifier, String resource, String permissions, - String signature, String cacheControl, String contentDisposition, String contentEncoding, - String contentLanguage, String contentType, UserDelegationKey key) { - super(version, protocol, startTime, expiryTime, sasIpRange, permissions, signature); - - this.identifier = identifier; - this.resource = resource; - this.cacheControl = cacheControl; - this.contentDisposition = contentDisposition; - this.contentEncoding = contentEncoding; - this.contentLanguage = contentLanguage; - this.contentType = contentType; - - if (key != null) { - this.keyObjectId = key.getSignedObjectId(); - this.keyTenantId = key.getSignedTenantId(); - this.keyStart = key.getSignedStart(); - this.keyExpiry = key.getSignedExpiry(); - this.keyService = key.getSignedService(); - this.keyVersion = key.getSignedVersion(); - } else { - this.keyObjectId = null; - this.keyTenantId = null; - this.keyStart = null; - this.keyExpiry = null; - this.keyService = null; - this.keyVersion = null; - } - } - - /** - * @return The signed identifier (only for {@link DataLakeServiceSasSignatureValues}) or {@code null}. Please see - * here - * for more information. - */ - public String getIdentifier() { - return identifier; - } - - /** - * @return The storage file system or path (only for {@link DataLakeServiceSasSignatureValues}). - */ - public String getResource() { - return resource; - } - - /** - * @return The Cache-Control header value when a client accesses the resource with this sas token. - */ - public String getCacheControl() { - return cacheControl; - } - - /** - * @return The Content-Disposition header value when a client accesses the resource with this sas token. - */ - public String getContentDisposition() { - return contentDisposition; - } - - /** - * @return The Content-Encoding header value when a client accesses the resource with this sas token. - */ - public String getContentEncoding() { - return contentEncoding; - } - - /** - * @return The Content-Language header value when a client accesses the resource with this sas token. - */ - public String getContentLanguage() { - return contentLanguage; - } - - /** - * @return The Content-Type header value when a client accesses the resource with this sas token. - */ - public String getContentType() { - return contentType; - } - - /** - * @return the object ID of the key. - */ - public String getKeyObjectId() { - return keyObjectId; - } - - /** - * @return the tenant ID of the key. - */ - public String getKeyTenantId() { - return keyTenantId; - } - - /** - * @return the datetime when the key becomes active. - */ - public OffsetDateTime getKeyStart() { - return keyStart; - } - - /** - * @return the datetime when the key expires. - */ - public OffsetDateTime getKeyExpiry() { - return keyExpiry; - } - - /** - * @return the services that are permitted by the key. - */ - public String getKeyService() { - return keyService; - } - - /** - * @return the service version that created the key. - */ - public String getKeyVersion() { - return keyVersion; - } - - UserDelegationKey userDelegationKey() { - return new UserDelegationKey() - .setSignedExpiry(this.keyExpiry) - .setSignedObjectId(this.keyObjectId) - .setSignedService(this.keyService) - .setSignedStart(this.keyStart) - .setSignedTenantId(this.keyTenantId) - .setSignedVersion(this.keyVersion); - } - - /** - * Encodes all SAS query parameters into a string that can be appended to a URL. - * - * @return A {@code String} representing all SAS query parameters. - */ - public String encode() { - /* - We should be url-encoding each key and each value, but because we know all the keys and values will encode to - themselves, we cheat except for the signature value. - */ - StringBuilder sb = new StringBuilder(); - - tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SERVICE_VERSION, this.version); - tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_PROTOCOL, this.protocol); - tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_START_TIME, formatQueryParameterDate(this.startTime)); - tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_EXPIRY_TIME, formatQueryParameterDate(this.expiryTime)); - tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_IP_RANGE, this.sasIpRange); - tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_IDENTIFIER, this.identifier); - tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_OBJECT_ID, this.keyObjectId); - tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_TENANT_ID, this.keyTenantId); - tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_KEY_START, - formatQueryParameterDate(this.keyStart)); - tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_KEY_EXPIRY, - formatQueryParameterDate(this.keyExpiry)); - tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_KEY_SERVICE, this.keyService); - tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_KEY_VERSION, this.keyVersion); - tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_RESOURCE, this.resource); - tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNED_PERMISSIONS, this.permissions); - tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_SIGNATURE, this.signature); - tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_CACHE_CONTROL, this.cacheControl); - tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_CONTENT_DISPOSITION, this.contentDisposition); - tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_CONTENT_ENCODING, this.contentEncoding); - tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_CONTENT_LANGUAGE, this.contentLanguage); - tryAppendQueryParameter(sb, Constants.UrlConstants.SAS_CONTENT_TYPE, this.contentType); - - return sb.toString(); - } -} diff --git a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/sas/DataLakeServiceSasSignatureValues.java b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/sas/DataLakeServiceSasSignatureValues.java index 3dc9b5a7b391..ac996fbce298 100644 --- a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/sas/DataLakeServiceSasSignatureValues.java +++ b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/sas/DataLakeServiceSasSignatureValues.java @@ -3,55 +3,27 @@ package com.azure.storage.file.datalake.sas; -import com.azure.core.util.CoreUtils; -import com.azure.core.util.logging.ClientLogger; -import com.azure.storage.common.StorageSharedKeyCredential; -import com.azure.storage.common.Utility; -import com.azure.storage.common.implementation.Constants; import com.azure.storage.common.implementation.StorageImplUtils; import com.azure.storage.common.sas.SasIpRange; import com.azure.storage.common.sas.SasProtocol; -import com.azure.storage.file.datalake.DataLakeServiceVersion; import com.azure.storage.file.datalake.models.UserDelegationKey; import java.time.OffsetDateTime; /** - * Used to generate a Shared Access Signature (SAS) for an Azure Data Lake Storage service. Once all the values here - * are set, call {@link - * #generateSasQueryParameters(StorageSharedKeyCredential) generateSasQueryParameters(StorageSharedKeyCredential)} or - * {@link #generateSasQueryParameters(UserDelegationKey, String) generateSasQueryParameters(UserDelegationKey, String)} - * to obtain a representation of the SAS which can be applied to dfs urls. + * Used to initialize parameters for a Shared Access Signature (SAS) for an Azure Data Lake Storage service. Once all + * the values here are set, use the appropriate SAS generation method on the desired file system/path client to obtain a + * representation of the SAS which can then be applied to a new client using the .sasToken(String) method on the + * desired client builder. * - *

Generating SAS query parameters with {@link StorageSharedKeyCredential}

- * The following code generates SAS query parameters for an Azure storage path. - *

- * {@codesnippet com.azure.storage.file.datalake.sas.DataLakeServiceSasSignatureValues.generateSasQueryParameters#StorageSharedKeyCredential} - * - *

Generating SAS query parameters with {@link UserDelegationKey}

- * The following sample generates SAS query parameters for an Azure storage file system. - *

- * {@codesnippet com.azure.storage.file.datalake.sas.DataLakeServiceSasSignatureValues.generateSasQueryParameters#UserDelegationKey-String} - * - * @see DataLakeServiceSasQueryParameters * @see Storage SAS overview * @see Constructing a Service * SAS + * @see Constructing a + * User Delegation SAS */ public final class DataLakeServiceSasSignatureValues { - /** - * The SAS blob constant. - */ - private static final String SAS_BLOB_CONSTANT = "b"; - - /** - * The SAS blob container constant. - */ - private static final String SAS_CONTAINER_CONSTANT = "c"; - - private final ClientLogger logger = new ClientLogger(DataLakeServiceSasSignatureValues.class); - private String version; private SasProtocol protocol; @@ -64,14 +36,6 @@ public final class DataLakeServiceSasSignatureValues { private SasIpRange sasIpRange; - private String fileSystemName; - - private String pathName; - - private String resource; - - private String snapshotId; - private String identifier; private String cacheControl; @@ -84,66 +48,41 @@ public final class DataLakeServiceSasSignatureValues { private String contentType; - /** - * Creates an object with empty values for all fields. - */ - public DataLakeServiceSasSignatureValues() { - } - /** * Creates an object with the specified expiry time and permissions * - * @param expiryTime Time the SAS becomes valid - * @param permissions Permissions granted by the SAS + * @param expiryTime The time after which the SAS will no longer work. + * @param permissions {@link FileSystemSasPermission} allowed by the SAS. */ - DataLakeServiceSasSignatureValues(OffsetDateTime expiryTime, String permissions) { + public DataLakeServiceSasSignatureValues(OffsetDateTime expiryTime, FileSystemSasPermission permissions) { + StorageImplUtils.assertNotNull("expiryTime", expiryTime); + StorageImplUtils.assertNotNull("permissions", permissions); this.expiryTime = expiryTime; - this.permissions = permissions; + this.permissions = permissions.toString(); } /** - * Creates an object with the specified identifier + * Creates an object with the specified expiry time and permissions * - * @param identifier Identifier for the SAS + * @param expiryTime When the SAS will no longer work + * @param permissions {@link PathSasPermission} allowed by the SAS */ - DataLakeServiceSasSignatureValues(String identifier) { - this.identifier = identifier; + public DataLakeServiceSasSignatureValues(OffsetDateTime expiryTime, PathSasPermission permissions) { + StorageImplUtils.assertNotNull("expiryTime", expiryTime); + StorageImplUtils.assertNotNull("permissions", permissions); + this.expiryTime = expiryTime; + this.permissions = permissions.toString(); } /** - * Creates an object with specified values. + * Creates an object with the specified identifier. + * NOTE: Identifier can not be used for a {@link UserDelegationKey} SAS. * - * @param version The version of the service this SAS will target. If not specified, it will default to the version - * targeted by the library. - * @param sasProtocol The {@link SasProtocol} which determines the protocols allowed by the SAS. - * @param startTime When the SAS will take effect. - * @param expiryTime The time after which the SAS will no longer work. - * @param permission The permissions string allowed by the SAS. - * @param sasIpRange The {@link SasIpRange} which determines the IP ranges that are allowed to use the SAS. - * @param identifier The name of the access policy on the container this SAS references if any. - * @param cacheControl The cache-control header for the SAS. - * @param contentDisposition The content-disposition header for the SAS. - * @param contentEncoding The content-encoding header for the SAS. - * @param contentLanguage The content-language header for the SAS. - * @param contentType The content-type header for the SAS. + * @param identifier Name of the access policy */ - public DataLakeServiceSasSignatureValues(String version, SasProtocol sasProtocol, OffsetDateTime startTime, - OffsetDateTime expiryTime, String permission, SasIpRange sasIpRange, String identifier, String cacheControl, - String contentDisposition, String contentEncoding, String contentLanguage, String contentType) { - if (version != null) { - this.version = version; - } - this.protocol = sasProtocol; - this.startTime = startTime; - this.expiryTime = expiryTime; - this.permissions = permission; - this.sasIpRange = sasIpRange; + public DataLakeServiceSasSignatureValues(String identifier) { + StorageImplUtils.assertNotNull("identifier", identifier); this.identifier = identifier; - this.cacheControl = cacheControl; - this.contentDisposition = contentDisposition; - this.contentEncoding = contentEncoding; - this.contentLanguage = contentLanguage; - this.contentType = contentType; } /** @@ -272,48 +211,6 @@ public DataLakeServiceSasSignatureValues setSasIpRange(SasIpRange sasIpRange) { return this; } - /** - * Gets the name of the file system the SAS user may access. - * - * @return The name of the file system the SAS user may access. - */ - public String getFileSystemName() { - return fileSystemName; - } - - /** - * Sets the container the SAS user may access. - * - * @param fileSystemName The name of the file system. - * @return The updated DataLakeServiceSasSignatureValues object. - */ - public DataLakeServiceSasSignatureValues setFileSystemName(String fileSystemName) { - this.fileSystemName = fileSystemName; - return this; - } - - /** - * Decodes and gets the name of the path the SAS user may access. {@code null} or an empty string is returned when a - * creating a file system SAS. - * - * @return The decoded name of the path the SAS user may access. {@code null} or an empty string is returned when a - * creating a file system SAS. - */ - public String getPathName() { - return pathName; - } - - /** - * Sets the path the SAS user may access. Use {@code null} or an empty string to create a file system SAS. - * - * @param pathName The name of the path. Use {@code null} or an empty string to create a file system SAS. - * @return The updated DataLakeServiceSasSignatureValues object. - */ - public DataLakeServiceSasSignatureValues setPathName(String pathName) { - this.pathName = (pathName == null) ? null : Utility.urlDecode(pathName); - return this; - } - /** * @return the name of the access policy on the file system this SAS references if any. Please see * here @@ -425,198 +322,4 @@ public DataLakeServiceSasSignatureValues setContentType(String contentType) { this.contentType = contentType; return this; } - - /** - * Uses an account's shared key credential to sign these signature values to produce the proper SAS query - * parameters. - * - *

Notes on SAS generation

- *

- *

    - *
  • If {@link #setVersion(String) version} is not set, the {@link DataLakeServiceVersion#getLatest() latest - * service version} is used.
  • - *
  • If {@link #setIdentifier(String) identifier} is set, {@link #setExpiryTime(OffsetDateTime) expiryTime} and - * permissions should not be set. These values are inherited from the stored access policy.
  • - *
  • Otherwise, {@link #setExpiryTime(OffsetDateTime) expiryTime} and {@link #getPermissions() permissions} must - * be set.
  • - *
- * - *

- * The type of SAS query parameters returned depends on the following: - *

    - *
  1. If {@link #getPathName()} is not set, file system SAS query parameters are returned.
  2. - *
  3. If only {@link #getPathName()} is set, path SAS query parameters are returned.
  4. - *
- * - * See class level JavaDocs for code snippets. - * - * @param storageSharedKeyCredentials A {@link StorageSharedKeyCredential} object used to sign the SAS values. - * @return {@link DataLakeServiceSasQueryParameters} - * @throws IllegalStateException If the HMAC-SHA256 algorithm isn't supported, if the key isn't a valid Base64 - * encoded string, or the UTF-8 charset isn't supported. - * @throws IllegalArgumentException if {@link #getPermissions()} contains an invalid character for the SAS resource. - * @throws NullPointerException if {@code storageSharedKeyCredentials} is null. - */ - public DataLakeServiceSasQueryParameters generateSasQueryParameters( - StorageSharedKeyCredential storageSharedKeyCredentials) { - StorageImplUtils.assertNotNull("storageSharedKeyCredentials", storageSharedKeyCredentials); - - ensureState(); - - // Signature is generated on the un-url-encoded values. - final String canonicalName = getCanonicalName(storageSharedKeyCredentials.getAccountName()); - final String signature = storageSharedKeyCredentials.computeHmac256(stringToSign(canonicalName)); - - return new DataLakeServiceSasQueryParameters(this.version, this.protocol, this.startTime, this.expiryTime, - this.sasIpRange, this.identifier, this.resource, this.permissions, signature, this.cacheControl, - this.contentDisposition, this.contentEncoding, this.contentLanguage, this.contentType, null /* delegate */); - } - - /** - * Uses a user delegation key to sign these signature values to produce the proper SAS query parameters. - * - *

Notes on SAS generation

- *

- *

    - *
  • If {@link #setVersion(String) version} is not set, the {@link DataLakeServiceVersion#getLatest() latest - * service version} is used.
  • - *
  • If {@link #setIdentifier(String) identifier} is set, {@link #setExpiryTime(OffsetDateTime) expiryTime} and - * permissions should not be set. These values are inherited from the stored access policy.
  • - *
  • Otherwise, {@link #setExpiryTime(OffsetDateTime) expiryTime} and {@link #getPermissions() permissions} must - * be set.
  • - *
- * - *

- * The type of SAS query parameters returned depends on the following: - *

    - *
  1. If {@link #getPathName()} is not set, file system SAS query parameters are returned.
  2. - *
  3. If only {@link #getPathName()} is set, path SAS query parameters are returned.
  4. - *
- * - * See class level JavaDocs for code snippets. - * - * @param delegationKey A {@link UserDelegationKey} object used to sign the SAS values. - * @param accountName Azure Storage account name to generate SAS for. - * @return {@link DataLakeServiceSasQueryParameters} - * @throws IllegalStateException If the HMAC-SHA256 algorithm isn't supported, if the key isn't a valid Base64 - * encoded string, or the UTF-8 charset isn't supported. - * @throws IllegalArgumentException if {@link #getPermissions()} contains an invalid character for the SAS resource. - * @throws NullPointerException if {@code delegationKey} or {@code account} is null. - * @see - * Create a user delegation SAS - */ - public DataLakeServiceSasQueryParameters generateSasQueryParameters(UserDelegationKey delegationKey, - String accountName) { - StorageImplUtils.assertNotNull("delegationKey", delegationKey); - StorageImplUtils.assertNotNull("accountName", accountName); - - ensureState(); - - // Signature is generated on the un-url-encoded values. - final String canonicalName = getCanonicalName(accountName); - String signature = StorageImplUtils.computeHMac256( - delegationKey.getValue(), stringToSign(delegationKey, canonicalName)); - - - return new DataLakeServiceSasQueryParameters(this.version, this.protocol, this.startTime, this.expiryTime, - this.sasIpRange, null /* identifier */, this.resource, this.permissions, signature, - this.cacheControl, this.contentDisposition, this.contentEncoding, this.contentLanguage, this.contentType, - delegationKey); - } - - /** - * Ensures that the builder's properties are in a consistent state. - - * 1. If there is no version, use latest. - * 2. Resource name is chosen by: - * a. If "pathName" is _not_ set, it is a file system resource. - * b. Otherwise, it is a path resource. - * 3. Reparse permissions depending on what the resource is. If it is an unrecognised resource, do nothing. - * - * Taken from: - * https://github.com/Azure/azure-storage-blob-go/blob/master/azblob/sas_service.go#L33 - * https://github.com/Azure/azure-sdk-for-net/blob/master/sdk/storage/Azure.Storage.Blobs/src/Sas/BlobSasBuilder.cs - */ - private void ensureState() { - if (version == null) { - version = DataLakeServiceVersion.getLatest().getVersion(); - } - - if (CoreUtils.isNullOrEmpty(pathName)) { - resource = SAS_CONTAINER_CONSTANT; - } else { - resource = SAS_BLOB_CONSTANT; - } - - if (permissions != null) { - switch (resource) { - case SAS_BLOB_CONSTANT: - permissions = PathSasPermission.parse(permissions).toString(); - break; - case SAS_CONTAINER_CONSTANT: - permissions = FileSystemSasPermission.parse(permissions).toString(); - break; - default: - // We won't reparse the permissions if we don't know the type. - logger.info("Not re-parsing permissions. Resource type '{}' is unknown.", resource); - break; - } - } - } - - /** - * Computes the canonical name for a file system or path resource for SAS signing. - */ - private String getCanonicalName(String account) { - // File System: "/blob/account/containername" - // Path: "/blob/account/containername/blobname" - return CoreUtils.isNullOrEmpty(pathName) - ? String.format("/blob/%s/%s", account, fileSystemName) - : String.format("/blob/%s/%s/%s", account, fileSystemName, pathName.replace("\\", "/")); - } - - private String stringToSign(String canonicalName) { - return String.join("\n", - this.permissions == null ? "" : permissions, - this.startTime == null ? "" : Constants.ISO_8601_UTC_DATE_FORMATTER.format(this.startTime), - this.expiryTime == null ? "" : Constants.ISO_8601_UTC_DATE_FORMATTER.format(this.expiryTime), - canonicalName, - this.identifier == null ? "" : this.identifier, - this.sasIpRange == null ? "" : this.sasIpRange.toString(), - this.protocol == null ? "" : this.protocol.toString(), - version, - resource, - this.snapshotId == null ? "" : this.snapshotId, - this.cacheControl == null ? "" : this.cacheControl, - this.contentDisposition == null ? "" : this.contentDisposition, - this.contentEncoding == null ? "" : this.contentEncoding, - this.contentLanguage == null ? "" : this.contentLanguage, - this.contentType == null ? "" : this.contentType - ); - } - - private String stringToSign(final UserDelegationKey key, String canonicalName) { - return String.join("\n", - this.permissions == null ? "" : this.permissions, - this.startTime == null ? "" : Constants.ISO_8601_UTC_DATE_FORMATTER.format(this.startTime), - this.expiryTime == null ? "" : Constants.ISO_8601_UTC_DATE_FORMATTER.format(this.expiryTime), - canonicalName, - key.getSignedObjectId() == null ? "" : key.getSignedObjectId(), - key.getSignedTenantId() == null ? "" : key.getSignedTenantId(), - key.getSignedStart() == null ? "" : Constants.ISO_8601_UTC_DATE_FORMATTER.format(key.getSignedStart()), - key.getSignedExpiry() == null ? "" : Constants.ISO_8601_UTC_DATE_FORMATTER.format(key.getSignedExpiry()), - key.getSignedService() == null ? "" : key.getSignedService(), - key.getSignedVersion() == null ? "" : key.getSignedVersion(), - this.sasIpRange == null ? "" : this.sasIpRange.toString(), - this.protocol == null ? "" : this.protocol.toString(), - version, - resource, - this.snapshotId == null ? "" : this.snapshotId, - this.cacheControl == null ? "" : this.cacheControl, - this.contentDisposition == null ? "" : this.contentDisposition, - this.contentEncoding == null ? "" : this.contentEncoding, - this.contentLanguage == null ? "" : this.contentLanguage, - this.contentType == null ? "" : this.contentType - ); - } } diff --git a/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/DataLakeServiceAsyncClientJavaDocCodeSnippets.java b/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/DataLakeServiceAsyncClientJavaDocCodeSnippets.java index 070e1a0c0ad7..b5d147f90f8a 100644 --- a/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/DataLakeServiceAsyncClientJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/DataLakeServiceAsyncClientJavaDocCodeSnippets.java @@ -3,11 +3,16 @@ package com.azure.storage.file.datalake; +import com.azure.storage.common.sas.AccountSasPermission; +import com.azure.storage.common.sas.AccountSasResourceType; +import com.azure.storage.common.sas.AccountSasService; +import com.azure.storage.common.sas.AccountSasSignatureValues; import com.azure.storage.file.datalake.models.DataLakeRequestConditions; import com.azure.storage.file.datalake.models.FileSystemListDetails; import com.azure.storage.file.datalake.models.ListFileSystemsOptions; import com.azure.storage.file.datalake.models.PublicAccessType; +import java.time.Duration; import java.time.OffsetDateTime; import java.util.Collections; import java.util.Map; @@ -112,4 +117,24 @@ public void getUserDelegationKeyWithResponse() { System.out.printf("User delegation key: %s%n", response.getValue().getValue())); // END: com.azure.storage.file.datalake.DataLakeServiceAsyncClient.getUserDelegationKeyWithResponse#OffsetDateTime-OffsetDateTime } + + /** + * Code snippet for {@link DataLakeServiceAsyncClient#generateAccountSas(AccountSasSignatureValues)} + */ + public void generateAccountSas() { + // BEGIN: com.azure.storage.file.datalake.DataLakeServiceAsyncClient.generateAccountSas#AccountSasSignatureValues + AccountSasPermission permissions = new AccountSasPermission() + .setListPermission(true) + .setReadPermission(true); + AccountSasResourceType resourceTypes = new AccountSasResourceType().setContainer(true); + AccountSasService services = new AccountSasService().setBlobAccess(true).setFileAccess(true); + OffsetDateTime expiryTime = OffsetDateTime.now().plus(Duration.ofDays(2)); + + AccountSasSignatureValues sasValues = + new AccountSasSignatureValues(expiryTime, permissions, services, resourceTypes); + + // Client must be authenticated via StorageSharedKeyCredential + String sas = client.generateAccountSas(sasValues); + // END: com.azure.storage.file.datalake.DataLakeServiceAsyncClient.generateAccountSas#AccountSasSignatureValues + } } diff --git a/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/DataLakeServiceClientJavaDocCodeSnippets.java b/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/DataLakeServiceClientJavaDocCodeSnippets.java index 37556922941d..bfdb8d1ca731 100644 --- a/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/DataLakeServiceClientJavaDocCodeSnippets.java +++ b/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/DataLakeServiceClientJavaDocCodeSnippets.java @@ -4,6 +4,10 @@ package com.azure.storage.file.datalake; import com.azure.core.util.Context; +import com.azure.storage.common.sas.AccountSasPermission; +import com.azure.storage.common.sas.AccountSasResourceType; +import com.azure.storage.common.sas.AccountSasService; +import com.azure.storage.common.sas.AccountSasSignatureValues; import com.azure.storage.file.datalake.models.DataLakeRequestConditions; import com.azure.storage.file.datalake.models.FileSystemListDetails; import com.azure.storage.file.datalake.models.ListFileSystemsOptions; @@ -122,4 +126,24 @@ public void getUserDelegationKey() { // END: com.azure.storage.file.datalake.DataLakeServiceClient.getUserDelegationKeyWithResponse#OffsetDateTime-OffsetDateTime-Duration-Context } + /** + * Code snippet for {@link DataLakeServiceClient#generateAccountSas(AccountSasSignatureValues)} + */ + public void generateAccountSas() { + // BEGIN: com.azure.storage.file.datalake.DataLakeServiceClient.generateAccountSas#AccountSasSignatureValues + AccountSasPermission permissions = new AccountSasPermission() + .setListPermission(true) + .setReadPermission(true); + AccountSasResourceType resourceTypes = new AccountSasResourceType().setContainer(true); + AccountSasService services = new AccountSasService().setBlobAccess(true).setFileAccess(true); + OffsetDateTime expiryTime = OffsetDateTime.now().plus(Duration.ofDays(2)); + + AccountSasSignatureValues sasValues = + new AccountSasSignatureValues(expiryTime, permissions, services, resourceTypes); + + // Client must be authenticated via StorageSharedKeyCredential + String sas = client.generateAccountSas(sasValues); + // END: com.azure.storage.file.datalake.DataLakeServiceClient.generateAccountSas#AccountSasSignatureValues + } + } diff --git a/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/DataLakeServiceSasSignatureValuesJavaDocCodeSnippets.java b/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/DataLakeServiceSasSignatureValuesJavaDocCodeSnippets.java deleted file mode 100644 index 0334f7eb9624..000000000000 --- a/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/DataLakeServiceSasSignatureValuesJavaDocCodeSnippets.java +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. - -package com.azure.storage.file.datalake; - -import com.azure.storage.common.StorageSharedKeyCredential; -import com.azure.storage.common.sas.SasProtocol; -import com.azure.storage.file.datalake.models.UserDelegationKey; -import com.azure.storage.file.datalake.sas.DataLakeServiceSasQueryParameters; -import com.azure.storage.file.datalake.sas.DataLakeServiceSasSignatureValues; -import com.azure.storage.file.datalake.sas.PathSasPermission; - -import java.time.OffsetDateTime; - -/** - * Code snippets for {@link DataLakeServiceSasSignatureValues}. - */ -public class DataLakeServiceSasSignatureValuesJavaDocCodeSnippets { - /** - * Generates a file or directory SAS with {@link StorageSharedKeyCredential} - */ - public void fileSas() { - // BEGIN: com.azure.storage.file.datalake.sas.DataLakeServiceSasSignatureValues.generateSasQueryParameters#StorageSharedKeyCredential - PathSasPermission pathPermission = new PathSasPermission().setReadPermission(true); - - // We are creating a SAS to a path because we set both the file system name and path name. - DataLakeServiceSasSignatureValues builder = new DataLakeServiceSasSignatureValues() - .setProtocol(SasProtocol.HTTPS_ONLY) // Users MUST use HTTPS (not HTTP). - .setExpiryTime(OffsetDateTime.now().plusDays(2)) - .setFileSystemName("my-file-system") - .setPathName("HelloWorld.txt") - .setPermissions(pathPermission); - - StorageSharedKeyCredential credential = new StorageSharedKeyCredential("account-name", "key"); - DataLakeServiceSasQueryParameters sasQueryParameters = builder.generateSasQueryParameters(credential); - // END: com.azure.storage.file.datalake.sas.DataLakeServiceSasSignatureValues.generateSasQueryParameters#StorageSharedKeyCredential - } - - /** - * Generates a file system SAS using {@link UserDelegationKey}. - */ - public void userDelegationKey() { - // BEGIN: com.azure.storage.file.datalake.sas.DataLakeServiceSasSignatureValues.generateSasQueryParameters#UserDelegationKey-String - PathSasPermission pathPermission = new PathSasPermission() - .setReadPermission(true) - .setWritePermission(true); - - // We are creating a SAS to a file system because only file system name is set. - DataLakeServiceSasSignatureValues builder = new DataLakeServiceSasSignatureValues() - .setProtocol(SasProtocol.HTTPS_ONLY) // Users MUST use HTTPS (not HTTP). - .setExpiryTime(OffsetDateTime.now().plusDays(2)) - .setFileSystemName("my-file-system") - .setPermissions(pathPermission); - - // Get a user delegation key after signing in with Azure AD - UserDelegationKey credential = new UserDelegationKey(); - String account = "my-path-storage-account"; - DataLakeServiceSasQueryParameters sasQueryParameters = builder.generateSasQueryParameters(credential, account); - // END: com.azure.storage.file.datalake.sas.DataLakeServiceSasSignatureValues.generateSasQueryParameters#UserDelegationKey-String - } -} diff --git a/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/FileSystemAsyncClientJavaDocCodeSamples.java b/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/FileSystemAsyncClientJavaDocCodeSamples.java index 17a3a1841e69..11fbee3cea5b 100644 --- a/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/FileSystemAsyncClientJavaDocCodeSamples.java +++ b/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/FileSystemAsyncClientJavaDocCodeSamples.java @@ -10,6 +10,9 @@ import com.azure.storage.file.datalake.models.ListPathsOptions; import com.azure.storage.file.datalake.models.PathHttpHeaders; import com.azure.storage.file.datalake.models.PublicAccessType; +import com.azure.storage.file.datalake.models.UserDelegationKey; +import com.azure.storage.file.datalake.sas.DataLakeServiceSasSignatureValues; +import com.azure.storage.file.datalake.sas.FileSystemSasPermission; import reactor.core.publisher.Mono; import java.time.Duration; @@ -30,6 +33,7 @@ public class FileSystemAsyncClientJavaDocCodeSamples { private String leaseId = "leaseId"; private String proposedId = "proposedId"; private int leaseDuration = (int) Duration.ofSeconds(30).getSeconds(); + private UserDelegationKey userDelegationKey = JavaDocCodeSnippetsHelpers.getUserDelegationKey(); /** * Code snippet for {@link DataLakeFileSystemAsyncClient#getFileAsyncClient(String)} @@ -335,4 +339,30 @@ public void setAccessPolicy2() { // END: com.azure.storage.file.datalake.DataLakeFileSystemAsyncClient.setAccessPolicyWithResponse#PublicAccessType-List-DataLakeRequestConditions } + /** + * Code snippet for {@link DataLakeFileSystemAsyncClient#generateUserDelegationSas(DataLakeServiceSasSignatureValues, UserDelegationKey)} + * and {@link DataLakeFileSystemAsyncClient#generateSas(DataLakeServiceSasSignatureValues)} + */ + public void generateSas() { + // BEGIN: com.azure.storage.file.datalake.DataLakeFileSystemAsyncClient.generateSas#DataLakeServiceSasSignatureValues + OffsetDateTime expiryTime = OffsetDateTime.now().plusDays(1); + FileSystemSasPermission permission = new FileSystemSasPermission().setReadPermission(true); + + DataLakeServiceSasSignatureValues values = new DataLakeServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + client.generateSas(values); // Client must be authenticated via StorageSharedKeyCredential + // END: com.azure.storage.file.datalake.DataLakeFileSystemAsyncClient.generateSas#DataLakeServiceSasSignatureValues + + // BEGIN: com.azure.storage.file.datalake.DataLakeFileSystemAsyncClient.generateUserDelegationSas#DataLakeServiceSasSignatureValues-UserDelegationKey + OffsetDateTime myExpiryTime = OffsetDateTime.now().plusDays(1); + FileSystemSasPermission myPermission = new FileSystemSasPermission().setReadPermission(true); + + DataLakeServiceSasSignatureValues myValues = new DataLakeServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + client.generateUserDelegationSas(values, userDelegationKey); + // END: com.azure.storage.file.datalake.DataLakeFileSystemAsyncClient.generateUserDelegationSas#DataLakeServiceSasSignatureValues-UserDelegationKey + } + } diff --git a/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/FileSystemClientJavaDocCodeSamples.java b/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/FileSystemClientJavaDocCodeSamples.java index ceb88c4ed074..665d263fe5de 100644 --- a/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/FileSystemClientJavaDocCodeSamples.java +++ b/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/FileSystemClientJavaDocCodeSamples.java @@ -15,6 +15,9 @@ import com.azure.storage.file.datalake.models.ListPathsOptions; import com.azure.storage.file.datalake.models.PathHttpHeaders; import com.azure.storage.file.datalake.models.PublicAccessType; +import com.azure.storage.file.datalake.models.UserDelegationKey; +import com.azure.storage.file.datalake.sas.DataLakeServiceSasSignatureValues; +import com.azure.storage.file.datalake.sas.FileSystemSasPermission; import java.time.Duration; import java.time.OffsetDateTime; @@ -37,6 +40,7 @@ public class FileSystemClientJavaDocCodeSamples { private Duration timeout = Duration.ofSeconds(30); private String key1 = "key1"; private String value1 = "value1"; + private UserDelegationKey userDelegationKey = JavaDocCodeSnippetsHelpers.getUserDelegationKey(); /** * Code snippet for {@link DataLakeFileSystemClient#getFileClient(String)} @@ -373,4 +377,30 @@ public void setAccessPolicy2() { // END: com.azure.storage.file.datalake.DataLakeFileSystemClient.setAccessPolicyWithResponse#PublicAccessType-List-DataLakeRequestConditions-Duration-Context } + /** + * Code snippet for {@link DataLakeFileSystemClient#generateUserDelegationSas(DataLakeServiceSasSignatureValues, UserDelegationKey)} + * and {@link DataLakeFileSystemClient#generateSas(DataLakeServiceSasSignatureValues)} + */ + public void generateSas() { + // BEGIN: com.azure.storage.file.datalake.DataLakeFileSystemClient.generateSas#DataLakeServiceSasSignatureValues + OffsetDateTime expiryTime = OffsetDateTime.now().plusDays(1); + FileSystemSasPermission permission = new FileSystemSasPermission().setReadPermission(true); + + DataLakeServiceSasSignatureValues values = new DataLakeServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + client.generateSas(values); // Client must be authenticated via StorageSharedKeyCredential + // END: com.azure.storage.file.datalake.DataLakeFileSystemClient.generateSas#DataLakeServiceSasSignatureValues + + // BEGIN: com.azure.storage.file.datalake.DataLakeFileSystemClient.generateUserDelegationSas#DataLakeServiceSasSignatureValues-UserDelegationKey + OffsetDateTime myExpiryTime = OffsetDateTime.now().plusDays(1); + FileSystemSasPermission myPermission = new FileSystemSasPermission().setReadPermission(true); + + DataLakeServiceSasSignatureValues myValues = new DataLakeServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + client.generateUserDelegationSas(values, userDelegationKey); + // END: com.azure.storage.file.datalake.DataLakeFileSystemClient.generateUserDelegationSas#DataLakeServiceSasSignatureValues-UserDelegationKey + } + } diff --git a/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/JavaDocCodeSnippetsHelpers.java b/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/JavaDocCodeSnippetsHelpers.java index 4f9ab36bf0d5..1422c7212a71 100644 --- a/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/JavaDocCodeSnippetsHelpers.java +++ b/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/JavaDocCodeSnippetsHelpers.java @@ -3,6 +3,8 @@ package com.azure.storage.file.datalake; +import com.azure.storage.file.datalake.models.UserDelegationKey; + import java.net.MalformedURLException; import java.net.URL; @@ -47,4 +49,8 @@ static URL generateURL(String urlString) { throw new RuntimeException(ex); } } + + static UserDelegationKey getUserDelegationKey() { + return getDataLakeServiceClient().getUserDelegationKey(null, null); + } } diff --git a/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/PathAsyncClientJavaDocCodeSamples.java b/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/PathAsyncClientJavaDocCodeSamples.java index fa999dc74a08..edc66aeefcdc 100644 --- a/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/PathAsyncClientJavaDocCodeSamples.java +++ b/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/PathAsyncClientJavaDocCodeSamples.java @@ -8,7 +8,11 @@ import com.azure.storage.file.datalake.models.PathHttpHeaders; import com.azure.storage.file.datalake.models.PathPermissions; import com.azure.storage.file.datalake.models.RolePermissions; +import com.azure.storage.file.datalake.models.UserDelegationKey; +import com.azure.storage.file.datalake.sas.DataLakeServiceSasSignatureValues; +import com.azure.storage.file.datalake.sas.PathSasPermission; +import java.time.OffsetDateTime; import java.util.ArrayList; import java.util.Collections; import java.util.List; @@ -22,6 +26,7 @@ public class PathAsyncClientJavaDocCodeSamples { private String fileName = "fileName"; private DataLakeFileAsyncClient client = JavaDocCodeSnippetsHelpers.getFileAsyncClient(fileName); private String leaseId = "leaseId"; + private UserDelegationKey userDelegationKey = JavaDocCodeSnippetsHelpers.getUserDelegationKey(); /** * Code snippets for {@link DataLakePathAsyncClient#create()} and @@ -218,4 +223,30 @@ public void getAccessControlWithResponseCodeSnippets() { // END: com.azure.storage.file.datalake.DataLakePathAsyncClient.getAccessControlWithResponse#boolean-DataLakeRequestConditions } + /** + * Code snippet for {@link DataLakePathAsyncClient#generateUserDelegationSas(DataLakeServiceSasSignatureValues, UserDelegationKey)} + * and {@link DataLakePathAsyncClient#generateSas(DataLakeServiceSasSignatureValues)} + */ + public void generateSas() { + // BEGIN: com.azure.storage.file.datalake.DataLakePathAsyncClient.generateSas#DataLakeServiceSasSignatureValues + OffsetDateTime expiryTime = OffsetDateTime.now().plusDays(1); + PathSasPermission permission = new PathSasPermission().setReadPermission(true); + + DataLakeServiceSasSignatureValues values = new DataLakeServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + client.generateSas(values); // Client must be authenticated via StorageSharedKeyCredential + // END: com.azure.storage.file.datalake.DataLakePathAsyncClient.generateSas#DataLakeServiceSasSignatureValues + + // BEGIN: com.azure.storage.file.datalake.DataLakePathAsyncClient.generateUserDelegationSas#DataLakeServiceSasSignatureValues-UserDelegationKey + OffsetDateTime myExpiryTime = OffsetDateTime.now().plusDays(1); + PathSasPermission myPermission = new PathSasPermission().setReadPermission(true); + + DataLakeServiceSasSignatureValues myValues = new DataLakeServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + client.generateUserDelegationSas(values, userDelegationKey); + // END: com.azure.storage.file.datalake.DataLakePathAsyncClient.generateUserDelegationSas#DataLakeServiceSasSignatureValues-UserDelegationKey + } + } diff --git a/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/PathClientJavaDocCodeSamples.java b/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/PathClientJavaDocCodeSamples.java index 56864ed64e55..e81213c850fa 100644 --- a/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/PathClientJavaDocCodeSamples.java +++ b/sdk/storage/azure-storage-file-datalake/src/samples/java/com/azure/storage/file/datalake/PathClientJavaDocCodeSamples.java @@ -13,8 +13,12 @@ import com.azure.storage.file.datalake.models.PathPermissions; import com.azure.storage.file.datalake.models.PathProperties; import com.azure.storage.file.datalake.models.RolePermissions; +import com.azure.storage.file.datalake.models.UserDelegationKey; +import com.azure.storage.file.datalake.sas.DataLakeServiceSasSignatureValues; +import com.azure.storage.file.datalake.sas.PathSasPermission; import java.time.Duration; +import java.time.OffsetDateTime; import java.util.ArrayList; import java.util.Collections; import java.util.List; @@ -34,6 +38,7 @@ public class PathClientJavaDocCodeSamples { private String key2 = "key2"; private String value1 = "val1"; private String value2 = "val2"; + private UserDelegationKey userDelegationKey = JavaDocCodeSnippetsHelpers.getUserDelegationKey(); /** * Code snippets for {@link DataLakePathClient#create()} and @@ -239,4 +244,30 @@ public void getAccessControlWithResponseCodeSnippets() { // END: com.azure.storage.file.datalake.DataLakePathClient.getAccessControlWithResponse#boolean-DataLakeRequestConditions-Duration-Context } + /** + * Code snippet for {@link DataLakePathClient#generateUserDelegationSas(DataLakeServiceSasSignatureValues, UserDelegationKey)} + * and {@link DataLakePathClient#generateSas(DataLakeServiceSasSignatureValues)} + */ + public void generateSas() { + // BEGIN: com.azure.storage.file.datalake.DataLakePathClient.generateSas#DataLakeServiceSasSignatureValues + OffsetDateTime expiryTime = OffsetDateTime.now().plusDays(1); + PathSasPermission permission = new PathSasPermission().setReadPermission(true); + + DataLakeServiceSasSignatureValues values = new DataLakeServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + client.generateSas(values); // Client must be authenticated via StorageSharedKeyCredential + // END: com.azure.storage.file.datalake.DataLakePathClient.generateSas#DataLakeServiceSasSignatureValues + + // BEGIN: com.azure.storage.file.datalake.DataLakePathClient.generateUserDelegationSas#DataLakeServiceSasSignatureValues-UserDelegationKey + OffsetDateTime myExpiryTime = OffsetDateTime.now().plusDays(1); + PathSasPermission myPermission = new PathSasPermission().setReadPermission(true); + + DataLakeServiceSasSignatureValues myValues = new DataLakeServiceSasSignatureValues(expiryTime, permission) + .setStartTime(OffsetDateTime.now()); + + client.generateUserDelegationSas(values, userDelegationKey); + // END: com.azure.storage.file.datalake.DataLakePathClient.generateUserDelegationSas#DataLakeServiceSasSignatureValues-UserDelegationKey + } + } diff --git a/sdk/storage/azure-storage-file-datalake/src/test/java/com/azure/storage/file/datalake/APISpec.groovy b/sdk/storage/azure-storage-file-datalake/src/test/java/com/azure/storage/file/datalake/APISpec.groovy index 9a20a5e6e21b..3c2dca231f6a 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/java/com/azure/storage/file/datalake/APISpec.groovy +++ b/sdk/storage/azure-storage-file-datalake/src/test/java/com/azure/storage/file/datalake/APISpec.groovy @@ -630,4 +630,11 @@ class APISpec extends Specification { return false } + def sleepIfLive(long milliseconds) { + if (testMode == TestMode.PLAYBACK) { + return + } + sleep(milliseconds) + } + } diff --git a/sdk/storage/azure-storage-file-datalake/src/test/java/com/azure/storage/file/datalake/SASTest.groovy b/sdk/storage/azure-storage-file-datalake/src/test/java/com/azure/storage/file/datalake/SASTest.groovy index b081e0a67dd0..d2750da4ed8f 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/java/com/azure/storage/file/datalake/SASTest.groovy +++ b/sdk/storage/azure-storage-file-datalake/src/test/java/com/azure/storage/file/datalake/SASTest.groovy @@ -11,6 +11,7 @@ import com.azure.storage.file.datalake.implementation.models.StorageErrorExcepti import com.azure.storage.file.datalake.models.DataLakeAccessPolicy import com.azure.storage.file.datalake.models.DataLakeSignedIdentifier import com.azure.storage.file.datalake.models.FileRange +import com.azure.storage.file.datalake.models.PathProperties import com.azure.storage.file.datalake.models.UserDelegationKey import com.azure.storage.file.datalake.sas.DataLakeServiceSasSignatureValues import com.azure.storage.file.datalake.sas.FileSystemSasPermission @@ -23,6 +24,17 @@ import java.time.ZoneOffset class SASTest extends APISpec { + DataLakeFileClient sasClient + String pathName + + def setup() { + pathName = generatePathName() + sasClient = getFileClient(primaryCredential, fsc.getFileSystemUrl(), pathName) + sasClient.create() + sasClient.append(defaultInputStream.get(), 0, defaultDataSize) + sasClient.flush(defaultDataSize) + } + @Unroll def "File range"() { expect: @@ -54,48 +66,51 @@ class SASTest extends APISpec { 0 | -1 } + DataLakeServiceSasSignatureValues generateValues(PathSasPermission permission) { + return new DataLakeServiceSasSignatureValues(getUTCNow().plusDays(1), permission) + .setStartTime(getUTCNow().minusDays(1)) + .setProtocol(SasProtocol.HTTPS_HTTP) + .setSasIpRange(new SasIpRange() + .setIpMin("0.0.0.0") + .setIpMax("255.255.255.255")) + .setCacheControl("cache") + .setContentDisposition("disposition") + .setContentEncoding("encoding") + .setContentLanguage("language") + .setContentType("type") + } + + def validateSasProperties(PathProperties properties) { + boolean ret = true + ret &= properties.getCacheControl() == "cache" + ret &= properties.getContentDisposition() == "disposition" + ret &= properties.getContentEncoding() == "encoding" + ret &= properties.getContentLanguage() == "language" + return ret + } + + UserDelegationKey getUserDelegationInfo() { + def key = getOAuthServiceClient().getUserDelegationKey(getUTCNow().minusDays(1), getUTCNow().plusDays(1)) + def keyOid = getConfigValue(key.getSignedObjectId()) + key.setSignedObjectId(keyOid) + def keyTid = getConfigValue(key.getSignedTenantId()) + key.setSignedTenantId(keyTid) + return key + } + def "serviceSASSignatureValues network test file"() { setup: - def pathName = generatePathName() - def fc = getFileClient(primaryCredential, fsc.getFileSystemUrl(), pathName) - fc.create() - fc.append(defaultInputStream.get(), 0, defaultDataSize) - fc.flush(defaultDataSize) - def permissions = new PathSasPermission() .setReadPermission(true) .setWritePermission(true) .setCreatePermission(true) .setDeletePermission(true) .setAddPermission(true) - def startTime = getUTCNow().minusDays(1) - def expiryTime = getUTCNow().plusDays(1) - def ipRange = new SasIpRange() - .setIpMin("0.0.0.0") - .setIpMax("255.255.255.255") - def sasProtocol = SasProtocol.HTTPS_HTTP - def cacheControl = "cache" - def contentDisposition = "disposition" - def contentEncoding = "encoding" - def contentLanguage = "language" - def contentType = "type" + + def sasValues = generateValues(permissions) when: - def sas = new DataLakeServiceSasSignatureValues() - .setPermissions(permissions) - .setExpiryTime(expiryTime) - .setStartTime(startTime) - .setProtocol(sasProtocol) - .setSasIpRange(ipRange) - .setCacheControl(cacheControl) - .setContentDisposition(contentDisposition) - .setContentEncoding(contentEncoding) - .setContentLanguage(contentLanguage) - .setContentType(contentType) - .setPathName(fc.getFilePath()) - .setFileSystemName(fc.getFileSystemName()) - .generateSasQueryParameters(primaryCredential) - .encode() + def sas = sasClient.generateSas(sasValues) def client = getFileClient(sas, fsc.getFileSystemUrl(), pathName) @@ -104,15 +119,11 @@ class SASTest extends APISpec { def properties = client.getProperties() then: - os.toString() == defaultText - properties.getCacheControl() == "cache" - properties.getContentDisposition() == "disposition" - properties.getContentEncoding() == "encoding" - properties.getContentLanguage() == "language" + os.toString() == new String(defaultData.array()) + validateSasProperties(properties) notThrown(BlobStorageException) } - // Set Access Policy on File System not implemented yet def "serviceSASSignatureValues network test file system"() { setup: def identifier = new DataLakeSignedIdentifier() @@ -134,22 +145,18 @@ class SASTest extends APISpec { def expiryTime = getUTCNow().plusDays(1) when: - def sasWithId = new DataLakeServiceSasSignatureValues() - .setIdentifier(identifier.getId()) - .setFileSystemName(fsc.getFileSystemName()) - .generateSasQueryParameters(primaryCredential) - .encode() + def sasValues = new DataLakeServiceSasSignatureValues(identifier.getId()) + def sasWithId = fsc.generateSas(sasValues) def client1 = getFileSystemClient(sasWithId, fsc.getFileSystemUrl()) + // Wait 30 seconds as it may take time for the access policy to take effect. + sleepIfLive(30000) + client1.listPaths().iterator().hasNext() - def sasWithPermissions = new DataLakeServiceSasSignatureValues() - .setPermissions(permissions) - .setExpiryTime(expiryTime) - .setFileSystemName(fsc.getFileSystemName()) - .generateSasQueryParameters(primaryCredential) - .encode() + sasValues = new DataLakeServiceSasSignatureValues(expiryTime, permissions) + def sasWithPermissions = fsc.generateSas(sasValues) def client2 = getFileSystemClient(sasWithPermissions, fsc.getFileSystemUrl()) client2.listPaths().iterator().hasNext() @@ -160,12 +167,6 @@ class SASTest extends APISpec { def "serviceSASSignatureValues network test file user delegation"() { setup: - def pathName = generatePathName() - def fc = fsc.getFileClient(pathName) - fc.create() - fc.append(defaultInputStream.get(), 0, defaultDataSize) - fc.flush(defaultDataSize) - def permissions = new PathSasPermission() .setReadPermission(true) .setWritePermission(true) @@ -173,49 +174,11 @@ class SASTest extends APISpec { .setDeletePermission(true) .setAddPermission(true) - def startTime = getUTCNow().minusDays(1) - def expiryTime = getUTCNow().plusDays(1) - - def ipRange = new SasIpRange() - .setIpMin("0.0.0.0") - .setIpMax("255.255.255.255") - - def sasProtocol = SasProtocol.HTTPS_HTTP - def cacheControl = "cache" - def contentDisposition = "disposition" - def contentEncoding = "encoding" - def contentLanguage = "language" - def contentType = "type" - - def key = getOAuthServiceClient().getUserDelegationKey(null, expiryTime) - - def keyOid = getConfigValue(key.getSignedObjectId()) - key.setSignedObjectId(keyOid) + def sasValues = generateValues(permissions) - def keyTid = getConfigValue(key.getSignedTenantId()) - key.setSignedTenantId(keyTid) when: - def sas = new DataLakeServiceSasSignatureValues() - .setPermissions(permissions) - .setExpiryTime(expiryTime) - .setStartTime(startTime) - .setProtocol(sasProtocol) - .setSasIpRange(ipRange) - .setCacheControl(cacheControl) - .setContentDisposition(contentDisposition) - .setContentEncoding(contentEncoding) - .setContentLanguage(contentLanguage) - .setContentType(contentType) - .setFileSystemName(fsc.getFileSystemName()) - .setPathName(fc.getFilePath()) - .setVersion(key.getSignedVersion()) - .generateSasQueryParameters(key, primaryCredential.getAccountName()) - .encode() + def sas = sasClient.generateUserDelegationSas(sasValues, getUserDelegationInfo()) - then: - sas != null - - when: def client = getFileClient(sas, fsc.getFileSystemUrl(), pathName) def os = new ByteArrayOutputStream() @@ -223,11 +186,8 @@ class SASTest extends APISpec { def properties = client.getProperties() then: - os.toString() == defaultText - properties.getCacheControl() == "cache" - properties.getContentDisposition() == "disposition" - properties.getContentEncoding() == "encoding" - properties.getContentLanguage() == "language" + os.toString() == new String(defaultData.array()) + validateSasProperties(properties) notThrown(BlobStorageException) } @@ -250,13 +210,10 @@ class SASTest extends APISpec { def keyTid = getConfigValue(key.getSignedTenantId()) key.setSignedTenantId(keyTid) + when: - def sasWithPermissions = new DataLakeServiceSasSignatureValues() - .setPermissions(permissions) - .setExpiryTime(expiryTime) - .setFileSystemName(fsc.getFileSystemName()) - .generateSasQueryParameters(key, primaryCredential.getAccountName()) - .encode() + def sasValues = new DataLakeServiceSasSignatureValues(expiryTime, permissions) + def sasWithPermissions = fsc.generateUserDelegationSas(sasValues, key) def client = getFileSystemClient(sasWithPermissions, fsc.getFileSystemUrl()) client.listPaths().iterator().hasNext() @@ -284,13 +241,8 @@ class SASTest extends APISpec { def expiryTime = getUTCNow().plusDays(1) when: - def sas = new AccountSasSignatureValues() - .setServices(service.toString()) - .setResourceTypes(resourceType.toString()) - .setPermissions(permissions) - .setExpiryTime(expiryTime) - .generateSasQueryParameters(primaryCredential) - .encode() + def sasValues = new AccountSasSignatureValues(expiryTime, permissions, service, resourceType) + def sas = primaryDataLakeServiceClient.generateAccountSas(sasValues) def client = getFileClient(sas, fsc.getFileSystemUrl(), pathName).getBlockBlobClient() def os = new ByteArrayOutputStream() client.download(os) @@ -316,13 +268,8 @@ class SASTest extends APISpec { def expiryTime = getUTCNow().plusDays(1) when: - def sas = new AccountSasSignatureValues() - .setServices(service.toString()) - .setResourceTypes(resourceType.toString()) - .setPermissions(permissions) - .setExpiryTime(expiryTime) - .generateSasQueryParameters(primaryCredential) - .encode() + def sasValues = new AccountSasSignatureValues(expiryTime, permissions, service, resourceType) + def sas = primaryDataLakeServiceClient.generateAccountSas(sasValues) def client = getFileClient(sas, fsc.getFileSystemUrl(), pathName) client.delete() @@ -344,13 +291,8 @@ class SASTest extends APISpec { def expiryTime = getUTCNow().plusDays(1) when: - def sas = new AccountSasSignatureValues() - .setServices(service.toString()) - .setResourceTypes(resourceType.toString()) - .setPermissions(permissions) - .setExpiryTime(expiryTime) - .generateSasQueryParameters(primaryCredential) - .encode() + def sasValues = new AccountSasSignatureValues(expiryTime, permissions, service, resourceType) + def sas = primaryDataLakeServiceClient.generateAccountSas(sasValues) def sc = getServiceClient(sas, primaryDataLakeServiceClient.getAccountUrl()) sc.createFileSystem(generateFileSystemName()) @@ -372,13 +314,8 @@ class SASTest extends APISpec { def expiryTime = getUTCNow().plusDays(1) when: - def sas = new AccountSasSignatureValues() - .setServices(service.toString()) - .setResourceTypes(resourceType.toString()) - .setPermissions(permissions) - .setExpiryTime(expiryTime) - .generateSasQueryParameters(primaryCredential) - .encode() + def sasValues = new AccountSasSignatureValues(expiryTime, permissions, service, resourceType) + def sas = primaryDataLakeServiceClient.generateAccountSas(sasValues) def sc = getServiceClient(sas, primaryDataLakeServiceClient.getAccountUrl()) sc.createFileSystem(generateFileSystemName()) diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestaccountsasnetworkcreatefilesystemfails.json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestaccountsasnetworkcreatefilesystemfails.json index 58c2710bd90d..e695c60f7033 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestaccountsasnetworkcreatefilesystemfails.json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestaccountsasnetworkcreatefilesystemfails.json @@ -1,32 +1,96 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworkcreatefilesystemfails080155720eb17?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworkcreatefilesystemfails09423009e30b1?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "2bfab773-8855-435f-823f-40ad1a398d8c" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "7591ab30-1a05-4532-95a6-1f3a68ac490b" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA1FBB42A4", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:54 GMT", + "ETag" : "0x8D77826458673A5", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:26 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520fae3-701e-0097-01d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:53 GMT", - "x-ms-client-request-id" : "2bfab773-8855-435f-823f-40ad1a398d8c" + "x-ms-request-id" : "1d9a46ab-e01e-0092-270f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:26 GMT", + "x-ms-client-request-id" : "7591ab30-1a05-4532-95a6-1f3a68ac490b" }, "Exception" : null }, { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworkcreatefilesystemfails154188bd1b9fd?restype=container&sv=2019-02-02&ss=b&srt=sco&se=2019-11-02T16%3A39%3A54Z&sp=r&sig=REDACTED", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworkcreatefilesystemfails09423009e30b1/javapathaccountsasnetworkcreatefilesystemfails154705f81f2?resource=file", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "e52d2689-4332-48c7-9ff4-12b72160ca32" + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "64e31f4b-f0ff-46cf-bc03-75dad0fafde1" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264595043B", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:26 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9b47-101f-004b-120f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:25 GMT", + "x-ms-client-request-id" : "64e31f4b-f0ff-46cf-bc03-75dad0fafde1" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworkcreatefilesystemfails09423009e30b1/javapathaccountsasnetworkcreatefilesystemfails154705f81f2?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ae6a5b05-a81d-4b2c-9f07-cde5d53a75ea", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9b51-101f-004b-1c0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:25 GMT", + "x-ms-client-request-id" : "ae6a5b05-a81d-4b2c-9f07-cde5d53a75ea" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworkcreatefilesystemfails09423009e30b1/javapathaccountsasnetworkcreatefilesystemfails154705f81f2?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b1467355-740f-4a0a-b138-ce92583be3e1" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782645B128E4", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:26 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9b54-101f-004b-1f0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:25 GMT", + "x-ms-client-request-id" : "b1467355-740f-4a0a-b138-ce92583be3e1" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworkcreatefilesystemfails22183881547cb?restype=container&sv=2019-02-02&ss=b&srt=sco&se=2019-12-04T19%3A23%3A26Z&sp=r&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "dffde78c-909f-4801-9bfa-ab8183166603" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -35,10 +99,10 @@ "retry-after" : "0", "Content-Length" : "279", "StatusCode" : "403", - "x-ms-request-id" : "b520fb00-701e-0097-1dd2-902db3000000", - "Body" : "AuthorizationPermissionMismatchThis request is not authorized to perform this operation using this permission.\nRequestId:b520fb00-701e-0097-1dd2-902db3000000\nTime:2019-11-01T16:39:54.4519136Z", - "Date" : "Fri, 01 Nov 2019 16:39:54 GMT", - "x-ms-client-request-id" : "e52d2689-4332-48c7-9ff4-12b72160ca32", + "x-ms-request-id" : "1d9a4704-e01e-0092-790f-aad9cc000000", + "Body" : "AuthorizationPermissionMismatchThis request is not authorized to perform this operation using this permission.\nRequestId:1d9a4704-e01e-0092-790f-aad9cc000000\nTime:2019-12-03T19:23:27.0066554Z", + "Date" : "Tue, 03 Dec 2019 19:23:26 GMT", + "x-ms-client-request-id" : "dffde78c-909f-4801-9bfa-ab8183166603", "Content-Type" : "application/xml" }, "Exception" : null @@ -47,8 +111,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsaccountsasnetworkcreatefilesystemfails&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "461c2f0c-2ac1-4bd0-adb0-ecde38722e75" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e7162f5f-546f-4951-b320-5243be27681c" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -56,20 +120,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520fb12-701e-0097-2ed2-902db3000000", - "Body" : "jtfsaccountsasnetworkcreatefilesystemfailsjtfsaccountsasnetworkcreatefilesystemfails080155720eb17Fri, 01 Nov 2019 16:39:54 GMT\"0x8D75EEA1FBB42A4\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:54 GMT", - "x-ms-client-request-id" : "461c2f0c-2ac1-4bd0-adb0-ecde38722e75", + "x-ms-request-id" : "1d9a4719-e01e-0092-0a0f-aad9cc000000", + "Body" : "jtfsaccountsasnetworkcreatefilesystemfailsjtfsaccountsasnetworkcreatefilesystemfails09423009e30b1Tue, 03 Dec 2019 19:23:26 GMT\"0x8D77826458673A5\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:26 GMT", + "x-ms-client-request-id" : "e7162f5f-546f-4951-b320-5243be27681c", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworkcreatefilesystemfails080155720eb17?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworkcreatefilesystemfails09423009e30b1?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "f00059f1-fca7-4f8d-8614-096f00ce897e" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "6fbe3671-f4b7-4942-a298-9b9e366fea44" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -77,11 +141,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520fb2f-701e-0097-44d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:54 GMT", - "x-ms-client-request-id" : "f00059f1-fca7-4f8d-8614-096f00ce897e" + "x-ms-request-id" : "1d9a4720-e01e-0092-110f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:27 GMT", + "x-ms-client-request-id" : "6fbe3671-f4b7-4942-a298-9b9e366fea44" }, "Exception" : null } ], - "variables" : [ "jtfsaccountsasnetworkcreatefilesystemfails080155720eb17", "2019-11-01T16:39:54.413Z", "jtfsaccountsasnetworkcreatefilesystemfails154188bd1b9fd" ] + "variables" : [ "jtfsaccountsasnetworkcreatefilesystemfails09423009e30b1", "javapathaccountsasnetworkcreatefilesystemfails154705f81f2", "2019-12-03T19:23:26.934572600Z", "jtfsaccountsasnetworkcreatefilesystemfails22183881547cb" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestaccountsasnetworkcreatefilesystemsucceeds.json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestaccountsasnetworkcreatefilesystemsucceeds.json index 86ec0c5475d8..167aed43e120 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestaccountsasnetworkcreatefilesystemsucceeds.json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestaccountsasnetworkcreatefilesystemsucceeds.json @@ -1,44 +1,108 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworkcreatefilesystemsucceeds099875f5e7f7?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworkcreatefilesystemsucceeds04922171127f?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "26f18aee-74f7-46e6-b1ad-e266e2c557b6" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "0c5c2cb0-b078-4d56-8540-1e16f6554ac4" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA1FDD289F", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:54 GMT", + "ETag" : "0x8D7782645D4EFCE", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:27 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520fb4d-701e-0097-61d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:54 GMT", - "x-ms-client-request-id" : "26f18aee-74f7-46e6-b1ad-e266e2c557b6" + "x-ms-request-id" : "1d9a472b-e01e-0092-1a0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:27 GMT", + "x-ms-client-request-id" : "0c5c2cb0-b078-4d56-8540-1e16f6554ac4" }, "Exception" : null }, { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworkcreatefilesystemsucceeds1858371cc775?restype=container&sv=2019-02-02&ss=b&srt=sco&se=2019-11-02T16%3A39%3A54Z&sp=rc&sig=REDACTED", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworkcreatefilesystemsucceeds04922171127f/javapathaccountsasnetworkcreatefilesystemsucceeds1197996d8d?resource=file", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "2585ac2b-bc02-4638-8950-32a48e3a9611" + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "df4e3d79-c272-432e-ac44-155979d988c7" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782645FA3990", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:27 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9b6f-101f-004b-3a0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:26 GMT", + "x-ms-client-request-id" : "df4e3d79-c272-432e-ac44-155979d988c7" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworkcreatefilesystemsucceeds04922171127f/javapathaccountsasnetworkcreatefilesystemsucceeds1197996d8d?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "06088601-8c43-4d3f-b9cf-def7d796cf08", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9b7d-101f-004b-480f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:26 GMT", + "x-ms-client-request-id" : "06088601-8c43-4d3f-b9cf-def7d796cf08" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworkcreatefilesystemsucceeds04922171127f/javapathaccountsasnetworkcreatefilesystemsucceeds1197996d8d?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d3993ec1-5116-4e62-a4b9-a364b8333105" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826460B58DF", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:27 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9b7e-101f-004b-490f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:26 GMT", + "x-ms-client-request-id" : "d3993ec1-5116-4e62-a4b9-a364b8333105" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworkcreatefilesystemsucceeds27281327c861?restype=container&sv=2019-02-02&ss=b&srt=sco&se=2019-12-04T19%3A23%3A27Z&sp=rc&sig=REDACTED", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "35bc7a55-5eea-4088-a3cb-1a0a52630a1d" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA1FE6C74A", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:54 GMT", + "ETag" : "0x8D778264613D8CF", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:27 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520fb69-701e-0097-7bd2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:54 GMT", - "x-ms-client-request-id" : "2585ac2b-bc02-4638-8950-32a48e3a9611" + "x-ms-request-id" : "1d9a47a3-e01e-0092-7e0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:27 GMT", + "x-ms-client-request-id" : "35bc7a55-5eea-4088-a3cb-1a0a52630a1d" }, "Exception" : null }, { @@ -46,8 +110,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsaccountsasnetworkcreatefilesystemsucceeds&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "db324899-f750-4d78-85d0-228749be53dc" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "3b408eef-2105-4397-8347-0cc01e5eed07" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -55,20 +119,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520fb84-701e-0097-13d2-902db3000000", - "Body" : "jtfsaccountsasnetworkcreatefilesystemsucceedsjtfsaccountsasnetworkcreatefilesystemsucceeds099875f5e7f7Fri, 01 Nov 2019 16:39:54 GMT\"0x8D75EEA1FDD289F\"unlockedavailable$account-encryption-keyfalsefalsefalsejtfsaccountsasnetworkcreatefilesystemsucceeds1858371cc775Fri, 01 Nov 2019 16:39:54 GMT\"0x8D75EEA1FE6C74A\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:54 GMT", - "x-ms-client-request-id" : "db324899-f750-4d78-85d0-228749be53dc", + "x-ms-request-id" : "1d9a47bf-e01e-0092-140f-aad9cc000000", + "Body" : "jtfsaccountsasnetworkcreatefilesystemsucceedsjtfsaccountsasnetworkcreatefilesystemsucceeds04922171127fTue, 03 Dec 2019 19:23:27 GMT\"0x8D7782645D4EFCE\"unlockedavailable$account-encryption-keyfalsefalsefalsejtfsaccountsasnetworkcreatefilesystemsucceeds27281327c861Tue, 03 Dec 2019 19:23:27 GMT\"0x8D778264613D8CF\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:27 GMT", + "x-ms-client-request-id" : "3b408eef-2105-4397-8347-0cc01e5eed07", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworkcreatefilesystemsucceeds099875f5e7f7?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworkcreatefilesystemsucceeds04922171127f?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "6e14ed5c-8ff7-4051-bfb8-292bec753adf" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "587cc6b7-55b0-4d30-8d48-4d73cfbb3e5f" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -76,18 +140,18 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520fb97-701e-0097-23d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:54 GMT", - "x-ms-client-request-id" : "6e14ed5c-8ff7-4051-bfb8-292bec753adf" + "x-ms-request-id" : "1d9a47d0-e01e-0092-240f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:27 GMT", + "x-ms-client-request-id" : "587cc6b7-55b0-4d30-8d48-4d73cfbb3e5f" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworkcreatefilesystemsucceeds1858371cc775?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworkcreatefilesystemsucceeds27281327c861?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "36eedfa2-3f72-48b1-ac9b-9f5b8a719b60" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "4a90cefa-8a09-4e0e-971e-6124dad61569" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -95,11 +159,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520fbb3-701e-0097-3dd2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:54 GMT", - "x-ms-client-request-id" : "36eedfa2-3f72-48b1-ac9b-9f5b8a719b60" + "x-ms-request-id" : "1d9a47de-e01e-0092-320f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:27 GMT", + "x-ms-client-request-id" : "4a90cefa-8a09-4e0e-971e-6124dad61569" }, "Exception" : null } ], - "variables" : [ "jtfsaccountsasnetworkcreatefilesystemsucceeds099875f5e7f7", "2019-11-01T16:39:54.641Z", "jtfsaccountsasnetworkcreatefilesystemsucceeds1858371cc775" ] + "variables" : [ "jtfsaccountsasnetworkcreatefilesystemsucceeds04922171127f", "javapathaccountsasnetworkcreatefilesystemsucceeds1197996d8d", "2019-12-03T19:23:27.524779200Z", "jtfsaccountsasnetworkcreatefilesystemsucceeds27281327c861" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestaccountsasnetworktestfiledeletefails.json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestaccountsasnetworktestfiledeletefails.json index 6ece95bb7d32..651cc04e6553 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestaccountsasnetworktestfiledeletefails.json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestaccountsasnetworktestfiledeletefails.json @@ -1,53 +1,117 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworktestfiledeletefails001012aa90ce9f?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworktestfiledeletefails05709054b382b9?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "b242ce2e-9549-4681-9cc5-a9c347d34c9a" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "35a11943-48e3-45aa-b688-30296e4c910f" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA1F911DCD", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:54 GMT", + "ETag" : "0x8D778264536497E", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:26 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520fa30-701e-0097-55d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:53 GMT", - "x-ms-client-request-id" : "b242ce2e-9549-4681-9cc5-a9c347d34c9a" + "x-ms-request-id" : "1d9a462d-e01e-0092-3c0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:26 GMT", + "x-ms-client-request-id" : "35a11943-48e3-45aa-b688-30296e4c910f" }, "Exception" : null }, { "Method" : "PUT", - "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworktestfiledeletefails001012aa90ce9f/javapathaccountsasnetworktestfiledeletefails117284d51493?resource=file", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworktestfiledeletefails05709054b382b9/javapathaccountsasnetworktestfiledeletefails10336822cc25?resource=file", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "d57272e4-01bb-48af-94ab-1e7e4a4dbdb3" + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "0173fa97-efa5-4668-81ea-2208d49e42e9" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA1F9B188A", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:54 GMT", + "ETag" : "0x8D778264543B0CF", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:26 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "3074d95b-a01f-003f-3fd2-90f9a6000000", - "Date" : "Fri, 01 Nov 2019 16:39:53 GMT", - "x-ms-client-request-id" : "d57272e4-01bb-48af-94ab-1e7e4a4dbdb3" + "x-ms-request-id" : "053c9b03-101f-004b-4e0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:25 GMT", + "x-ms-client-request-id" : "0173fa97-efa5-4668-81ea-2208d49e42e9" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworktestfiledeletefails05709054b382b9/javapathaccountsasnetworktestfiledeletefails10336822cc25?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "74e23a15-6299-4974-aea9-a61eff0dc1c3", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9b0f-101f-004b-5a0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:25 GMT", + "x-ms-client-request-id" : "74e23a15-6299-4974-aea9-a61eff0dc1c3" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworktestfiledeletefails05709054b382b9/javapathaccountsasnetworktestfiledeletefails10336822cc25?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "4493afe4-686f-4412-bfdb-09391d24d1ba" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826455815A1", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:26 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9b14-101f-004b-5f0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:25 GMT", + "x-ms-client-request-id" : "4493afe4-686f-4412-bfdb-09391d24d1ba" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworktestfiledeletefails05709054b382b9/javapathaccountsasnetworktestfiledeletefails27227311cfef?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "6e174676-54ba-4260-ad48-ba73220e2af4" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264565F9C9", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:26 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9b21-101f-004b-6c0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:25 GMT", + "x-ms-client-request-id" : "6e174676-54ba-4260-ad48-ba73220e2af4" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworktestfiledeletefails001012aa90ce9f/javapathaccountsasnetworktestfiledeletefails117284d51493?sv=2019-02-02&ss=b&srt=sco&se=2019-11-02T16%3A39%3A54Z&sp=r&sig=REDACTED", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworktestfiledeletefails05709054b382b9/javapathaccountsasnetworktestfiledeletefails27227311cfef?sv=2019-02-02&ss=b&srt=sco&se=2019-12-04T19%3A23%3A26Z&sp=r&sig=REDACTED", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "4fc356b9-7e71-4213-8644-140d1aeb2c9a" + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "7d88c36c-809d-4d09-a0e0-b2367159ff26" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -56,10 +120,10 @@ "retry-after" : "0", "Content-Length" : "227", "StatusCode" : "403", - "x-ms-request-id" : "3074d95c-a01f-003f-40d2-90f9a6000000", - "Body" : "{\"error\":{\"code\":\"AuthorizationPermissionMismatch\",\"message\":\"This request is not authorized to perform this operation using this permission.\\nRequestId:3074d95c-a01f-003f-40d2-90f9a6000000\\nTime:2019-11-01T16:39:54.2298369Z\"}}", - "Date" : "Fri, 01 Nov 2019 16:39:53 GMT", - "x-ms-client-request-id" : "4fc356b9-7e71-4213-8644-140d1aeb2c9a", + "x-ms-request-id" : "053c9b2c-101f-004b-770f-aa7fe0000000", + "Body" : "{\"error\":{\"code\":\"AuthorizationPermissionMismatch\",\"message\":\"This request is not authorized to perform this operation using this permission.\\nRequestId:053c9b2c-101f-004b-770f-aa7fe0000000\\nTime:2019-12-03T19:23:26.5161685Z\"}}", + "Date" : "Tue, 03 Dec 2019 19:23:25 GMT", + "x-ms-client-request-id" : "7d88c36c-809d-4d09-a0e0-b2367159ff26", "Content-Type" : "application/json;charset=utf-8" }, "Exception" : null @@ -68,8 +132,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsaccountsasnetworktestfiledeletefails&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "ac22c5d8-109d-43f6-bdb5-107540a18439" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "2b3b20e2-51d8-4e9e-930c-4617960ab829" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -77,20 +141,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520fa99-701e-0097-38d2-902db3000000", - "Body" : "jtfsaccountsasnetworktestfiledeletefailsjtfsaccountsasnetworktestfiledeletefails001012aa90ce9fFri, 01 Nov 2019 16:39:54 GMT\"0x8D75EEA1F911DCD\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:53 GMT", - "x-ms-client-request-id" : "ac22c5d8-109d-43f6-bdb5-107540a18439", + "x-ms-request-id" : "1d9a468c-e01e-0092-0b0f-aad9cc000000", + "Body" : "jtfsaccountsasnetworktestfiledeletefailsjtfsaccountsasnetworktestfiledeletefails05709054b382b9Tue, 03 Dec 2019 19:23:26 GMT\"0x8D778264536497E\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:26 GMT", + "x-ms-client-request-id" : "2b3b20e2-51d8-4e9e-930c-4617960ab829", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworktestfiledeletefails001012aa90ce9f?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworktestfiledeletefails05709054b382b9?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "1096bfa9-360f-41ee-b876-10bf155b1d9b" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8da4d882-31f0-4951-8b09-359dd0857272" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -98,11 +162,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520faba-701e-0097-58d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:53 GMT", - "x-ms-client-request-id" : "1096bfa9-360f-41ee-b876-10bf155b1d9b" + "x-ms-request-id" : "1d9a4694-e01e-0092-120f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:26 GMT", + "x-ms-client-request-id" : "8da4d882-31f0-4951-8b09-359dd0857272" }, "Exception" : null } ], - "variables" : [ "jtfsaccountsasnetworktestfiledeletefails001012aa90ce9f", "javapathaccountsasnetworktestfiledeletefails117284d51493", "2019-11-01T16:39:54.192Z" ] + "variables" : [ "jtfsaccountsasnetworktestfiledeletefails05709054b382b9", "javapathaccountsasnetworktestfiledeletefails10336822cc25", "javapathaccountsasnetworktestfiledeletefails27227311cfef", "2019-12-03T19:23:26.440565200Z" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestaccountsasnetworktestfileread.json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestaccountsasnetworktestfileread.json index ad4d8521327c..09190d71f1cd 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestaccountsasnetworktestfileread.json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestaccountsasnetworktestfileread.json @@ -1,53 +1,53 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworktestfileread063774bc3e30ccc081?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworktestfileread04140474000823cce6?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "0eadffed-104e-4db1-90fb-3a8794d698e5" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "16bc3c49-c222-420d-898e-d11000b1531d" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA1F495981", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:53 GMT", + "ETag" : "0x8D7782644C8CE18", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:25 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520f918-701e-0097-51d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:53 GMT", - "x-ms-client-request-id" : "0eadffed-104e-4db1-90fb-3a8794d698e5" + "x-ms-request-id" : "1d9a4584-e01e-0092-2c0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:25 GMT", + "x-ms-client-request-id" : "16bc3c49-c222-420d-898e-d11000b1531d" }, "Exception" : null }, { "Method" : "PUT", - "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworktestfileread063774bc3e30ccc081/javapathaccountsasnetworktestfileread1217387f91607bfd?resource=file", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworktestfileread04140474000823cce6/javapathaccountsasnetworktestfileread15643094dcda8954?resource=file", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "fd5f646e-235b-4cbb-b46a-97afbcf82b2a" + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "552725f4-1c60-49b1-84e0-491ab7d6012f" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA1F53A556", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:53 GMT", + "ETag" : "0x8D7782644DC0234", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:25 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "3074d958-a01f-003f-3cd2-90f9a6000000", - "Date" : "Fri, 01 Nov 2019 16:39:53 GMT", - "x-ms-client-request-id" : "fd5f646e-235b-4cbb-b46a-97afbcf82b2a" + "x-ms-request-id" : "053c9aea-101f-004b-360f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:24 GMT", + "x-ms-client-request-id" : "552725f4-1c60-49b1-84e0-491ab7d6012f" }, "Exception" : null }, { "Method" : "PATCH", - "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworktestfileread063774bc3e30ccc081/javapathaccountsasnetworktestfileread1217387f91607bfd?position=0&action=append", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworktestfileread04140474000823cce6/javapathaccountsasnetworktestfileread15643094dcda8954?position=0&action=append", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "001afafc-fd7d-4345-a37a-d5688a718f26", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "13093bef-36a3-4a36-bdd5-6891e6f67049", "Content-Type" : "application/octet-stream" }, "Response" : { @@ -57,59 +57,123 @@ "Content-Length" : "0", "StatusCode" : "202", "x-ms-request-server-encrypted" : "true", - "x-ms-request-id" : "3074d959-a01f-003f-3dd2-90f9a6000000", - "Date" : "Fri, 01 Nov 2019 16:39:53 GMT", - "x-ms-client-request-id" : "001afafc-fd7d-4345-a37a-d5688a718f26" + "x-ms-request-id" : "053c9aeb-101f-004b-370f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:24 GMT", + "x-ms-client-request-id" : "13093bef-36a3-4a36-bdd5-6891e6f67049" }, "Exception" : null }, { "Method" : "PATCH", - "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworktestfileread063774bc3e30ccc081/javapathaccountsasnetworktestfileread1217387f91607bfd?position=7&retainUncommittedData=false&close=false&action=flush", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworktestfileread04140474000823cce6/javapathaccountsasnetworktestfileread15643094dcda8954?position=7&retainUncommittedData=false&close=false&action=flush", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "5dc6b6a4-6d25-494a-9018-1d68d229125b" + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "c3aa21a8-543d-4ca0-8adf-f20bae3cf653" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA1F63E895", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:53 GMT", + "ETag" : "0x8D7782644ED10E5", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:25 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "200", "x-ms-request-server-encrypted" : "true", - "x-ms-request-id" : "3074d95a-a01f-003f-3ed2-90f9a6000000", - "Date" : "Fri, 01 Nov 2019 16:39:53 GMT", - "x-ms-client-request-id" : "5dc6b6a4-6d25-494a-9018-1d68d229125b" + "x-ms-request-id" : "053c9aec-101f-004b-380f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:24 GMT", + "x-ms-client-request-id" : "c3aa21a8-543d-4ca0-8adf-f20bae3cf653" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworktestfileread04140474000823cce6/javapathaccountsasnetworktestfileread2692164a07695d0e?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b5fe3e2f-adf2-48b4-9548-6db7e29d53c4" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782644F855CE", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:25 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9aed-101f-004b-390f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:24 GMT", + "x-ms-client-request-id" : "b5fe3e2f-adf2-48b4-9548-6db7e29d53c4" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworktestfileread04140474000823cce6/javapathaccountsasnetworktestfileread2692164a07695d0e?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f8814bd1-35fc-41d2-ad25-d211bffb5b5e", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9aef-101f-004b-3a0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:24 GMT", + "x-ms-client-request-id" : "f8814bd1-35fc-41d2-ad25-d211bffb5b5e" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworktestfileread04140474000823cce6/javapathaccountsasnetworktestfileread2692164a07695d0e?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8baefd0d-b36d-4478-8ced-3c14bbd0516d" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826450862D5", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:25 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9af0-101f-004b-3b0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:24 GMT", + "x-ms-client-request-id" : "8baefd0d-b36d-4478-8ced-3c14bbd0516d" }, "Exception" : null }, { "Method" : "GET", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworktestfileread063774bc3e30ccc081/javapathaccountsasnetworktestfileread1217387f91607bfd?sv=2019-02-02&ss=b&srt=sco&se=2019-11-02T16%3A39%3A53Z&sp=r&sig=REDACTED", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworktestfileread04140474000823cce6/javapathaccountsasnetworktestfileread2692164a07695d0e?sv=2019-02-02&ss=b&srt=sco&se=2019-12-04T19%3A23%3A25Z&sp=r&sig=REDACTED", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "a4cbf3ae-f15d-4c6c-89c1-0b299281eb3f" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ee7b197f-b1c9-4de7-8da1-4212d26aedf4" }, "Response" : { "x-ms-version" : "2019-02-02", "x-ms-lease-status" : "unlocked", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "x-ms-lease-state" : "available", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:53 GMT", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:25 GMT", "retry-after" : "0", "StatusCode" : "200", - "Date" : "Fri, 01 Nov 2019 16:39:53 GMT", + "Date" : "Tue, 03 Dec 2019 19:23:25 GMT", "x-ms-blob-type" : "BlockBlob", "Accept-Ranges" : "bytes", "x-ms-server-encrypted" : "true", - "ETag" : "0x8D75EEA1F63E895", - "x-ms-creation-time" : "Fri, 01 Nov 2019 16:39:53 GMT", + "ETag" : "0x8D77826450862D5", + "x-ms-creation-time" : "Tue, 03 Dec 2019 19:23:25 GMT", "Content-Length" : "7", - "x-ms-request-id" : "b520f9cf-701e-0097-7ad2-902db3000000", + "x-ms-request-id" : "1d9a45fd-e01e-0092-110f-aad9cc000000", "Body" : "[100, 101, 102, 97, 117, 108, 116]", - "x-ms-client-request-id" : "a4cbf3ae-f15d-4c6c-89c1-0b299281eb3f", + "x-ms-client-request-id" : "ee7b197f-b1c9-4de7-8da1-4212d26aedf4", "Content-Type" : "application/octet-stream" }, "Exception" : null @@ -118,8 +182,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsaccountsasnetworktestfileread&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "3935d246-5da8-4626-bd1f-e3afaf60513c" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "11403d6d-79d7-4f56-8d8c-5b7a219b301f" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -127,20 +191,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520f9f0-701e-0097-19d2-902db3000000", - "Body" : "jtfsaccountsasnetworktestfilereadjtfsaccountsasnetworktestfileread063774bc3e30ccc081Fri, 01 Nov 2019 16:39:53 GMT\"0x8D75EEA1F495981\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:53 GMT", - "x-ms-client-request-id" : "3935d246-5da8-4626-bd1f-e3afaf60513c", + "x-ms-request-id" : "1d9a460b-e01e-0092-1d0f-aad9cc000000", + "Body" : "jtfsaccountsasnetworktestfilereadjtfsaccountsasnetworktestfileread04140474000823cce6Tue, 03 Dec 2019 19:23:25 GMT\"0x8D7782644C8CE18\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:25 GMT", + "x-ms-client-request-id" : "11403d6d-79d7-4f56-8d8c-5b7a219b301f", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworktestfileread063774bc3e30ccc081?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworktestfileread04140474000823cce6?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "2d584296-7f4f-43bc-98af-713dcdf9ca96" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "cf4fa3b6-9561-44cc-a3f3-9fe30876871a" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -148,11 +212,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520fa01-701e-0097-29d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:53 GMT", - "x-ms-client-request-id" : "2d584296-7f4f-43bc-98af-713dcdf9ca96" + "x-ms-request-id" : "1d9a461d-e01e-0092-2c0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:26 GMT", + "x-ms-client-request-id" : "cf4fa3b6-9561-44cc-a3f3-9fe30876871a" }, "Exception" : null } ], - "variables" : [ "jtfsaccountsasnetworktestfileread063774bc3e30ccc081", "javapathaccountsasnetworktestfileread1217387f91607bfd", "2019-11-01T16:39:53.844Z" ] + "variables" : [ "jtfsaccountsasnetworktestfileread04140474000823cce6", "javapathaccountsasnetworktestfileread15643094dcda8954", "javapathaccountsasnetworktestfileread2692164a07695d0e", "2019-12-03T19:23:25.852327300Z" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilerange[0].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilerange[0].json index 8105c148393c..1f25cc3eeecb 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilerange[0].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilerange[0].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilerange0sastestfilerangebdd94165687b4b702c90?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilerange0sastestfilerangedb893618b7d9706e5e38?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "fc4556dd-d619-4a76-a267-4e4d1b15be39" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ace0f844-c91d-4d6b-b384-4509a1986dbc" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA1BBAACC3", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:47 GMT", + "ETag" : "0x8D778264134F16A", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:19 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520ecd5-701e-0097-23d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:47 GMT", - "x-ms-client-request-id" : "fc4556dd-d619-4a76-a267-4e4d1b15be39" + "x-ms-request-id" : "1d9a3f16-e01e-0092-2b0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:19 GMT", + "x-ms-client-request-id" : "ace0f844-c91d-4d6b-b384-4509a1986dbc" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilerange0sastestfilerangedb893618b7d9706e5e38/javapathfilerange1sastestfilerangedb809236f255142ba2?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "dd625247-7bc8-46df-b02f-8e0d37c76866" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826418020E5", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:19 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9ac9-101f-004b-160f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:18 GMT", + "x-ms-client-request-id" : "dd625247-7bc8-46df-b02f-8e0d37c76866" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilerange0sastestfilerangedb893618b7d9706e5e38/javapathfilerange1sastestfilerangedb809236f255142ba2?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "00765b6c-d254-4407-a3c0-2479cabebd81", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9aca-101f-004b-170f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:19 GMT", + "x-ms-client-request-id" : "00765b6c-d254-4407-a3c0-2479cabebd81" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilerange0sastestfilerangedb893618b7d9706e5e38/javapathfilerange1sastestfilerangedb809236f255142ba2?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "6f14ca68-090f-443a-ac72-716cfd357520" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264196E508", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:20 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9acb-101f-004b-180f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:19 GMT", + "x-ms-client-request-id" : "6f14ca68-090f-443a-ac72-716cfd357520" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsfilerange&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "8b0af2d6-c419-46a5-9058-f0a9718d7fa2" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "119891da-08d3-46f7-b2a1-a42c89672836" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520eded-701e-0097-1ed2-902db3000000", - "Body" : "jtfsfilerangejtfsfilerange0sastestfilerangebdd94165687b4b702c90Fri, 01 Nov 2019 16:39:47 GMT\"0x8D75EEA1BBAACC3\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:47 GMT", - "x-ms-client-request-id" : "8b0af2d6-c419-46a5-9058-f0a9718d7fa2", + "x-ms-request-id" : "1d9a3fd2-e01e-0092-450f-aad9cc000000", + "Body" : "jtfsfilerangejtfsfilerange0sastestfilerangedb893618b7d9706e5e38Tue, 03 Dec 2019 19:23:19 GMT\"0x8D778264134F16A\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:20 GMT", + "x-ms-client-request-id" : "119891da-08d3-46f7-b2a1-a42c89672836", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilerange0sastestfilerangebdd94165687b4b702c90?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilerange0sastestfilerangedb893618b7d9706e5e38?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "7af308ee-2a52-40bc-89f4-dd2fe17074eb" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "2972a376-2e68-4933-a8b0-d9780e9d19e1" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520ee48-701e-0097-76d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:47 GMT", - "x-ms-client-request-id" : "7af308ee-2a52-40bc-89f4-dd2fe17074eb" + "x-ms-request-id" : "1d9a3fed-e01e-0092-5d0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:20 GMT", + "x-ms-client-request-id" : "2972a376-2e68-4933-a8b0-d9780e9d19e1" }, "Exception" : null } ], - "variables" : [ "jtfsfilerange0sastestfilerangebdd94165687b4b702c90" ] + "variables" : [ "jtfsfilerange0sastestfilerangedb893618b7d9706e5e38", "javapathfilerange1sastestfilerangedb809236f255142ba2" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilerange[1].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilerange[1].json index f91856668201..2c5542e30331 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilerange[1].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilerange[1].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilerange0sastestfilerange12408533a832bb853343?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilerange0sastestfilerange0e11306291a6a76e7b90?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "2312b905-4a65-41a8-a311-d4fe84333130" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "1b842950-55d8-4b7f-9c10-22187cffa093" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA1C1D02B9", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:48 GMT", + "ETag" : "0x8D7782641C05A66", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:20 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520ee6a-701e-0097-17d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:48 GMT", - "x-ms-client-request-id" : "2312b905-4a65-41a8-a311-d4fe84333130" + "x-ms-request-id" : "1d9a400b-e01e-0092-720f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:20 GMT", + "x-ms-client-request-id" : "1b842950-55d8-4b7f-9c10-22187cffa093" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilerange0sastestfilerange0e11306291a6a76e7b90/javapathfilerange1sastestfilerange0e182333bd487ee611?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "64addad3-5f60-4b77-bb73-6d3ac40bd32b" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782641D14826", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:20 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9acc-101f-004b-190f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:19 GMT", + "x-ms-client-request-id" : "64addad3-5f60-4b77-bb73-6d3ac40bd32b" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilerange0sastestfilerange0e11306291a6a76e7b90/javapathfilerange1sastestfilerange0e182333bd487ee611?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "dd9ee95e-80ca-47a5-8850-7f75b8931614", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9acd-101f-004b-1a0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:19 GMT", + "x-ms-client-request-id" : "dd9ee95e-80ca-47a5-8850-7f75b8931614" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilerange0sastestfilerange0e11306291a6a76e7b90/javapathfilerange1sastestfilerange0e182333bd487ee611?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e1f32ef4-e4d3-41a2-b3be-e717a3fd8ba3" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782641E5D4DD", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:20 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9ace-101f-004b-1b0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:19 GMT", + "x-ms-client-request-id" : "e1f32ef4-e4d3-41a2-b3be-e717a3fd8ba3" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsfilerange&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "2144112e-f1cb-4f17-af7f-a498c064764d" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "681dfcbf-7c80-45c1-964c-a70e5c4367b7" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520ef10-701e-0097-2cd2-902db3000000", - "Body" : "jtfsfilerangejtfsfilerange0sastestfilerange12408533a832bb853343Fri, 01 Nov 2019 16:39:48 GMT\"0x8D75EEA1C1D02B9\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:48 GMT", - "x-ms-client-request-id" : "2144112e-f1cb-4f17-af7f-a498c064764d", + "x-ms-request-id" : "1d9a405e-e01e-0092-3a0f-aad9cc000000", + "Body" : "jtfsfilerangejtfsfilerange0sastestfilerange0e11306291a6a76e7b90Tue, 03 Dec 2019 19:23:20 GMT\"0x8D7782641C05A66\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:20 GMT", + "x-ms-client-request-id" : "681dfcbf-7c80-45c1-964c-a70e5c4367b7", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilerange0sastestfilerange12408533a832bb853343?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilerange0sastestfilerange0e11306291a6a76e7b90?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "b9e5d8e5-742c-46f0-be31-fe4ae732bef5" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d282f17d-5273-4592-996f-351a51d61937" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520ef1e-701e-0097-3ad2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:48 GMT", - "x-ms-client-request-id" : "b9e5d8e5-742c-46f0-be31-fe4ae732bef5" + "x-ms-request-id" : "1d9a4069-e01e-0092-430f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:20 GMT", + "x-ms-client-request-id" : "d282f17d-5273-4592-996f-351a51d61937" }, "Exception" : null } ], - "variables" : [ "jtfsfilerange0sastestfilerange12408533a832bb853343" ] + "variables" : [ "jtfsfilerange0sastestfilerange0e11306291a6a76e7b90", "javapathfilerange1sastestfilerange0e182333bd487ee611" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilerange[2].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilerange[2].json index f49c810b9ff3..da20f47dfc16 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilerange[2].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilerange[2].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilerange0sastestfilerange58d622718597c9070c30?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilerange0sastestfilerangef3e695519063e62439d9?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "c870207c-7a1c-423e-8ef0-7269910b43da" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8ec42856-1183-4705-8ed9-5d2b15ffaac1" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA1C5ED282", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:48 GMT", + "ETag" : "0x8D778264202C67C", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:20 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520ef40-701e-0097-59d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:48 GMT", - "x-ms-client-request-id" : "c870207c-7a1c-423e-8ef0-7269910b43da" + "x-ms-request-id" : "1d9a4082-e01e-0092-570f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:20 GMT", + "x-ms-client-request-id" : "8ec42856-1183-4705-8ed9-5d2b15ffaac1" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilerange0sastestfilerangef3e695519063e62439d9/javapathfilerange1sastestfilerangef3e368908e98932242?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "37b847de-1923-4089-a162-11cc200469a5" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826420F73E2", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:20 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9acf-101f-004b-1c0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:19 GMT", + "x-ms-client-request-id" : "37b847de-1923-4089-a162-11cc200469a5" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilerange0sastestfilerangef3e695519063e62439d9/javapathfilerange1sastestfilerangef3e368908e98932242?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "bc4eaa4f-8de9-4847-ade9-671f75a60ee3", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9ad0-101f-004b-1d0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:19 GMT", + "x-ms-client-request-id" : "bc4eaa4f-8de9-4847-ade9-671f75a60ee3" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilerange0sastestfilerangef3e695519063e62439d9/javapathfilerange1sastestfilerangef3e368908e98932242?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8c3dd1cb-d432-481d-b8b8-7bca87ff7b4a" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782642208826", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:20 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9ad1-101f-004b-1e0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:19 GMT", + "x-ms-client-request-id" : "8c3dd1cb-d432-481d-b8b8-7bca87ff7b4a" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsfilerange&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "5893e7fa-200f-42de-a502-262e446b12ac" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "010cfd7c-ace6-4494-8f51-56d210eafbac" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520ef76-701e-0097-0bd2-902db3000000", - "Body" : "jtfsfilerangejtfsfilerange0sastestfilerange58d622718597c9070c30Fri, 01 Nov 2019 16:39:48 GMT\"0x8D75EEA1C5ED282\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:48 GMT", - "x-ms-client-request-id" : "5893e7fa-200f-42de-a502-262e446b12ac", + "x-ms-request-id" : "1d9a40cb-e01e-0092-0f0f-aad9cc000000", + "Body" : "jtfsfilerangejtfsfilerange0sastestfilerangef3e695519063e62439d9Tue, 03 Dec 2019 19:23:20 GMT\"0x8D778264202C67C\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:20 GMT", + "x-ms-client-request-id" : "010cfd7c-ace6-4494-8f51-56d210eafbac", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilerange0sastestfilerange58d622718597c9070c30?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilerange0sastestfilerangef3e695519063e62439d9?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "ef0e950b-7f67-457a-8e6f-035fb55620ce" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "4d461a0b-25e1-4b67-9bd5-8d9d950f7e19" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520ef8b-701e-0097-1fd2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:48 GMT", - "x-ms-client-request-id" : "ef0e950b-7f67-457a-8e6f-035fb55620ce" + "x-ms-request-id" : "1d9a40e3-e01e-0092-200f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:21 GMT", + "x-ms-client-request-id" : "4d461a0b-25e1-4b67-9bd5-8d9d950f7e19" }, "Exception" : null } ], - "variables" : [ "jtfsfilerange0sastestfilerange58d622718597c9070c30" ] + "variables" : [ "jtfsfilerange0sastestfilerangef3e695519063e62439d9", "javapathfilerange1sastestfilerangef3e368908e98932242" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilerangeia[0].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilerangeia[0].json index cd07f6d41d58..5b70e4db90d3 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilerangeia[0].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilerangeia[0].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilerangeia0sastestfilerangeia94c1962980ca9970eb?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilerangeia0sastestfilerangeia2168924360257cb889?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "21e07bff-865f-4d92-a873-ec18f3eaf713" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8def2d42-09df-4a51-abc0-e5c976bd7e8f" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA1C81CA1E", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:48 GMT", + "ETag" : "0x8D77826423997BA", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:21 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520efa6-701e-0097-38d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:48 GMT", - "x-ms-client-request-id" : "21e07bff-865f-4d92-a873-ec18f3eaf713" + "x-ms-request-id" : "1d9a40fc-e01e-0092-370f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:21 GMT", + "x-ms-client-request-id" : "8def2d42-09df-4a51-abc0-e5c976bd7e8f" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilerangeia0sastestfilerangeia2168924360257cb889/javapathfilerangeia1sastestfilerangeia216794501c94b80a?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "24ecf75a-2d0d-405a-a15b-1fa63e814e10" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264248BD30", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:21 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9ad2-101f-004b-1f0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:20 GMT", + "x-ms-client-request-id" : "24ecf75a-2d0d-405a-a15b-1fa63e814e10" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilerangeia0sastestfilerangeia2168924360257cb889/javapathfilerangeia1sastestfilerangeia216794501c94b80a?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d6526773-8a98-4aff-b931-01a0051e1454", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9ad3-101f-004b-200f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:20 GMT", + "x-ms-client-request-id" : "d6526773-8a98-4aff-b931-01a0051e1454" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilerangeia0sastestfilerangeia2168924360257cb889/javapathfilerangeia1sastestfilerangeia216794501c94b80a?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "1b38b386-2746-4ddc-b2ad-90dc3c75184b" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826426E54E1", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:21 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9ad4-101f-004b-210f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:20 GMT", + "x-ms-client-request-id" : "1b38b386-2746-4ddc-b2ad-90dc3c75184b" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsfilerangeia&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "b4bec743-20f4-43b7-9bd6-dbcedeaa3496" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "5b57c031-0382-4b83-8a59-4d0c029dc5e9" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520f006-701e-0097-11d2-902db3000000", - "Body" : "jtfsfilerangeiajtfsfilerangeia0sastestfilerangeia94c1962980ca9970ebFri, 01 Nov 2019 16:39:48 GMT\"0x8D75EEA1C81CA1E\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:48 GMT", - "x-ms-client-request-id" : "b4bec743-20f4-43b7-9bd6-dbcedeaa3496", + "x-ms-request-id" : "1d9a4150-e01e-0092-010f-aad9cc000000", + "Body" : "jtfsfilerangeiajtfsfilerangeia0sastestfilerangeia2168924360257cb889Tue, 03 Dec 2019 19:23:21 GMT\"0x8D77826423997BA\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:21 GMT", + "x-ms-client-request-id" : "5b57c031-0382-4b83-8a59-4d0c029dc5e9", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilerangeia0sastestfilerangeia94c1962980ca9970eb?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilerangeia0sastestfilerangeia2168924360257cb889?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "c186c85e-1303-4487-80e5-cd56d799c015" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "4b6c0b9c-ef0c-4159-bc71-02c5e5ec7ccb" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520f01e-701e-0097-26d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:48 GMT", - "x-ms-client-request-id" : "c186c85e-1303-4487-80e5-cd56d799c015" + "x-ms-request-id" : "1d9a415c-e01e-0092-0d0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:21 GMT", + "x-ms-client-request-id" : "4b6c0b9c-ef0c-4159-bc71-02c5e5ec7ccb" }, "Exception" : null } ], - "variables" : [ "jtfsfilerangeia0sastestfilerangeia94c1962980ca9970eb" ] + "variables" : [ "jtfsfilerangeia0sastestfilerangeia2168924360257cb889", "javapathfilerangeia1sastestfilerangeia216794501c94b80a" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilerangeia[1].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilerangeia[1].json index 826ceaf40bb3..511403d2873e 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilerangeia[1].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilerangeia[1].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilerangeia0sastestfilerangeiad887410668f058f310?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilerangeia0sastestfilerangeia22221314f3cf21b11d?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "c9f16230-6442-46b1-8191-ae79b41c4794" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e5951823-bbf7-48c5-9678-cd5a23570ab3" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA1CAC160C", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:49 GMT", + "ETag" : "0x8D778264288FE69", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:21 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520f038-701e-0097-3cd2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:49 GMT", - "x-ms-client-request-id" : "c9f16230-6442-46b1-8191-ae79b41c4794" + "x-ms-request-id" : "1d9a417b-e01e-0092-250f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:21 GMT", + "x-ms-client-request-id" : "e5951823-bbf7-48c5-9678-cd5a23570ab3" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilerangeia0sastestfilerangeia22221314f3cf21b11d/javapathfilerangeia1sastestfilerangeia222122084e7073f3?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "72e1d91f-d5f5-425a-8720-953f6e362bb2" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826429605A5", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:21 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9ad5-101f-004b-220f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:20 GMT", + "x-ms-client-request-id" : "72e1d91f-d5f5-425a-8720-953f6e362bb2" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilerangeia0sastestfilerangeia22221314f3cf21b11d/javapathfilerangeia1sastestfilerangeia222122084e7073f3?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f2286027-7b12-4974-84b2-b446a7133feb", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9ad6-101f-004b-230f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:20 GMT", + "x-ms-client-request-id" : "f2286027-7b12-4974-84b2-b446a7133feb" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilerangeia0sastestfilerangeia22221314f3cf21b11d/javapathfilerangeia1sastestfilerangeia222122084e7073f3?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "9790ef40-76c5-4bbf-bcb5-6bfd2072d304" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782642A8C14E", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:21 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9ad7-101f-004b-240f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:20 GMT", + "x-ms-client-request-id" : "9790ef40-76c5-4bbf-bcb5-6bfd2072d304" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsfilerangeia&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "917e78df-a5d7-4baf-8feb-95e685266c9d" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "0f854fc6-3dc5-4d98-9ba0-cf3831620cd4" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520f13a-701e-0097-2dd2-902db3000000", - "Body" : "jtfsfilerangeiajtfsfilerangeia0sastestfilerangeiad887410668f058f310Fri, 01 Nov 2019 16:39:49 GMT\"0x8D75EEA1CAC160C\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:49 GMT", - "x-ms-client-request-id" : "917e78df-a5d7-4baf-8feb-95e685266c9d", + "x-ms-request-id" : "1d9a41b4-e01e-0092-580f-aad9cc000000", + "Body" : "jtfsfilerangeiajtfsfilerangeia0sastestfilerangeia22221314f3cf21b11dTue, 03 Dec 2019 19:23:21 GMT\"0x8D778264288FE69\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:21 GMT", + "x-ms-client-request-id" : "0f854fc6-3dc5-4d98-9ba0-cf3831620cd4", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilerangeia0sastestfilerangeiad887410668f058f310?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilerangeia0sastestfilerangeia22221314f3cf21b11d?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "ef397a9d-84e9-413d-95d1-d46932cfb674" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "308a0d90-527b-4dc9-a01c-17a3a10d2536" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520f14e-701e-0097-3fd2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:49 GMT", - "x-ms-client-request-id" : "ef397a9d-84e9-413d-95d1-d46932cfb674" + "x-ms-request-id" : "1d9a41bf-e01e-0092-630f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:21 GMT", + "x-ms-client-request-id" : "308a0d90-527b-4dc9-a01c-17a3a10d2536" }, "Exception" : null } ], - "variables" : [ "jtfsfilerangeia0sastestfilerangeiad887410668f058f310" ] + "variables" : [ "jtfsfilerangeia0sastestfilerangeia22221314f3cf21b11d", "javapathfilerangeia1sastestfilerangeia222122084e7073f3" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[0].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[0].json index d308604d28d6..e6eb67f2a02c 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[0].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[0].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse04634890dfddfdc6e9?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse04864888f3cc8d3242?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "4715593e-6313-43f1-9c25-49164eb5a67d" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "50c1aaf8-e3fa-4588-8804-29e9f2124186" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA2522D556", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:03 GMT", + "ETag" : "0x8D77826513BB1D8", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:46 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210c41-701e-0097-1fd3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:03 GMT", - "x-ms-client-request-id" : "4715593e-6313-43f1-9c25-49164eb5a67d" + "x-ms-request-id" : "1d9a5b88-e01e-0092-0b0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:46 GMT", + "x-ms-client-request-id" : "50c1aaf8-e3fa-4588-8804-29e9f2124186" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse04864888f3cc8d3242/javapathfilesystemsaspermissionparse19448242cc41d9fc?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "1699405f-11ca-45e8-a8d5-213dea89285e" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826514D373E", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:46 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9dee-101f-004b-2d0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:46 GMT", + "x-ms-client-request-id" : "1699405f-11ca-45e8-a8d5-213dea89285e" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse04864888f3cc8d3242/javapathfilesystemsaspermissionparse19448242cc41d9fc?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "282b448e-97ba-42ff-802c-e976e0d156c8", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9def-101f-004b-2e0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:46 GMT", + "x-ms-client-request-id" : "282b448e-97ba-42ff-802c-e976e0d156c8" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse04864888f3cc8d3242/javapathfilesystemsaspermissionparse19448242cc41d9fc?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "9b9ad668-df76-4bac-89b7-6bb0aaecf410" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826516369FE", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:46 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9df0-101f-004b-2f0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:46 GMT", + "x-ms-client-request-id" : "9b9ad668-df76-4bac-89b7-6bb0aaecf410" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsfilesystemsaspermissionparse&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "58ebb282-9c73-49e0-bfdb-87689bee47a1" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ca03c496-1eab-48d1-8968-645d40444721" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210c76-701e-0097-4fd3-902db3000000", - "Body" : "jtfsfilesystemsaspermissionparsejtfsfilesystemsaspermissionparse04634890dfddfdc6e9Fri, 01 Nov 2019 16:40:03 GMT\"0x8D75EEA2522D556\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:03 GMT", - "x-ms-client-request-id" : "58ebb282-9c73-49e0-bfdb-87689bee47a1", + "x-ms-request-id" : "1d9a5bd1-e01e-0092-490f-aad9cc000000", + "Body" : "jtfsfilesystemsaspermissionparsejtfsfilesystemsaspermissionparse04864888f3cc8d3242Tue, 03 Dec 2019 19:23:46 GMT\"0x8D77826513BB1D8\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:46 GMT", + "x-ms-client-request-id" : "ca03c496-1eab-48d1-8968-645d40444721", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse04634890dfddfdc6e9?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse04864888f3cc8d3242?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "d34e1d39-a7d4-4113-91d1-53cd758e5adc" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "13c1ce4b-86a5-47bf-b24c-12e62d80c7f1" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210c96-701e-0097-6dd3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:03 GMT", - "x-ms-client-request-id" : "d34e1d39-a7d4-4113-91d1-53cd758e5adc" + "x-ms-request-id" : "1d9a5bd6-e01e-0092-4e0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:46 GMT", + "x-ms-client-request-id" : "13c1ce4b-86a5-47bf-b24c-12e62d80c7f1" }, "Exception" : null } ], - "variables" : [ "jtfsfilesystemsaspermissionparse04634890dfddfdc6e9" ] + "variables" : [ "jtfsfilesystemsaspermissionparse04864888f3cc8d3242", "javapathfilesystemsaspermissionparse19448242cc41d9fc" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[1].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[1].json index 948e33e00e1e..45f1feb85658 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[1].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[1].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse0621708616a10fd2cb?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse0083948444dc2f1da7?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "e421cadd-83bc-466f-923a-10576d845257" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "1a48cc02-2acc-454d-9a96-e5b439ff977c" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA253D18D5", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:03 GMT", + "ETag" : "0x8D77826517C48D2", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:46 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210cdb-701e-0097-28d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:03 GMT", - "x-ms-client-request-id" : "e421cadd-83bc-466f-923a-10576d845257" + "x-ms-request-id" : "1d9a5be9-e01e-0092-5e0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:46 GMT", + "x-ms-client-request-id" : "1a48cc02-2acc-454d-9a96-e5b439ff977c" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse0083948444dc2f1da7/javapathfilesystemsaspermissionparse1057671dc9a974a4?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8cbe387b-d458-41e6-a331-a3b8c6575a6c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782651866A02", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:46 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9df1-101f-004b-300f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:46 GMT", + "x-ms-client-request-id" : "8cbe387b-d458-41e6-a331-a3b8c6575a6c" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse0083948444dc2f1da7/javapathfilesystemsaspermissionparse1057671dc9a974a4?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "5fe2ec2f-1a09-47f9-9086-bd09c6c5b134", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9df5-101f-004b-340f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:46 GMT", + "x-ms-client-request-id" : "5fe2ec2f-1a09-47f9-9086-bd09c6c5b134" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse0083948444dc2f1da7/javapathfilesystemsaspermissionparse1057671dc9a974a4?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "0045784d-b50f-4cef-9586-fb0c6c875f82" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782651980944", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:46 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9dfa-101f-004b-390f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:46 GMT", + "x-ms-client-request-id" : "0045784d-b50f-4cef-9586-fb0c6c875f82" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsfilesystemsaspermissionparse&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "80d65a59-0987-439b-a3a7-961e15f80ac7" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f3eb9692-a4c4-4129-9a23-a8b79327b452" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210d07-701e-0097-50d3-902db3000000", - "Body" : "jtfsfilesystemsaspermissionparsejtfsfilesystemsaspermissionparse0621708616a10fd2cbFri, 01 Nov 2019 16:40:03 GMT\"0x8D75EEA253D18D5\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:03 GMT", - "x-ms-client-request-id" : "80d65a59-0987-439b-a3a7-961e15f80ac7", + "x-ms-request-id" : "1d9a5c19-e01e-0092-070f-aad9cc000000", + "Body" : "jtfsfilesystemsaspermissionparsejtfsfilesystemsaspermissionparse0083948444dc2f1da7Tue, 03 Dec 2019 19:23:46 GMT\"0x8D77826517C48D2\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:46 GMT", + "x-ms-client-request-id" : "f3eb9692-a4c4-4129-9a23-a8b79327b452", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse0621708616a10fd2cb?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse0083948444dc2f1da7?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "2b30e3d2-bffd-49e2-9c92-cdff150f7655" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d18c66b4-ea78-4403-b05e-d1acfaae3d86" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210d28-701e-0097-6cd3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:03 GMT", - "x-ms-client-request-id" : "2b30e3d2-bffd-49e2-9c92-cdff150f7655" + "x-ms-request-id" : "1d9a5c20-e01e-0092-0e0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:46 GMT", + "x-ms-client-request-id" : "d18c66b4-ea78-4403-b05e-d1acfaae3d86" }, "Exception" : null } ], - "variables" : [ "jtfsfilesystemsaspermissionparse0621708616a10fd2cb" ] + "variables" : [ "jtfsfilesystemsaspermissionparse0083948444dc2f1da7", "javapathfilesystemsaspermissionparse1057671dc9a974a4" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[2].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[2].json index 276cc321a507..bb96234cb3a8 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[2].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[2].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse04858460d9f0f32d60?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse024973e4bcb1d1cd9e?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "d5117aa3-a16b-4d70-b390-64657b19b9e6" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "846e1f33-7027-41d6-87f0-33e180980a31" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA25581FDB", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:03 GMT", + "ETag" : "0x8D7782651B2086F", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:47 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210d51-701e-0097-10d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:03 GMT", - "x-ms-client-request-id" : "d5117aa3-a16b-4d70-b390-64657b19b9e6" + "x-ms-request-id" : "1d9a5c40-e01e-0092-280f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:47 GMT", + "x-ms-client-request-id" : "846e1f33-7027-41d6-87f0-33e180980a31" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse024973e4bcb1d1cd9e/javapathfilesystemsaspermissionparse102594aceb31d8fb?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e2ad5398-18eb-48a0-9c50-6efe1196f0ce" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782651BDAB04", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:47 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9e0c-101f-004b-4b0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:47 GMT", + "x-ms-client-request-id" : "e2ad5398-18eb-48a0-9c50-6efe1196f0ce" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse024973e4bcb1d1cd9e/javapathfilesystemsaspermissionparse102594aceb31d8fb?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ec05f149-345e-4b14-bc38-096e8843a3bf", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9e0d-101f-004b-4c0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:47 GMT", + "x-ms-client-request-id" : "ec05f149-345e-4b14-bc38-096e8843a3bf" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse024973e4bcb1d1cd9e/javapathfilesystemsaspermissionparse102594aceb31d8fb?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ae84540e-3b18-477d-9951-485788c7fef6" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782651CFFAFA", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:47 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9e12-101f-004b-510f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:47 GMT", + "x-ms-client-request-id" : "ae84540e-3b18-477d-9951-485788c7fef6" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsfilesystemsaspermissionparse&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "efe617b0-b750-466a-a71f-22951ba5d60a" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "eb24cc17-d23b-4c19-a68f-1a00da66ab58" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210d82-701e-0097-3ad3-902db3000000", - "Body" : "jtfsfilesystemsaspermissionparsejtfsfilesystemsaspermissionparse04858460d9f0f32d60Fri, 01 Nov 2019 16:40:03 GMT\"0x8D75EEA25581FDB\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:03 GMT", - "x-ms-client-request-id" : "efe617b0-b750-466a-a71f-22951ba5d60a", + "x-ms-request-id" : "1d9a5c89-e01e-0092-600f-aad9cc000000", + "Body" : "jtfsfilesystemsaspermissionparsejtfsfilesystemsaspermissionparse024973e4bcb1d1cd9eTue, 03 Dec 2019 19:23:47 GMT\"0x8D7782651B2086F\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:47 GMT", + "x-ms-client-request-id" : "eb24cc17-d23b-4c19-a68f-1a00da66ab58", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse04858460d9f0f32d60?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse024973e4bcb1d1cd9e?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "097255ee-2563-407e-8e40-5eb6b13e4fbc" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "03d519c0-1525-4563-85a6-7c5c46b6d7ba" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210dac-701e-0097-5cd3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:03 GMT", - "x-ms-client-request-id" : "097255ee-2563-407e-8e40-5eb6b13e4fbc" + "x-ms-request-id" : "1d9a5c96-e01e-0092-6c0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:47 GMT", + "x-ms-client-request-id" : "03d519c0-1525-4563-85a6-7c5c46b6d7ba" }, "Exception" : null } ], - "variables" : [ "jtfsfilesystemsaspermissionparse04858460d9f0f32d60" ] + "variables" : [ "jtfsfilesystemsaspermissionparse024973e4bcb1d1cd9e", "javapathfilesystemsaspermissionparse102594aceb31d8fb" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[3].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[3].json index 01790ab0e711..6a8255134213 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[3].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[3].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse007858f6de7a082842?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse0163166ca6565fe728?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "6657b5ad-21a2-4626-ae47-cb69bd947ed5" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "540a9966-5fed-457d-be23-747ddca50f53" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA257682FF", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:04 GMT", + "ETag" : "0x8D7782651EBC062", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:47 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210dd7-701e-0097-06d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:03 GMT", - "x-ms-client-request-id" : "6657b5ad-21a2-4626-ae47-cb69bd947ed5" + "x-ms-request-id" : "1d9a5c9e-e01e-0092-730f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:47 GMT", + "x-ms-client-request-id" : "540a9966-5fed-457d-be23-747ddca50f53" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse0163166ca6565fe728/javapathfilesystemsaspermissionparse1934721a42076c07?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ffeca8bc-4168-4a76-bdc6-1975ea84838a" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782651F8D8AA", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:47 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9e23-101f-004b-620f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:47 GMT", + "x-ms-client-request-id" : "ffeca8bc-4168-4a76-bdc6-1975ea84838a" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse0163166ca6565fe728/javapathfilesystemsaspermissionparse1934721a42076c07?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8d1e5d66-2fb4-4405-bae6-48b2f91e9745", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9e29-101f-004b-680f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:47 GMT", + "x-ms-client-request-id" : "8d1e5d66-2fb4-4405-bae6-48b2f91e9745" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse0163166ca6565fe728/javapathfilesystemsaspermissionparse1934721a42076c07?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "13a0841f-6d72-46c4-8a59-53b6f4f07c68" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826520919C3", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:47 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9e2a-101f-004b-690f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:47 GMT", + "x-ms-client-request-id" : "13a0841f-6d72-46c4-8a59-53b6f4f07c68" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsfilesystemsaspermissionparse&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "37693ee0-2292-4218-8901-d678c8c0485b" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b06e120b-137c-4596-be2f-00819069110d" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210dfd-701e-0097-27d3-902db3000000", - "Body" : "jtfsfilesystemsaspermissionparsejtfsfilesystemsaspermissionparse007858f6de7a082842Fri, 01 Nov 2019 16:40:04 GMT\"0x8D75EEA257682FF\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:03 GMT", - "x-ms-client-request-id" : "37693ee0-2292-4218-8901-d678c8c0485b", + "x-ms-request-id" : "1d9a5cf1-e01e-0092-320f-aad9cc000000", + "Body" : "jtfsfilesystemsaspermissionparsejtfsfilesystemsaspermissionparse0163166ca6565fe728Tue, 03 Dec 2019 19:23:47 GMT\"0x8D7782651EBC062\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:47 GMT", + "x-ms-client-request-id" : "b06e120b-137c-4596-be2f-00819069110d", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse007858f6de7a082842?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse0163166ca6565fe728?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "82b5876b-e869-436d-9492-d67b9c526824" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "4d1903f4-3a73-4f6d-911c-2a317605c1ab" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210e1b-701e-0097-41d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:03 GMT", - "x-ms-client-request-id" : "82b5876b-e869-436d-9492-d67b9c526824" + "x-ms-request-id" : "1d9a5cfe-e01e-0092-3f0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:47 GMT", + "x-ms-client-request-id" : "4d1903f4-3a73-4f6d-911c-2a317605c1ab" }, "Exception" : null } ], - "variables" : [ "jtfsfilesystemsaspermissionparse007858f6de7a082842" ] + "variables" : [ "jtfsfilesystemsaspermissionparse0163166ca6565fe728", "javapathfilesystemsaspermissionparse1934721a42076c07" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[4].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[4].json index 5ff54f114457..debaf95fcbd5 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[4].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[4].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse051076853d81e60c3f?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse091479aae9c59345a3?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "00a60233-5920-4a7d-9888-e3adb119ed95" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "189145aa-477b-458d-8410-2647cf2c8367" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA25902A53", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:04 GMT", + "ETag" : "0x8D778265220E3A3", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:47 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210e49-701e-0097-6dd3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:03 GMT", - "x-ms-client-request-id" : "00a60233-5920-4a7d-9888-e3adb119ed95" + "x-ms-request-id" : "1d9a5d0f-e01e-0092-4d0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:47 GMT", + "x-ms-client-request-id" : "189145aa-477b-458d-8410-2647cf2c8367" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse091479aae9c59345a3/javapathfilesystemsaspermissionparse110660d0801ca499?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "4f55f25c-507f-41c3-88db-b80dabce1042" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826522D667F", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:47 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9e35-101f-004b-740f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:47 GMT", + "x-ms-client-request-id" : "4f55f25c-507f-41c3-88db-b80dabce1042" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse091479aae9c59345a3/javapathfilesystemsaspermissionparse110660d0801ca499?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "6b11a64f-c324-42af-be25-c6ae18a934d5", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9e36-101f-004b-750f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:47 GMT", + "x-ms-client-request-id" : "6b11a64f-c324-42af-be25-c6ae18a934d5" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse091479aae9c59345a3/javapathfilesystemsaspermissionparse110660d0801ca499?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "2525cbc0-2a2c-404d-be69-ea836c3e854a" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826523DA405", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:48 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9e37-101f-004b-760f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:48 GMT", + "x-ms-client-request-id" : "2525cbc0-2a2c-404d-be69-ea836c3e854a" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsfilesystemsaspermissionparse&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "8fde327f-db06-4f8f-9299-709b31eb003d" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "3fb06803-b986-4e72-9d6a-79a7dfaadb4a" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210e69-701e-0097-0bd3-902db3000000", - "Body" : "jtfsfilesystemsaspermissionparsejtfsfilesystemsaspermissionparse051076853d81e60c3fFri, 01 Nov 2019 16:40:04 GMT\"0x8D75EEA25902A53\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:03 GMT", - "x-ms-client-request-id" : "8fde327f-db06-4f8f-9299-709b31eb003d", + "x-ms-request-id" : "1d9a5d96-e01e-0092-410f-aad9cc000000", + "Body" : "jtfsfilesystemsaspermissionparsejtfsfilesystemsaspermissionparse091479aae9c59345a3Tue, 03 Dec 2019 19:23:47 GMT\"0x8D778265220E3A3\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:48 GMT", + "x-ms-client-request-id" : "3fb06803-b986-4e72-9d6a-79a7dfaadb4a", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse051076853d81e60c3f?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse091479aae9c59345a3?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "f6503ad1-9f8a-431b-865a-769617c3dcf4" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "12e2577c-c1e2-4c54-a02c-a83643ef0a46" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210e81-701e-0097-21d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:03 GMT", - "x-ms-client-request-id" : "f6503ad1-9f8a-431b-865a-769617c3dcf4" + "x-ms-request-id" : "1d9a5d9b-e01e-0092-460f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:48 GMT", + "x-ms-client-request-id" : "12e2577c-c1e2-4c54-a02c-a83643ef0a46" }, "Exception" : null } ], - "variables" : [ "jtfsfilesystemsaspermissionparse051076853d81e60c3f" ] + "variables" : [ "jtfsfilesystemsaspermissionparse091479aae9c59345a3", "javapathfilesystemsaspermissionparse110660d0801ca499" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[5].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[5].json index 8a0440afb833..58e3d1dbdbd8 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[5].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[5].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse074162166f5367ddcf?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse0064098125c5462427?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "52427c53-8373-4bf2-a128-f9f543c1e658" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "c90750cb-d153-4273-a3a9-5c6cd3c541f1" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA25ABA6BF", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:04 GMT", + "ETag" : "0x8D778265283FCED", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:48 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210ea4-701e-0097-3cd3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:03 GMT", - "x-ms-client-request-id" : "52427c53-8373-4bf2-a128-f9f543c1e658" + "x-ms-request-id" : "1d9a5db1-e01e-0092-5a0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:48 GMT", + "x-ms-client-request-id" : "c90750cb-d153-4273-a3a9-5c6cd3c541f1" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse0064098125c5462427/javapathfilesystemsaspermissionparse1692743858f059ee?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "18a1ff8f-0ab2-48c3-b26f-afb59ebc6aea" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826528F8E82", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:48 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9e38-101f-004b-770f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:48 GMT", + "x-ms-client-request-id" : "18a1ff8f-0ab2-48c3-b26f-afb59ebc6aea" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse0064098125c5462427/javapathfilesystemsaspermissionparse1692743858f059ee?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e1337240-7525-4215-a0d5-3f106e6071cb", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9e39-101f-004b-780f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:48 GMT", + "x-ms-client-request-id" : "e1337240-7525-4215-a0d5-3f106e6071cb" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse0064098125c5462427/javapathfilesystemsaspermissionparse1692743858f059ee?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "908bdfb8-cf1b-4c71-8653-d4c37bea788f" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826529F38DC", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:48 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9e3a-101f-004b-790f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:48 GMT", + "x-ms-client-request-id" : "908bdfb8-cf1b-4c71-8653-d4c37bea788f" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsfilesystemsaspermissionparse&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "d28645ea-34b3-48ff-af6d-bec9a7eedd35" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "6b6ae7d1-dbef-4a90-8ad6-6f9a0b49186e" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210ec5-701e-0097-5bd3-902db3000000", - "Body" : "jtfsfilesystemsaspermissionparsejtfsfilesystemsaspermissionparse074162166f5367ddcfFri, 01 Nov 2019 16:40:04 GMT\"0x8D75EEA25ABA6BF\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:03 GMT", - "x-ms-client-request-id" : "d28645ea-34b3-48ff-af6d-bec9a7eedd35", + "x-ms-request-id" : "1d9a5de4-e01e-0092-080f-aad9cc000000", + "Body" : "jtfsfilesystemsaspermissionparsejtfsfilesystemsaspermissionparse0064098125c5462427Tue, 03 Dec 2019 19:23:48 GMT\"0x8D778265283FCED\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:48 GMT", + "x-ms-client-request-id" : "6b6ae7d1-dbef-4a90-8ad6-6f9a0b49186e", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse074162166f5367ddcf?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse0064098125c5462427?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "ec195219-38d5-45a9-af9b-afb44e329548" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b47b69e4-049a-476c-abc6-e44e68fbacdd" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210eeb-701e-0097-7ed3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:04 GMT", - "x-ms-client-request-id" : "ec195219-38d5-45a9-af9b-afb44e329548" + "x-ms-request-id" : "1d9a5de7-e01e-0092-0b0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:48 GMT", + "x-ms-client-request-id" : "b47b69e4-049a-476c-abc6-e44e68fbacdd" }, "Exception" : null } ], - "variables" : [ "jtfsfilesystemsaspermissionparse074162166f5367ddcf" ] + "variables" : [ "jtfsfilesystemsaspermissionparse0064098125c5462427", "javapathfilesystemsaspermissionparse1692743858f059ee" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[6].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[6].json index f9e629bc23ef..ce2aa432a986 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[6].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[6].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse0459330cb56d016b78?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse009063380fce8ac279?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "0ecd2d2f-69ce-42b6-bd2c-cb4bf966c873" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "76f39263-754c-4a89-930d-353f44d54d12" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA25C52700", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:04 GMT", + "ETag" : "0x8D7782652BDB4E0", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:48 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210f11-701e-0097-1dd3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:04 GMT", - "x-ms-client-request-id" : "0ecd2d2f-69ce-42b6-bd2c-cb4bf966c873" + "x-ms-request-id" : "1d9a5df0-e01e-0092-130f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:48 GMT", + "x-ms-client-request-id" : "76f39263-754c-4a89-930d-353f44d54d12" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse009063380fce8ac279/javapathfilesystemsaspermissionparse1857908c690f9171?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "444c4bc5-2304-4193-bcbb-67f9b30b5bc6" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782652C8F105", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:48 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9e4e-101f-004b-0d0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:48 GMT", + "x-ms-client-request-id" : "444c4bc5-2304-4193-bcbb-67f9b30b5bc6" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse009063380fce8ac279/javapathfilesystemsaspermissionparse1857908c690f9171?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "016be6a6-f3f9-42c4-ba1f-6c8701fcd528", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9e4f-101f-004b-0e0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:48 GMT", + "x-ms-client-request-id" : "016be6a6-f3f9-42c4-ba1f-6c8701fcd528" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse009063380fce8ac279/javapathfilesystemsaspermissionparse1857908c690f9171?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "85f869e8-9b25-4bec-9d2c-e71177dbc02c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782652DC2274", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:49 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9e57-101f-004b-160f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:49 GMT", + "x-ms-client-request-id" : "85f869e8-9b25-4bec-9d2c-e71177dbc02c" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsfilesystemsaspermissionparse&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "da2a8d34-c4ff-4a2d-b919-1f016603c80b" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "5e3d282a-8592-4596-be99-229180f65dd3" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210f77-701e-0097-7bd3-902db3000000", - "Body" : "jtfsfilesystemsaspermissionparsejtfsfilesystemsaspermissionparse0459330cb56d016b78Fri, 01 Nov 2019 16:40:04 GMT\"0x8D75EEA25C52700\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:04 GMT", - "x-ms-client-request-id" : "da2a8d34-c4ff-4a2d-b919-1f016603c80b", + "x-ms-request-id" : "1d9a5e2b-e01e-0092-480f-aad9cc000000", + "Body" : "jtfsfilesystemsaspermissionparsejtfsfilesystemsaspermissionparse009063380fce8ac279Tue, 03 Dec 2019 19:23:48 GMT\"0x8D7782652BDB4E0\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:48 GMT", + "x-ms-client-request-id" : "5e3d282a-8592-4596-be99-229180f65dd3", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse0459330cb56d016b78?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse009063380fce8ac279?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "cf62ec48-c593-40be-b082-c945b8d6f408" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "789c1f36-b2b0-4c28-8935-87a8328f71b5" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210f89-701e-0097-0bd3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:04 GMT", - "x-ms-client-request-id" : "cf62ec48-c593-40be-b082-c945b8d6f408" + "x-ms-request-id" : "1d9a5e3f-e01e-0092-570f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:49 GMT", + "x-ms-client-request-id" : "789c1f36-b2b0-4c28-8935-87a8328f71b5" }, "Exception" : null } ], - "variables" : [ "jtfsfilesystemsaspermissionparse0459330cb56d016b78" ] + "variables" : [ "jtfsfilesystemsaspermissionparse009063380fce8ac279", "javapathfilesystemsaspermissionparse1857908c690f9171" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[7].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[7].json index e228adaa9a45..bee46e3c387d 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[7].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparse[7].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse06108076481c26bf78?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse052331924c07d3d83c?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "1e0cb203-9ca4-4c33-9ea3-c97ef6a4ec7b" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "cdf341c6-6ab5-4c4c-900e-99702a1c8bda" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA25ECB38F", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:04 GMT", + "ETag" : "0x8D7782652FA055A", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:49 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210fbe-701e-0097-38d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:04 GMT", - "x-ms-client-request-id" : "1e0cb203-9ca4-4c33-9ea3-c97ef6a4ec7b" + "x-ms-request-id" : "1d9a5e5a-e01e-0092-6f0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:49 GMT", + "x-ms-client-request-id" : "cdf341c6-6ab5-4c4c-900e-99702a1c8bda" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse052331924c07d3d83c/javapathfilesystemsaspermissionparse196229a210512f85?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "c8c346ab-95c8-4fca-9319-95b57851d7e2" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778265305CA69", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:49 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9e77-101f-004b-360f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:49 GMT", + "x-ms-client-request-id" : "c8c346ab-95c8-4fca-9319-95b57851d7e2" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse052331924c07d3d83c/javapathfilesystemsaspermissionparse196229a210512f85?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "c6cc7a8b-5be4-4bfd-8dd3-20344530ceac", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9e83-101f-004b-420f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:49 GMT", + "x-ms-client-request-id" : "c6cc7a8b-5be4-4bfd-8dd3-20344530ceac" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparse052331924c07d3d83c/javapathfilesystemsaspermissionparse196229a210512f85?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f8245412-3f9c-41cd-87fa-d87db4c22396" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782653252C82", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:49 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9e89-101f-004b-480f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:49 GMT", + "x-ms-client-request-id" : "f8245412-3f9c-41cd-87fa-d87db4c22396" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsfilesystemsaspermissionparse&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "cebf66d0-bda4-4e2c-a9ce-d36848810286" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "3f9da2e5-abdd-4e2b-b05f-2a265c2612cd" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210ff1-701e-0097-63d3-902db3000000", - "Body" : "jtfsfilesystemsaspermissionparsejtfsfilesystemsaspermissionparse06108076481c26bf78Fri, 01 Nov 2019 16:40:04 GMT\"0x8D75EEA25ECB38F\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:04 GMT", - "x-ms-client-request-id" : "cebf66d0-bda4-4e2c-a9ce-d36848810286", + "x-ms-request-id" : "1d9a5ebd-e01e-0092-4b0f-aad9cc000000", + "Body" : "jtfsfilesystemsaspermissionparsejtfsfilesystemsaspermissionparse052331924c07d3d83cTue, 03 Dec 2019 19:23:49 GMT\"0x8D7782652FA055A\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:49 GMT", + "x-ms-client-request-id" : "3f9da2e5-abdd-4e2b-b05f-2a265c2612cd", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse06108076481c26bf78?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparse052331924c07d3d83c?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "30d5bfb3-e8db-4ff3-a901-1bada96305ce" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "89278bd0-95e7-46bf-b43d-b4bfb704c13c" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5211011-701e-0097-80d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:04 GMT", - "x-ms-client-request-id" : "30d5bfb3-e8db-4ff3-a901-1bada96305ce" + "x-ms-request-id" : "1d9a5ec8-e01e-0092-530f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:49 GMT", + "x-ms-client-request-id" : "89278bd0-95e7-46bf-b43d-b4bfb704c13c" }, "Exception" : null } ], - "variables" : [ "jtfsfilesystemsaspermissionparse06108076481c26bf78" ] + "variables" : [ "jtfsfilesystemsaspermissionparse052331924c07d3d83c", "javapathfilesystemsaspermissionparse196229a210512f85" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparseia.json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparseia.json index 9a7332c06f83..ab408b687b70 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparseia.json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissionparseia.json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparseia011805cf4c4727417?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparseia0777005864730c72f?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "f280312a-ebd3-49a2-afe2-e929d4d7c48a" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "61b61084-a78d-497f-864e-7b295e2c2455" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA26076C59", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:04 GMT", + "ETag" : "0x8D77826533EBBC9", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:49 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b521103f-701e-0097-27d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:04 GMT", - "x-ms-client-request-id" : "f280312a-ebd3-49a2-afe2-e929d4d7c48a" + "x-ms-request-id" : "1d9a5ed5-e01e-0092-600f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:49 GMT", + "x-ms-client-request-id" : "61b61084-a78d-497f-864e-7b295e2c2455" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparseia0777005864730c72f/javapathfilesystemsaspermissionparseia1062562d53db932?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e16b11aa-fa19-4e45-aa83-e8acc5914aa3" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778265351BAFA", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:49 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9e91-101f-004b-500f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:49 GMT", + "x-ms-client-request-id" : "e16b11aa-fa19-4e45-aa83-e8acc5914aa3" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparseia0777005864730c72f/javapathfilesystemsaspermissionparseia1062562d53db932?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ed7b7ad3-c436-435b-8ad7-2a5f4bc2f771", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9e9a-101f-004b-590f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:49 GMT", + "x-ms-client-request-id" : "ed7b7ad3-c436-435b-8ad7-2a5f4bc2f771" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissionparseia0777005864730c72f/javapathfilesystemsaspermissionparseia1062562d53db932?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "341e4cc9-c044-4162-b81a-b4b7f75138c7" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826536503C6", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:49 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9e9f-101f-004b-5e0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:49 GMT", + "x-ms-client-request-id" : "341e4cc9-c044-4162-b81a-b4b7f75138c7" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsfilesystemsaspermissionparseia&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "3b872bb9-09f9-4e4b-8b84-0962f06db384" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "003afc94-6f95-4acb-9e54-aa2b11b6412b" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b521105c-701e-0097-42d3-902db3000000", - "Body" : "jtfsfilesystemsaspermissionparseiajtfsfilesystemsaspermissionparseia011805cf4c4727417Fri, 01 Nov 2019 16:40:04 GMT\"0x8D75EEA26076C59\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:04 GMT", - "x-ms-client-request-id" : "3b872bb9-09f9-4e4b-8b84-0962f06db384", + "x-ms-request-id" : "1d9a5f0b-e01e-0092-0f0f-aad9cc000000", + "Body" : "jtfsfilesystemsaspermissionparseiajtfsfilesystemsaspermissionparseia0777005864730c72fTue, 03 Dec 2019 19:23:49 GMT\"0x8D77826533EBBC9\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:49 GMT", + "x-ms-client-request-id" : "003afc94-6f95-4acb-9e54-aa2b11b6412b", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparseia011805cf4c4727417?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissionparseia0777005864730c72f?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "23aae34e-cddb-45da-8e79-b0bcc52398f2" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8b841a05-f9cc-4e0f-87d6-3970d419b79f" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5211071-701e-0097-57d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:04 GMT", - "x-ms-client-request-id" : "23aae34e-cddb-45da-8e79-b0bcc52398f2" + "x-ms-request-id" : "1d9a5f18-e01e-0092-1a0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:49 GMT", + "x-ms-client-request-id" : "8b841a05-f9cc-4e0f-87d6-3970d419b79f" }, "Exception" : null } ], - "variables" : [ "jtfsfilesystemsaspermissionparseia011805cf4c4727417" ] + "variables" : [ "jtfsfilesystemsaspermissionparseia0777005864730c72f", "javapathfilesystemsaspermissionparseia1062562d53db932" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[0].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[0].json index eb07b1a7d87e..ef50acaf3bfd 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[0].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[0].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring07531143d7512b0f1?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring01386059adaaa839e?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "85eabc83-4091-4dc4-b3cf-80a575b85848" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d1459cdb-cabd-4ed4-9417-ae9fe24b8dc7" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA2442AD3C", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:01 GMT", + "ETag" : "0x8D778264F70157E", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:43 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210956-701e-0097-0ed3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:01 GMT", - "x-ms-client-request-id" : "85eabc83-4091-4dc4-b3cf-80a575b85848" + "x-ms-request-id" : "1d9a57e7-e01e-0092-720f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:43 GMT", + "x-ms-client-request-id" : "d1459cdb-cabd-4ed4-9417-ae9fe24b8dc7" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissiontostring01386059adaaa839e/javapathfilesystemsaspermissiontostring130676ec91be606?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "3e45b604-856c-4303-8395-f0f608eea75c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264F7FEEEA", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:43 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9dd1-101f-004b-100f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:43 GMT", + "x-ms-client-request-id" : "3e45b604-856c-4303-8395-f0f608eea75c" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissiontostring01386059adaaa839e/javapathfilesystemsaspermissiontostring130676ec91be606?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "a10901a4-1e7b-4c04-affe-cd5ec2d69be4", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9dd2-101f-004b-110f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:43 GMT", + "x-ms-client-request-id" : "a10901a4-1e7b-4c04-affe-cd5ec2d69be4" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissiontostring01386059adaaa839e/javapathfilesystemsaspermissiontostring130676ec91be606?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e3fa80af-8c0d-4372-8b30-4e9caf0fcce1" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264F94CB58", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:43 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9dd3-101f-004b-120f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:43 GMT", + "x-ms-client-request-id" : "e3fa80af-8c0d-4372-8b30-4e9caf0fcce1" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsfilesystemsaspermissiontostring&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "427be6f2-945a-4d51-ad4d-a3684d7a8d5d" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "937db7f7-c487-4412-8146-dc053555d57d" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210987-701e-0097-39d3-902db3000000", - "Body" : "jtfsfilesystemsaspermissiontostringjtfsfilesystemsaspermissiontostring07531143d7512b0f1Fri, 01 Nov 2019 16:40:01 GMT\"0x8D75EEA2442AD3C\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:01 GMT", - "x-ms-client-request-id" : "427be6f2-945a-4d51-ad4d-a3684d7a8d5d", + "x-ms-request-id" : "1d9a582c-e01e-0092-290f-aad9cc000000", + "Body" : "jtfsfilesystemsaspermissiontostringjtfsfilesystemsaspermissiontostring01386059adaaa839eTue, 03 Dec 2019 19:23:43 GMT\"0x8D778264F70157E\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:43 GMT", + "x-ms-client-request-id" : "937db7f7-c487-4412-8146-dc053555d57d", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring07531143d7512b0f1?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring01386059adaaa839e?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "b68416cd-b0d8-4069-99d1-41caeb10d67a" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "33dad7be-0de4-492e-ab5f-f3be5c4a8ffd" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b52109a0-701e-0097-4ed3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:01 GMT", - "x-ms-client-request-id" : "b68416cd-b0d8-4069-99d1-41caeb10d67a" + "x-ms-request-id" : "1d9a583a-e01e-0092-350f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:43 GMT", + "x-ms-client-request-id" : "33dad7be-0de4-492e-ab5f-f3be5c4a8ffd" }, "Exception" : null } ], - "variables" : [ "jtfsfilesystemsaspermissiontostring07531143d7512b0f1" ] + "variables" : [ "jtfsfilesystemsaspermissiontostring01386059adaaa839e", "javapathfilesystemsaspermissiontostring130676ec91be606" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[1].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[1].json index a2fe8aa81d7a..e5e94823088b 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[1].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[1].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring0784696a8aeb5e2ef?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring02199496bf36039c1?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "43f755b2-e508-4ce3-80af-1985dbaa3dc2" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "75cd9cd4-805a-4a74-8358-1f3ba498359a" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA246B2416", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:02 GMT", + "ETag" : "0x8D778264FB5DD89", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:43 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b52109bb-701e-0097-66d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:01 GMT", - "x-ms-client-request-id" : "43f755b2-e508-4ce3-80af-1985dbaa3dc2" + "x-ms-request-id" : "1d9a584e-e01e-0092-460f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:43 GMT", + "x-ms-client-request-id" : "75cd9cd4-805a-4a74-8358-1f3ba498359a" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissiontostring02199496bf36039c1/javapathfilesystemsaspermissiontostring194832c5e5d9037?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "3d5784fa-d3e7-4fd7-b5df-5a36f61a2ec8" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264FC325F8", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:43 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9dd4-101f-004b-130f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:43 GMT", + "x-ms-client-request-id" : "3d5784fa-d3e7-4fd7-b5df-5a36f61a2ec8" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissiontostring02199496bf36039c1/javapathfilesystemsaspermissiontostring194832c5e5d9037?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "21226c24-a84a-4f67-a7f1-3eeca0a80caf", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9dd7-101f-004b-160f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:43 GMT", + "x-ms-client-request-id" : "21226c24-a84a-4f67-a7f1-3eeca0a80caf" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissiontostring02199496bf36039c1/javapathfilesystemsaspermissiontostring194832c5e5d9037?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ef824d44-fc10-4f69-9142-5e0317099b10" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264FD4D46E", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:43 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9dd8-101f-004b-170f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:43 GMT", + "x-ms-client-request-id" : "ef824d44-fc10-4f69-9142-5e0317099b10" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsfilesystemsaspermissiontostring&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "865c4ede-8193-48e6-92b9-f276037688d1" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "299681e2-1bb3-40a6-86fa-bc803b60c716" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b52109d7-701e-0097-7ed3-902db3000000", - "Body" : "jtfsfilesystemsaspermissiontostringjtfsfilesystemsaspermissiontostring0784696a8aeb5e2efFri, 01 Nov 2019 16:40:02 GMT\"0x8D75EEA246B2416\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:01 GMT", - "x-ms-client-request-id" : "865c4ede-8193-48e6-92b9-f276037688d1", + "x-ms-request-id" : "1d9a588a-e01e-0092-7b0f-aad9cc000000", + "Body" : "jtfsfilesystemsaspermissiontostringjtfsfilesystemsaspermissiontostring02199496bf36039c1Tue, 03 Dec 2019 19:23:43 GMT\"0x8D778264FB5DD89\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:43 GMT", + "x-ms-client-request-id" : "299681e2-1bb3-40a6-86fa-bc803b60c716", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring0784696a8aeb5e2ef?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring02199496bf36039c1?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "20281d1c-081b-4a5b-bb32-c9e971567054" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "0da16b61-4662-42f9-9801-e83dfa03a6cb" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b52109e7-701e-0097-0bd3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:01 GMT", - "x-ms-client-request-id" : "20281d1c-081b-4a5b-bb32-c9e971567054" + "x-ms-request-id" : "1d9a58b1-e01e-0092-200f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:43 GMT", + "x-ms-client-request-id" : "0da16b61-4662-42f9-9801-e83dfa03a6cb" }, "Exception" : null } ], - "variables" : [ "jtfsfilesystemsaspermissiontostring0784696a8aeb5e2ef" ] + "variables" : [ "jtfsfilesystemsaspermissiontostring02199496bf36039c1", "javapathfilesystemsaspermissiontostring194832c5e5d9037" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[2].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[2].json index 44b07b36cee6..dee19cc4c34d 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[2].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[2].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring025082995c23cb12d?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring031927cdda3dadb49?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "6713cc76-0297-4814-93d2-75558dea9c94" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "0c9d0293-a7e2-42b1-a741-e6c872a69670" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA24884E46", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:02 GMT", + "ETag" : "0x8D778264FEDE784", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:44 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210a12-701e-0097-31d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:02 GMT", - "x-ms-client-request-id" : "6713cc76-0297-4814-93d2-75558dea9c94" + "x-ms-request-id" : "1d9a58cf-e01e-0092-390f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:44 GMT", + "x-ms-client-request-id" : "0c9d0293-a7e2-42b1-a741-e6c872a69670" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissiontostring031927cdda3dadb49/javapathfilesystemsaspermissiontostring145725d2cf1f9c4?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "5a74adcd-d8c4-4344-b4a2-9f1821190a8c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264FF9F5D9", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:44 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9dd9-101f-004b-180f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:44 GMT", + "x-ms-client-request-id" : "5a74adcd-d8c4-4344-b4a2-9f1821190a8c" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissiontostring031927cdda3dadb49/javapathfilesystemsaspermissiontostring145725d2cf1f9c4?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "251f912e-6621-4658-9788-879a67539973", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9dda-101f-004b-190f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:44 GMT", + "x-ms-client-request-id" : "251f912e-6621-4658-9788-879a67539973" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissiontostring031927cdda3dadb49/javapathfilesystemsaspermissiontostring145725d2cf1f9c4?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "9d0f5f09-7221-474e-a597-16fa85264ad5" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826500ACED9", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:44 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9ddb-101f-004b-1a0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:44 GMT", + "x-ms-client-request-id" : "9d0f5f09-7221-474e-a597-16fa85264ad5" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsfilesystemsaspermissiontostring&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "1ccda68d-e52d-4c84-b2b7-92d552c862f9" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "45cabcfb-2f98-48d3-8e0a-1f0eb8bfe0b1" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210a2b-701e-0097-46d3-902db3000000", - "Body" : "jtfsfilesystemsaspermissiontostringjtfsfilesystemsaspermissiontostring025082995c23cb12dFri, 01 Nov 2019 16:40:02 GMT\"0x8D75EEA24884E46\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:02 GMT", - "x-ms-client-request-id" : "1ccda68d-e52d-4c84-b2b7-92d552c862f9", + "x-ms-request-id" : "1d9a5917-e01e-0092-750f-aad9cc000000", + "Body" : "jtfsfilesystemsaspermissiontostringjtfsfilesystemsaspermissiontostring031927cdda3dadb49Tue, 03 Dec 2019 19:23:44 GMT\"0x8D778264FEDE784\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:44 GMT", + "x-ms-client-request-id" : "45cabcfb-2f98-48d3-8e0a-1f0eb8bfe0b1", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring025082995c23cb12d?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring031927cdda3dadb49?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "d4de863b-593d-4d29-9f43-b168f4788056" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "de2b7ba3-e673-4558-bab4-3bfd545d86a2" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210a45-701e-0097-60d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:02 GMT", - "x-ms-client-request-id" : "d4de863b-593d-4d29-9f43-b168f4788056" + "x-ms-request-id" : "1d9a5920-e01e-0092-7d0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:44 GMT", + "x-ms-client-request-id" : "de2b7ba3-e673-4558-bab4-3bfd545d86a2" }, "Exception" : null } ], - "variables" : [ "jtfsfilesystemsaspermissiontostring025082995c23cb12d" ] + "variables" : [ "jtfsfilesystemsaspermissiontostring031927cdda3dadb49", "javapathfilesystemsaspermissiontostring145725d2cf1f9c4" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[3].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[3].json index 3818c4585607..300055ba5fd1 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[3].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[3].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring066934bef27715a4d?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring0256519610f7f5542?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "cc41f090-6f1b-47b6-b831-05489b134f08" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "15854cc6-fd49-4f66-aa42-c265358886c6" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA24A291BD", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:02 GMT", + "ETag" : "0x8D77826503472FE", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:44 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210a6d-701e-0097-04d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:02 GMT", - "x-ms-client-request-id" : "cc41f090-6f1b-47b6-b831-05489b134f08" + "x-ms-request-id" : "1d9a594a-e01e-0092-230f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:44 GMT", + "x-ms-client-request-id" : "15854cc6-fd49-4f66-aa42-c265358886c6" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissiontostring0256519610f7f5542/javapathfilesystemsaspermissiontostring1070868d68a64c5?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "40e346c7-22b4-49a1-a25b-70480d5ad750" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826503F0FD2", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:44 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9ddd-101f-004b-1c0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:44 GMT", + "x-ms-client-request-id" : "40e346c7-22b4-49a1-a25b-70480d5ad750" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissiontostring0256519610f7f5542/javapathfilesystemsaspermissiontostring1070868d68a64c5?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "5ce717df-c48f-4757-9435-248454c58ad2", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9dde-101f-004b-1d0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:44 GMT", + "x-ms-client-request-id" : "5ce717df-c48f-4757-9435-248454c58ad2" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissiontostring0256519610f7f5542/javapathfilesystemsaspermissiontostring1070868d68a64c5?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "aa2f719f-6617-417c-aef0-226d9c5f2b7e" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826504E8436", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:44 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9de0-101f-004b-1f0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:44 GMT", + "x-ms-client-request-id" : "aa2f719f-6617-417c-aef0-226d9c5f2b7e" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsfilesystemsaspermissiontostring&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "d598f77f-403c-4ced-8311-a48d01eace40" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ccdf5952-ad5a-41c7-8578-2a96b20bb916" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210abc-701e-0097-44d3-902db3000000", - "Body" : "jtfsfilesystemsaspermissiontostringjtfsfilesystemsaspermissiontostring066934bef27715a4dFri, 01 Nov 2019 16:40:02 GMT\"0x8D75EEA24A291BD\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:02 GMT", - "x-ms-client-request-id" : "d598f77f-403c-4ced-8311-a48d01eace40", + "x-ms-request-id" : "1d9a596c-e01e-0092-410f-aad9cc000000", + "Body" : "jtfsfilesystemsaspermissiontostringjtfsfilesystemsaspermissiontostring0256519610f7f5542Tue, 03 Dec 2019 19:23:44 GMT\"0x8D77826503472FE\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:44 GMT", + "x-ms-client-request-id" : "ccdf5952-ad5a-41c7-8578-2a96b20bb916", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring066934bef27715a4d?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring0256519610f7f5542?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "1a34ad4e-b291-4720-8633-867e8346ace3" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "377bc9db-540e-497f-a5c2-c55b1b93bf54" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210ad6-701e-0097-5bd3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:02 GMT", - "x-ms-client-request-id" : "1a34ad4e-b291-4720-8633-867e8346ace3" + "x-ms-request-id" : "1d9a5973-e01e-0092-470f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:44 GMT", + "x-ms-client-request-id" : "377bc9db-540e-497f-a5c2-c55b1b93bf54" }, "Exception" : null } ], - "variables" : [ "jtfsfilesystemsaspermissiontostring066934bef27715a4d" ] + "variables" : [ "jtfsfilesystemsaspermissiontostring0256519610f7f5542", "javapathfilesystemsaspermissiontostring1070868d68a64c5" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[4].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[4].json index c7b9401be405..64a9a5a2dbcb 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[4].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[4].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring0549119c2ba0a131e?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring04767791918a6d00d?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "4311c1f8-8877-442a-a578-f25f56b750ac" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "0eca37bc-da31-4058-8fa6-be106da1d02e" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA24CE1663", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:02 GMT", + "ETag" : "0x8D77826507186EB", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:44 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210af8-701e-0097-7bd3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:02 GMT", - "x-ms-client-request-id" : "4311c1f8-8877-442a-a578-f25f56b750ac" + "x-ms-request-id" : "1d9a599c-e01e-0092-680f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:44 GMT", + "x-ms-client-request-id" : "0eca37bc-da31-4058-8fa6-be106da1d02e" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissiontostring04767791918a6d00d/javapathfilesystemsaspermissiontostring178217f42460348?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "749d8752-3a21-42dc-a2e9-82371b9f3df9" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826507B772D", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:45 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9de3-101f-004b-220f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:45 GMT", + "x-ms-client-request-id" : "749d8752-3a21-42dc-a2e9-82371b9f3df9" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissiontostring04767791918a6d00d/javapathfilesystemsaspermissiontostring178217f42460348?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f27ed7ad-714e-41f1-8584-12a2486a4f5a", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9de4-101f-004b-230f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:45 GMT", + "x-ms-client-request-id" : "f27ed7ad-714e-41f1-8584-12a2486a4f5a" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissiontostring04767791918a6d00d/javapathfilesystemsaspermissiontostring178217f42460348?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "22c5c7cc-9b82-40b6-8f9c-4c49ea93e32c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826508BAEB8", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:45 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9de5-101f-004b-240f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:45 GMT", + "x-ms-client-request-id" : "22c5c7cc-9b82-40b6-8f9c-4c49ea93e32c" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsfilesystemsaspermissiontostring&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "04394b71-60f6-4b49-9004-c1f9f313c990" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "4487894b-75e7-4001-abf1-71dd920b9094" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210b14-701e-0097-14d3-902db3000000", - "Body" : "jtfsfilesystemsaspermissiontostringjtfsfilesystemsaspermissiontostring0549119c2ba0a131eFri, 01 Nov 2019 16:40:02 GMT\"0x8D75EEA24CE1663\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:02 GMT", - "x-ms-client-request-id" : "04394b71-60f6-4b49-9004-c1f9f313c990", + "x-ms-request-id" : "1d9a5a13-e01e-0092-530f-aad9cc000000", + "Body" : "jtfsfilesystemsaspermissiontostringjtfsfilesystemsaspermissiontostring04767791918a6d00dTue, 03 Dec 2019 19:23:44 GMT\"0x8D77826507186EB\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:45 GMT", + "x-ms-client-request-id" : "4487894b-75e7-4001-abf1-71dd920b9094", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring0549119c2ba0a131e?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring04767791918a6d00d?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "42ae4a8d-9e94-46c3-b86d-f728dbb13a59" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "3e2099c2-b166-457e-8695-456f8f9f5db7" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210b2d-701e-0097-28d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:02 GMT", - "x-ms-client-request-id" : "42ae4a8d-9e94-46c3-b86d-f728dbb13a59" + "x-ms-request-id" : "1d9a5a21-e01e-0092-600f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:45 GMT", + "x-ms-client-request-id" : "3e2099c2-b166-457e-8695-456f8f9f5db7" }, "Exception" : null } ], - "variables" : [ "jtfsfilesystemsaspermissiontostring0549119c2ba0a131e" ] + "variables" : [ "jtfsfilesystemsaspermissiontostring04767791918a6d00d", "javapathfilesystemsaspermissiontostring178217f42460348" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[5].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[5].json index 17262a1d7359..1b9492b9e5ff 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[5].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[5].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring04104239b95a5fca7?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring013384278db941a64?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "a7770abf-9ae9-4f6b-97db-ee13c82d3c2a" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b628d3ed-107f-4c39-913b-44b9d307c424" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA24E832C6", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:03 GMT", + "ETag" : "0x8D7782650A4FC33", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:45 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210b4c-701e-0097-43d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:02 GMT", - "x-ms-client-request-id" : "a7770abf-9ae9-4f6b-97db-ee13c82d3c2a" + "x-ms-request-id" : "1d9a5a35-e01e-0092-6c0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:45 GMT", + "x-ms-client-request-id" : "b628d3ed-107f-4c39-913b-44b9d307c424" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissiontostring013384278db941a64/javapathfilesystemsaspermissiontostring109252497eeb485?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f95eb42e-1b8e-4b26-8ad5-e9bd60f9fa62" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782650CFE52A", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:45 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9de7-101f-004b-260f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:45 GMT", + "x-ms-client-request-id" : "f95eb42e-1b8e-4b26-8ad5-e9bd60f9fa62" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissiontostring013384278db941a64/javapathfilesystemsaspermissiontostring109252497eeb485?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ebd37136-395b-4f12-b151-bb13c7ac297e", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9de8-101f-004b-270f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:45 GMT", + "x-ms-client-request-id" : "ebd37136-395b-4f12-b151-bb13c7ac297e" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissiontostring013384278db941a64/javapathfilesystemsaspermissiontostring109252497eeb485?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "dd87601c-ca02-4c9b-8f43-f808393d51e5" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782650E11051", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:45 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9de9-101f-004b-280f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:45 GMT", + "x-ms-client-request-id" : "dd87601c-ca02-4c9b-8f43-f808393d51e5" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsfilesystemsaspermissiontostring&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "e1e38dcb-aca7-4a4f-808d-561f649c57b1" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "9c79f355-1af6-4027-9eae-403dc7cc6df3" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210b7d-701e-0097-6ed3-902db3000000", - "Body" : "jtfsfilesystemsaspermissiontostringjtfsfilesystemsaspermissiontostring04104239b95a5fca7Fri, 01 Nov 2019 16:40:03 GMT\"0x8D75EEA24E832C6\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:02 GMT", - "x-ms-client-request-id" : "e1e38dcb-aca7-4a4f-808d-561f649c57b1", + "x-ms-request-id" : "1d9a5aef-e01e-0092-0f0f-aad9cc000000", + "Body" : "jtfsfilesystemsaspermissiontostringjtfsfilesystemsaspermissiontostring013384278db941a64Tue, 03 Dec 2019 19:23:45 GMT\"0x8D7782650A4FC33\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:45 GMT", + "x-ms-client-request-id" : "9c79f355-1af6-4027-9eae-403dc7cc6df3", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring04104239b95a5fca7?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring013384278db941a64?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "b25a6142-327c-4f52-b451-501fed6c372c" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "48c42b59-2de1-4c2d-89d7-3fdd5aee1f0b" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210b94-701e-0097-04d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:02 GMT", - "x-ms-client-request-id" : "b25a6142-327c-4f52-b451-501fed6c372c" + "x-ms-request-id" : "1d9a5b02-e01e-0092-1f0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:45 GMT", + "x-ms-client-request-id" : "48c42b59-2de1-4c2d-89d7-3fdd5aee1f0b" }, "Exception" : null } ], - "variables" : [ "jtfsfilesystemsaspermissiontostring04104239b95a5fca7" ] + "variables" : [ "jtfsfilesystemsaspermissiontostring013384278db941a64", "javapathfilesystemsaspermissiontostring109252497eeb485" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[6].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[6].json index 441a80fa5be4..2119d9c49c0d 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[6].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestfilesystemsaspermissiontostring[6].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring075424f8e11b21398?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring0887338943a986ac4?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "f5834a86-7793-4c98-ae57-ed97812c02e7" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "bec89994-4f12-4b90-8aac-4290ad4e1c88" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA2507F583", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:03 GMT", + "ETag" : "0x8D7782650FAF3BF", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:45 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210bcd-701e-0097-36d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:02 GMT", - "x-ms-client-request-id" : "f5834a86-7793-4c98-ae57-ed97812c02e7" + "x-ms-request-id" : "1d9a5b14-e01e-0092-2f0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:45 GMT", + "x-ms-client-request-id" : "bec89994-4f12-4b90-8aac-4290ad4e1c88" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissiontostring0887338943a986ac4/javapathfilesystemsaspermissiontostring109036294177a35?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "070b20c1-205b-4bc9-8538-3c23e6e24544" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826510AD3DB", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:45 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9deb-101f-004b-2a0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:45 GMT", + "x-ms-client-request-id" : "070b20c1-205b-4bc9-8538-3c23e6e24544" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissiontostring0887338943a986ac4/javapathfilesystemsaspermissiontostring109036294177a35?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "508204a0-9644-4158-9e88-6d4c8c0c8c73", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9dec-101f-004b-2b0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:46 GMT", + "x-ms-client-request-id" : "508204a0-9644-4158-9e88-6d4c8c0c8c73" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsfilesystemsaspermissiontostring0887338943a986ac4/javapathfilesystemsaspermissiontostring109036294177a35?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "9086ef9b-1083-4647-a257-43dbd9d5265c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826511D7172", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:46 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9ded-101f-004b-2c0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:46 GMT", + "x-ms-client-request-id" : "9086ef9b-1083-4647-a257-43dbd9d5265c" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsfilesystemsaspermissiontostring&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "2050af5d-a6fb-4f82-9561-ba02cf81fd52" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d3b49a70-4210-4792-a2ef-8ac9fba9ad49" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210bf7-701e-0097-5dd3-902db3000000", - "Body" : "jtfsfilesystemsaspermissiontostringjtfsfilesystemsaspermissiontostring075424f8e11b21398Fri, 01 Nov 2019 16:40:03 GMT\"0x8D75EEA2507F583\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:02 GMT", - "x-ms-client-request-id" : "2050af5d-a6fb-4f82-9561-ba02cf81fd52", + "x-ms-request-id" : "1d9a5b73-e01e-0092-770f-aad9cc000000", + "Body" : "jtfsfilesystemsaspermissiontostringjtfsfilesystemsaspermissiontostring0887338943a986ac4Tue, 03 Dec 2019 19:23:45 GMT\"0x8D7782650FAF3BF\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:46 GMT", + "x-ms-client-request-id" : "d3b49a70-4210-4792-a2ef-8ac9fba9ad49", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring075424f8e11b21398?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsfilesystemsaspermissiontostring0887338943a986ac4?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "61c836f9-8746-4a3b-a801-fb8ca48a19a6" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "4e892e03-fe0a-4fb0-9758-dbfd28061448" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210c17-701e-0097-79d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:02 GMT", - "x-ms-client-request-id" : "61c836f9-8746-4a3b-a801-fb8ca48a19a6" + "x-ms-request-id" : "1d9a5b7e-e01e-0092-020f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:46 GMT", + "x-ms-client-request-id" : "4e892e03-fe0a-4fb0-9758-dbfd28061448" }, "Exception" : null } ], - "variables" : [ "jtfsfilesystemsaspermissiontostring075424f8e11b21398" ] + "variables" : [ "jtfsfilesystemsaspermissiontostring0887338943a986ac4", "javapathfilesystemsaspermissiontostring109036294177a35" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[0].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[0].json index 1d6c084356d2..2a69579571b3 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[0].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[0].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse055236cc7e9f053022426?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse0948052ddef0e51dbd4f0?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "4d9d4f70-7dc6-4b43-9817-112dfdb8aa6b" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "70eb5014-f1d5-432f-b610-5402aa6105c3" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA23632177", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:00 GMT", + "ETag" : "0x8D778264D8E2E0F", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:40 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b521069d-701e-0097-26d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:00 GMT", - "x-ms-client-request-id" : "4d9d4f70-7dc6-4b43-9817-112dfdb8aa6b" + "x-ms-request-id" : "1d9a5455-e01e-0092-660f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:40 GMT", + "x-ms-client-request-id" : "70eb5014-f1d5-432f-b610-5402aa6105c3" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparse0948052ddef0e51dbd4f0/javapathpathsaspermissionparse184843adf87d26bb5d4?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "c19a6de3-b753-4d1b-8916-2e71fe9d287e" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264DB2FDA8", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:40 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9db6-101f-004b-760f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:40 GMT", + "x-ms-client-request-id" : "c19a6de3-b753-4d1b-8916-2e71fe9d287e" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparse0948052ddef0e51dbd4f0/javapathpathsaspermissionparse184843adf87d26bb5d4?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "3b8fa8b3-c095-4ef7-876f-06b608114ce7", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9db8-101f-004b-770f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:40 GMT", + "x-ms-client-request-id" : "3b8fa8b3-c095-4ef7-876f-06b608114ce7" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparse0948052ddef0e51dbd4f0/javapathpathsaspermissionparse184843adf87d26bb5d4?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "1efee66b-5db7-4283-a89a-df013c7c7f59" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264DC36B93", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:40 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9db9-101f-004b-780f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:40 GMT", + "x-ms-client-request-id" : "1efee66b-5db7-4283-a89a-df013c7c7f59" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfspathsaspermissionparse&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "3836c180-516a-4339-ae9e-1811a87cf164" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d9becd21-2413-4f88-aeaa-62ae0a725861" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b52106c8-701e-0097-4dd3-902db3000000", - "Body" : "jtfspathsaspermissionparsejtfspathsaspermissionparse055236cc7e9f053022426Fri, 01 Nov 2019 16:40:00 GMT\"0x8D75EEA23632177\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:00 GMT", - "x-ms-client-request-id" : "3836c180-516a-4339-ae9e-1811a87cf164", + "x-ms-request-id" : "1d9a54c2-e01e-0092-410f-aad9cc000000", + "Body" : "jtfspathsaspermissionparsejtfspathsaspermissionparse0948052ddef0e51dbd4f0Tue, 03 Dec 2019 19:23:40 GMT\"0x8D778264D8E2E0F\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:40 GMT", + "x-ms-client-request-id" : "d9becd21-2413-4f88-aeaa-62ae0a725861", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse055236cc7e9f053022426?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse0948052ddef0e51dbd4f0?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "930a819d-487f-4d47-bacb-232bdf157718" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "59f7f521-88ed-4f05-8125-ff3326d42554" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b52106dc-701e-0097-5ed3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:00 GMT", - "x-ms-client-request-id" : "930a819d-487f-4d47-bacb-232bdf157718" + "x-ms-request-id" : "1d9a54cb-e01e-0092-4a0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:40 GMT", + "x-ms-client-request-id" : "59f7f521-88ed-4f05-8125-ff3326d42554" }, "Exception" : null } ], - "variables" : [ "jtfspathsaspermissionparse055236cc7e9f053022426" ] + "variables" : [ "jtfspathsaspermissionparse0948052ddef0e51dbd4f0", "javapathpathsaspermissionparse184843adf87d26bb5d4" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[1].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[1].json index 70d59d9ece8d..cda517db2430 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[1].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[1].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse060344a8744378fbc0403?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse08613386d4b431ad934e5?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "77c072ab-0f48-49fd-a12a-00f49183b185" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8eb0c727-50d0-4a2d-a282-5ad83dda4e5a" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA238555A0", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:00 GMT", + "ETag" : "0x8D778264DDCAA35", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:40 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b52106f5-701e-0097-71d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:00 GMT", - "x-ms-client-request-id" : "77c072ab-0f48-49fd-a12a-00f49183b185" + "x-ms-request-id" : "1d9a54de-e01e-0092-5d0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:40 GMT", + "x-ms-client-request-id" : "8eb0c727-50d0-4a2d-a282-5ad83dda4e5a" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparse08613386d4b431ad934e5/javapathpathsaspermissionparse10930213890d8ca7d24?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8680611a-cf70-447e-817f-4654443efd37" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264DE70E55", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:40 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9dba-101f-004b-790f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:40 GMT", + "x-ms-client-request-id" : "8680611a-cf70-447e-817f-4654443efd37" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparse08613386d4b431ad934e5/javapathpathsaspermissionparse10930213890d8ca7d24?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "a3a74110-0d54-4df7-a0a8-af7b214646ed", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9dbb-101f-004b-7a0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:40 GMT", + "x-ms-client-request-id" : "a3a74110-0d54-4df7-a0a8-af7b214646ed" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparse08613386d4b431ad934e5/javapathpathsaspermissionparse10930213890d8ca7d24?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "058b9b78-0770-4e2b-a461-b93910ef4a74" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264DF961C5", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:40 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9dbc-101f-004b-7b0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:40 GMT", + "x-ms-client-request-id" : "058b9b78-0770-4e2b-a461-b93910ef4a74" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfspathsaspermissionparse&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "99298d84-5735-415c-b553-c9246576369b" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b38c05f8-0006-4e32-a62e-9453b48806ed" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b521070a-701e-0097-03d3-902db3000000", - "Body" : "jtfspathsaspermissionparsejtfspathsaspermissionparse060344a8744378fbc0403Fri, 01 Nov 2019 16:40:00 GMT\"0x8D75EEA238555A0\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:00 GMT", - "x-ms-client-request-id" : "99298d84-5735-415c-b553-c9246576369b", + "x-ms-request-id" : "1d9a5523-e01e-0092-170f-aad9cc000000", + "Body" : "jtfspathsaspermissionparsejtfspathsaspermissionparse08613386d4b431ad934e5Tue, 03 Dec 2019 19:23:40 GMT\"0x8D778264DDCAA35\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:40 GMT", + "x-ms-client-request-id" : "b38c05f8-0006-4e32-a62e-9453b48806ed", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse060344a8744378fbc0403?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse08613386d4b431ad934e5?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "ba21ab9c-8bdc-4a02-8788-744ba774a675" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "19635448-47c6-4880-9c64-a88bd7fa2509" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210719-701e-0097-11d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:00 GMT", - "x-ms-client-request-id" : "ba21ab9c-8bdc-4a02-8788-744ba774a675" + "x-ms-request-id" : "1d9a552d-e01e-0092-1f0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:40 GMT", + "x-ms-client-request-id" : "19635448-47c6-4880-9c64-a88bd7fa2509" }, "Exception" : null } ], - "variables" : [ "jtfspathsaspermissionparse060344a8744378fbc0403" ] + "variables" : [ "jtfspathsaspermissionparse08613386d4b431ad934e5", "javapathpathsaspermissionparse10930213890d8ca7d24" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[2].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[2].json index a1167c4c6eec..c2672c33db99 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[2].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[2].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse000545eca66af2743e43d?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse01616093780a7df5214ec?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "db65a5a9-4e43-4d2c-9410-c23fa7962c67" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "02c14f9c-360e-4dcf-beb1-92ceff05c48c" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA239E394B", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:00 GMT", + "ETag" : "0x8D778264E117F4C", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:41 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210732-701e-0097-29d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:00 GMT", - "x-ms-client-request-id" : "db65a5a9-4e43-4d2c-9410-c23fa7962c67" + "x-ms-request-id" : "1d9a553c-e01e-0092-2a0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:40 GMT", + "x-ms-client-request-id" : "02c14f9c-360e-4dcf-beb1-92ceff05c48c" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparse01616093780a7df5214ec/javapathpathsaspermissionparse1937386be8e1be3f3d4?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "bfa7f12a-53ee-4c44-9000-1218714786eb" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264E1EBD69", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:41 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9dbd-101f-004b-7c0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:41 GMT", + "x-ms-client-request-id" : "bfa7f12a-53ee-4c44-9000-1218714786eb" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparse01616093780a7df5214ec/javapathpathsaspermissionparse1937386be8e1be3f3d4?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "033b70e6-85ae-4cd4-9878-0d9a8569cf1d", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9dbe-101f-004b-7d0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:41 GMT", + "x-ms-client-request-id" : "033b70e6-85ae-4cd4-9878-0d9a8569cf1d" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparse01616093780a7df5214ec/javapathpathsaspermissionparse1937386be8e1be3f3d4?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "29f5fd54-f903-42e5-970c-64d55533f450" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264E2EB660", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:41 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9dbf-101f-004b-7e0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:41 GMT", + "x-ms-client-request-id" : "29f5fd54-f903-42e5-970c-64d55533f450" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfspathsaspermissionparse&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "f4fbc234-f18e-4ba4-aaec-2ea700c56be4" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "71de831d-67f9-4356-82a6-dc116c0a90ea" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210751-701e-0097-45d3-902db3000000", - "Body" : "jtfspathsaspermissionparsejtfspathsaspermissionparse000545eca66af2743e43dFri, 01 Nov 2019 16:40:00 GMT\"0x8D75EEA239E394B\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:00 GMT", - "x-ms-client-request-id" : "f4fbc234-f18e-4ba4-aaec-2ea700c56be4", + "x-ms-request-id" : "1d9a557f-e01e-0092-630f-aad9cc000000", + "Body" : "jtfspathsaspermissionparsejtfspathsaspermissionparse01616093780a7df5214ecTue, 03 Dec 2019 19:23:41 GMT\"0x8D778264E117F4C\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:41 GMT", + "x-ms-client-request-id" : "71de831d-67f9-4356-82a6-dc116c0a90ea", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse000545eca66af2743e43d?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse01616093780a7df5214ec?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "de524333-8476-43ee-88b0-dce574dab9ef" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "2f2494af-237b-440a-9874-8d71617ceacb" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210768-701e-0097-5bd3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:00 GMT", - "x-ms-client-request-id" : "de524333-8476-43ee-88b0-dce574dab9ef" + "x-ms-request-id" : "1d9a558f-e01e-0092-6f0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:41 GMT", + "x-ms-client-request-id" : "2f2494af-237b-440a-9874-8d71617ceacb" }, "Exception" : null } ], - "variables" : [ "jtfspathsaspermissionparse000545eca66af2743e43d" ] + "variables" : [ "jtfspathsaspermissionparse01616093780a7df5214ec", "javapathpathsaspermissionparse1937386be8e1be3f3d4" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[3].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[3].json index 86537997305e..d084bb1932f9 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[3].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[3].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse00150332d6c9f05ff9445?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse050912cc38f435711d49f?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "1d7a60d5-9150-4b3b-8ae4-a90da0e4c9db" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "6f6cf649-1dd9-4476-9760-7a371e1dc881" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA23B71CF6", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:01 GMT", + "ETag" : "0x8D778264E49622B", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:41 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b521079d-701e-0097-0bd3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:00 GMT", - "x-ms-client-request-id" : "1d7a60d5-9150-4b3b-8ae4-a90da0e4c9db" + "x-ms-request-id" : "1d9a559a-e01e-0092-7a0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:41 GMT", + "x-ms-client-request-id" : "6f6cf649-1dd9-4476-9760-7a371e1dc881" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparse050912cc38f435711d49f/javapathpathsaspermissionparse133519cce000aef9a34?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "5ed85344-3ec7-48a2-879d-137fb149a4b6" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264E5BA17D", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:41 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9dc0-101f-004b-7f0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:41 GMT", + "x-ms-client-request-id" : "5ed85344-3ec7-48a2-879d-137fb149a4b6" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparse050912cc38f435711d49f/javapathpathsaspermissionparse133519cce000aef9a34?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ff799b8f-baec-4a1c-bd0d-478d9e26bd37", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9dc1-101f-004b-800f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:41 GMT", + "x-ms-client-request-id" : "ff799b8f-baec-4a1c-bd0d-478d9e26bd37" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparse050912cc38f435711d49f/javapathpathsaspermissionparse133519cce000aef9a34?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e5e3f17b-2713-48ef-a69a-82c48e3e8453" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264E7088B1", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:41 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9dc2-101f-004b-010f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:41 GMT", + "x-ms-client-request-id" : "e5e3f17b-2713-48ef-a69a-82c48e3e8453" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfspathsaspermissionparse&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "66677d17-471d-4d89-b502-179dffa43413" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ab4b5215-8a2a-4b10-a6d3-80d8ae705939" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b52107b9-701e-0097-23d3-902db3000000", - "Body" : "jtfspathsaspermissionparsejtfspathsaspermissionparse00150332d6c9f05ff9445Fri, 01 Nov 2019 16:40:01 GMT\"0x8D75EEA23B71CF6\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:00 GMT", - "x-ms-client-request-id" : "66677d17-471d-4d89-b502-179dffa43413", + "x-ms-request-id" : "1d9a55d9-e01e-0092-330f-aad9cc000000", + "Body" : "jtfspathsaspermissionparsejtfspathsaspermissionparse050912cc38f435711d49fTue, 03 Dec 2019 19:23:41 GMT\"0x8D778264E49622B\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:41 GMT", + "x-ms-client-request-id" : "ab4b5215-8a2a-4b10-a6d3-80d8ae705939", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse00150332d6c9f05ff9445?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse050912cc38f435711d49f?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "721593c6-9db0-4c1a-9a88-292f35e99d8c" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "55172f59-84a8-4bff-9012-ee8dbfb9380b" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b52107c8-701e-0097-31d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:00 GMT", - "x-ms-client-request-id" : "721593c6-9db0-4c1a-9a88-292f35e99d8c" + "x-ms-request-id" : "1d9a55ef-e01e-0092-430f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:41 GMT", + "x-ms-client-request-id" : "55172f59-84a8-4bff-9012-ee8dbfb9380b" }, "Exception" : null } ], - "variables" : [ "jtfspathsaspermissionparse00150332d6c9f05ff9445" ] + "variables" : [ "jtfspathsaspermissionparse050912cc38f435711d49f", "javapathpathsaspermissionparse133519cce000aef9a34" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[4].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[4].json index 17d608728a92..b05f826ee4e3 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[4].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[4].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse0267494fc6e214e1bf449?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse0514172c3f5e0ad48d405?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "9bc9b06b-0c51-4872-83e4-e3adfd18ae70" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "3524a7d1-995d-4149-8eb2-ebabd02b2e5c" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA23D04ED0", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:01 GMT", + "ETag" : "0x8D778264E88E784", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:41 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b52107e3-701e-0097-4ad3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:00 GMT", - "x-ms-client-request-id" : "9bc9b06b-0c51-4872-83e4-e3adfd18ae70" + "x-ms-request-id" : "1d9a55f7-e01e-0092-4a0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:41 GMT", + "x-ms-client-request-id" : "3524a7d1-995d-4149-8eb2-ebabd02b2e5c" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparse0514172c3f5e0ad48d405/javapathpathsaspermissionparse155307eb38b937c89e4?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "5d41976c-e2a9-4a69-97eb-552d3711248d" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264E97D9F4", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:41 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9dc4-101f-004b-030f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:41 GMT", + "x-ms-client-request-id" : "5d41976c-e2a9-4a69-97eb-552d3711248d" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparse0514172c3f5e0ad48d405/javapathpathsaspermissionparse155307eb38b937c89e4?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "594331d5-c9be-409f-b5b4-e41f6181aebb", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9dc6-101f-004b-050f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:41 GMT", + "x-ms-client-request-id" : "594331d5-c9be-409f-b5b4-e41f6181aebb" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparse0514172c3f5e0ad48d405/javapathpathsaspermissionparse155307eb38b937c89e4?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "3504362b-320f-4cb4-9107-f0c7d89370c3" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264EB0B5F9", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:42 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9dc7-101f-004b-060f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:42 GMT", + "x-ms-client-request-id" : "3504362b-320f-4cb4-9107-f0c7d89370c3" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfspathsaspermissionparse&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "86f4035c-5f6d-4800-b2dd-7dd8d21efd12" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "875d4b95-dea4-4bf1-a863-94735da01372" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b52107fe-701e-0097-62d3-902db3000000", - "Body" : "jtfspathsaspermissionparsejtfspathsaspermissionparse0267494fc6e214e1bf449Fri, 01 Nov 2019 16:40:01 GMT\"0x8D75EEA23D04ED0\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:00 GMT", - "x-ms-client-request-id" : "86f4035c-5f6d-4800-b2dd-7dd8d21efd12", + "x-ms-request-id" : "1d9a5659-e01e-0092-1c0f-aad9cc000000", + "Body" : "jtfspathsaspermissionparsejtfspathsaspermissionparse0514172c3f5e0ad48d405Tue, 03 Dec 2019 19:23:41 GMT\"0x8D778264E88E784\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:42 GMT", + "x-ms-client-request-id" : "875d4b95-dea4-4bf1-a863-94735da01372", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse0267494fc6e214e1bf449?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse0514172c3f5e0ad48d405?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "ba0980f7-9ebf-41c9-82c9-54bdcbc5315e" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "5b60e62d-fd83-40dd-83a4-cc38704a2e8d" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b521081c-701e-0097-7bd3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:01 GMT", - "x-ms-client-request-id" : "ba0980f7-9ebf-41c9-82c9-54bdcbc5315e" + "x-ms-request-id" : "1d9a5674-e01e-0092-340f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:42 GMT", + "x-ms-client-request-id" : "5b60e62d-fd83-40dd-83a4-cc38704a2e8d" }, "Exception" : null } ], - "variables" : [ "jtfspathsaspermissionparse0267494fc6e214e1bf449" ] + "variables" : [ "jtfspathsaspermissionparse0514172c3f5e0ad48d405", "javapathpathsaspermissionparse155307eb38b937c89e4" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[5].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[5].json index 29cfef3c9d39..e777f8294498 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[5].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[5].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse000107017cedecc0bd476?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse0546886831c6d780c04d5?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "970b7438-7d8f-443e-81b7-11783a4279dd" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "9c56c9ce-8d71-4e44-ae25-6f9083cd7241" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA23F6F095", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:01 GMT", + "ETag" : "0x8D778264EC9A599", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:42 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b521085a-701e-0097-32d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:01 GMT", - "x-ms-client-request-id" : "970b7438-7d8f-443e-81b7-11783a4279dd" + "x-ms-request-id" : "1d9a5684-e01e-0092-440f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:42 GMT", + "x-ms-client-request-id" : "9c56c9ce-8d71-4e44-ae25-6f9083cd7241" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparse0546886831c6d780c04d5/javapathpathsaspermissionparse176095136c20e2def84?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "60b86554-ff63-4879-9028-8f9d948fe32e" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264ED6613B", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:42 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9dc8-101f-004b-070f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:42 GMT", + "x-ms-client-request-id" : "60b86554-ff63-4879-9028-8f9d948fe32e" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparse0546886831c6d780c04d5/javapathpathsaspermissionparse176095136c20e2def84?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d5ca2208-f0b9-466f-9edd-32f30a3acdd7", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9dc9-101f-004b-080f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:42 GMT", + "x-ms-client-request-id" : "d5ca2208-f0b9-466f-9edd-32f30a3acdd7" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparse0546886831c6d780c04d5/javapathpathsaspermissionparse176095136c20e2def84?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "68b164e0-f47d-4f0b-8540-12f34dd9fb83" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264EE64387", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:42 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9dca-101f-004b-090f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:42 GMT", + "x-ms-client-request-id" : "68b164e0-f47d-4f0b-8540-12f34dd9fb83" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfspathsaspermissionparse&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "9a636b29-2e65-422c-8b22-07f26b74b670" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "07ad52b2-b2c1-4c33-9c52-6a1188816760" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210875-701e-0097-4ad3-902db3000000", - "Body" : "jtfspathsaspermissionparsejtfspathsaspermissionparse000107017cedecc0bd476Fri, 01 Nov 2019 16:40:01 GMT\"0x8D75EEA23F6F095\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:01 GMT", - "x-ms-client-request-id" : "9a636b29-2e65-422c-8b22-07f26b74b670", + "x-ms-request-id" : "1d9a56d1-e01e-0092-070f-aad9cc000000", + "Body" : "jtfspathsaspermissionparsejtfspathsaspermissionparse0546886831c6d780c04d5Tue, 03 Dec 2019 19:23:42 GMT\"0x8D778264EC9A599\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:42 GMT", + "x-ms-client-request-id" : "07ad52b2-b2c1-4c33-9c52-6a1188816760", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse000107017cedecc0bd476?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse0546886831c6d780c04d5?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "0e60a63e-af52-4946-a7e6-5d08d383a09e" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8133d2ef-3913-4204-9f71-a6943f052c1a" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b521088e-701e-0097-60d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:01 GMT", - "x-ms-client-request-id" : "0e60a63e-af52-4946-a7e6-5d08d383a09e" + "x-ms-request-id" : "1d9a56d8-e01e-0092-0d0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:42 GMT", + "x-ms-client-request-id" : "8133d2ef-3913-4204-9f71-a6943f052c1a" }, "Exception" : null } ], - "variables" : [ "jtfspathsaspermissionparse000107017cedecc0bd476" ] + "variables" : [ "jtfspathsaspermissionparse0546886831c6d780c04d5", "javapathpathsaspermissionparse176095136c20e2def84" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[6].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[6].json index 596b3a36c1d0..f201254f0d69 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[6].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparse[6].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse033962133d8b2e382f464?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse034699a05d7d200f4e4fd?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "20b1d36a-ff50-4f2c-b481-e15186915259" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "1ec460ac-32be-440a-8baf-d23839675a82" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA240FFB53", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:01 GMT", + "ETag" : "0x8D778264EFE7AAC", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:42 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b52108a0-701e-0097-70d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:01 GMT", - "x-ms-client-request-id" : "20b1d36a-ff50-4f2c-b481-e15186915259" + "x-ms-request-id" : "1d9a56ea-e01e-0092-1b0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:42 GMT", + "x-ms-client-request-id" : "1ec460ac-32be-440a-8baf-d23839675a82" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparse034699a05d7d200f4e4fd/javapathpathsaspermissionparse144145abf36786b4954?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "35468b81-49ce-40cc-88f6-89fe8600adb1" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264F0EDC2E", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:42 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9dcb-101f-004b-0a0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:42 GMT", + "x-ms-client-request-id" : "35468b81-49ce-40cc-88f6-89fe8600adb1" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparse034699a05d7d200f4e4fd/javapathpathsaspermissionparse144145abf36786b4954?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "54a32eb5-8890-4ba6-b74b-b7b15a56a190", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9dcc-101f-004b-0b0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:42 GMT", + "x-ms-client-request-id" : "54a32eb5-8890-4ba6-b74b-b7b15a56a190" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparse034699a05d7d200f4e4fd/javapathpathsaspermissionparse144145abf36786b4954?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "88e6f664-65e8-4be3-a3bc-44fff4b5263a" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264F1F50E9", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:42 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9dcd-101f-004b-0c0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:42 GMT", + "x-ms-client-request-id" : "88e6f664-65e8-4be3-a3bc-44fff4b5263a" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfspathsaspermissionparse&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "7e9e6187-1199-4a98-91a8-e09ec56a48a4" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "614da981-25e1-46d8-b628-fdbe1908d5de" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b52108c9-701e-0097-11d3-902db3000000", - "Body" : "jtfspathsaspermissionparsejtfspathsaspermissionparse033962133d8b2e382f464Fri, 01 Nov 2019 16:40:01 GMT\"0x8D75EEA240FFB53\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:01 GMT", - "x-ms-client-request-id" : "7e9e6187-1199-4a98-91a8-e09ec56a48a4", + "x-ms-request-id" : "1d9a5747-e01e-0092-650f-aad9cc000000", + "Body" : "jtfspathsaspermissionparsejtfspathsaspermissionparse034699a05d7d200f4e4fdTue, 03 Dec 2019 19:23:42 GMT\"0x8D778264EFE7AAC\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:42 GMT", + "x-ms-client-request-id" : "614da981-25e1-46d8-b628-fdbe1908d5de", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse033962133d8b2e382f464?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparse034699a05d7d200f4e4fd?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "8dc81d1c-8ad6-450b-ad33-76c118c34e18" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "c2e90dcd-9eab-470e-aa7b-f11f53d86a73" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b52108e0-701e-0097-27d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:01 GMT", - "x-ms-client-request-id" : "8dc81d1c-8ad6-450b-ad33-76c118c34e18" + "x-ms-request-id" : "1d9a575a-e01e-0092-760f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:42 GMT", + "x-ms-client-request-id" : "c2e90dcd-9eab-470e-aa7b-f11f53d86a73" }, "Exception" : null } ], - "variables" : [ "jtfspathsaspermissionparse033962133d8b2e382f464" ] + "variables" : [ "jtfspathsaspermissionparse034699a05d7d200f4e4fd", "javapathpathsaspermissionparse144145abf36786b4954" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparseia.json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparseia.json index 1db03c2ddd6b..86011b13c51e 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparseia.json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissionparseia.json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparseia007554c30c4eb2282e4e?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparseia049059a3e1562dc6c14e?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "9b203474-8913-4ada-81d9-7d0c8eb59c31" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e420902e-68e4-4ea0-8299-8e732862459c" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA2428B7EB", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:01 GMT", + "ETag" : "0x8D778264F394440", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:42 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210903-701e-0097-48d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:01 GMT", - "x-ms-client-request-id" : "9b203474-8913-4ada-81d9-7d0c8eb59c31" + "x-ms-request-id" : "1d9a5770-e01e-0092-090f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:42 GMT", + "x-ms-client-request-id" : "e420902e-68e4-4ea0-8299-8e732862459c" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparseia049059a3e1562dc6c14e/javapathpathsaspermissionparseia167978f596a2b3e99e?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "2d4da678-0c87-4b87-a2a9-4d6bd834438a" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264F448EA9", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:43 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9dce-101f-004b-0d0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:43 GMT", + "x-ms-client-request-id" : "2d4da678-0c87-4b87-a2a9-4d6bd834438a" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparseia049059a3e1562dc6c14e/javapathpathsaspermissionparseia167978f596a2b3e99e?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "1fc78e46-2c9d-4967-813c-10f31c512eb0", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9dcf-101f-004b-0e0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:43 GMT", + "x-ms-client-request-id" : "1fc78e46-2c9d-4967-813c-10f31c512eb0" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissionparseia049059a3e1562dc6c14e/javapathpathsaspermissionparseia167978f596a2b3e99e?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "22bc62b3-c0f2-489a-9d94-913c04868c93" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264F57E93D", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:43 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9dd0-101f-004b-0f0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:43 GMT", + "x-ms-client-request-id" : "22bc62b3-c0f2-489a-9d94-913c04868c93" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfspathsaspermissionparseia&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "e8ca6d0d-f128-4959-a258-33084be0c26f" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "81e531b1-a9cb-4177-8ec6-ef3ac86ed4b6" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210928-701e-0097-66d3-902db3000000", - "Body" : "jtfspathsaspermissionparseiajtfspathsaspermissionparseia007554c30c4eb2282e4eFri, 01 Nov 2019 16:40:01 GMT\"0x8D75EEA2428B7EB\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:40:01 GMT", - "x-ms-client-request-id" : "e8ca6d0d-f128-4959-a258-33084be0c26f", + "x-ms-request-id" : "1d9a57bf-e01e-0092-4e0f-aad9cc000000", + "Body" : "jtfspathsaspermissionparseiajtfspathsaspermissionparseia049059a3e1562dc6c14eTue, 03 Dec 2019 19:23:42 GMT\"0x8D778264F394440\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:43 GMT", + "x-ms-client-request-id" : "81e531b1-a9cb-4177-8ec6-ef3ac86ed4b6", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparseia007554c30c4eb2282e4e?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissionparseia049059a3e1562dc6c14e?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "47595369-449f-4bec-ac07-049d8af75989" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "75bb59e1-eec2-4ca0-a41c-f88223d1cf56" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210937-701e-0097-75d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:01 GMT", - "x-ms-client-request-id" : "47595369-449f-4bec-ac07-049d8af75989" + "x-ms-request-id" : "1d9a57d3-e01e-0092-610f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:43 GMT", + "x-ms-client-request-id" : "75bb59e1-eec2-4ca0-a41c-f88223d1cf56" }, "Exception" : null } ], - "variables" : [ "jtfspathsaspermissionparseia007554c30c4eb2282e4e" ] + "variables" : [ "jtfspathsaspermissionparseia049059a3e1562dc6c14e", "javapathpathsaspermissionparseia167978f596a2b3e99e" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[0].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[0].json index 7ca2e4f38e5a..7175b299cf75 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[0].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[0].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring01987059cf107cf7434e?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring072024d4173173a4c44a?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "949ca8d7-5462-41b9-81d3-c2ae1bd24e23" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "31f7dab8-5336-46e4-a2b5-00ffc9c20ac6" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA22BBEDEB", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:59 GMT", + "ETag" : "0x8D778264C2227F2", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:37 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b521046d-701e-0097-2bd3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:59 GMT", - "x-ms-client-request-id" : "949ca8d7-5462-41b9-81d3-c2ae1bd24e23" + "x-ms-request-id" : "1d9a5173-e01e-0092-620f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:37 GMT", + "x-ms-client-request-id" : "31f7dab8-5336-46e4-a2b5-00ffc9c20ac6" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissiontostring072024d4173173a4c44a/javapathpathsaspermissiontostring143051005876fa6cfc?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "9eced2e5-7bea-4873-838d-e1a69261ce5c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264C309FFF", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:37 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9d27-101f-004b-680f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:37 GMT", + "x-ms-client-request-id" : "9eced2e5-7bea-4873-838d-e1a69261ce5c" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissiontostring072024d4173173a4c44a/javapathpathsaspermissiontostring143051005876fa6cfc?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b9c8cc90-3d75-4ed2-b6f9-5d9acd3c5330", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9d2d-101f-004b-6e0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:37 GMT", + "x-ms-client-request-id" : "b9c8cc90-3d75-4ed2-b6f9-5d9acd3c5330" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissiontostring072024d4173173a4c44a/javapathpathsaspermissiontostring143051005876fa6cfc?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "c60c6db5-9ab5-4d6b-b5c5-90215ac386bb" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264C41904C", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:37 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9d38-101f-004b-790f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:37 GMT", + "x-ms-client-request-id" : "c60c6db5-9ab5-4d6b-b5c5-90215ac386bb" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfspathsaspermissiontostring&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "e59ac04d-d765-4f7e-b902-970fce2da38f" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "1c7dda1c-3533-4188-9835-214e6bd54938" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b52104c0-701e-0097-76d3-902db3000000", - "Body" : "jtfspathsaspermissiontostringjtfspathsaspermissiontostring01987059cf107cf7434eFri, 01 Nov 2019 16:39:59 GMT\"0x8D75EEA22BBEDEB\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:59 GMT", - "x-ms-client-request-id" : "e59ac04d-d765-4f7e-b902-970fce2da38f", + "x-ms-request-id" : "1d9a51dd-e01e-0092-410f-aad9cc000000", + "Body" : "jtfspathsaspermissiontostringjtfspathsaspermissiontostring072024d4173173a4c44aTue, 03 Dec 2019 19:23:37 GMT\"0x8D778264C2227F2\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:37 GMT", + "x-ms-client-request-id" : "1c7dda1c-3533-4188-9835-214e6bd54938", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring01987059cf107cf7434e?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring072024d4173173a4c44a?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "be4d7073-39c6-44b0-a519-e6edeebbf4f9" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "4eeca0a9-f07a-4f8f-b63b-7f367abb4f0d" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b52104e2-701e-0097-15d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:59 GMT", - "x-ms-client-request-id" : "be4d7073-39c6-44b0-a519-e6edeebbf4f9" + "x-ms-request-id" : "1d9a51f5-e01e-0092-570f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:38 GMT", + "x-ms-client-request-id" : "4eeca0a9-f07a-4f8f-b63b-7f367abb4f0d" }, "Exception" : null } ], - "variables" : [ "jtfspathsaspermissiontostring01987059cf107cf7434e" ] + "variables" : [ "jtfspathsaspermissiontostring072024d4173173a4c44a", "javapathpathsaspermissiontostring143051005876fa6cfc" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[1].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[1].json index 1e0de213fd64..6ad0059bd447 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[1].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[1].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring0361931d6e1dfb4e6b4b?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring03589768f34951866a4d?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "c4736af9-8a30-4f12-9103-e47209e88cde" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "296daa4a-c287-4f06-8a61-d83c427e0453" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA22E0E1B2", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:59 GMT", + "ETag" : "0x8D778264C5D1899", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:38 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b52104f6-701e-0097-29d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:59 GMT", - "x-ms-client-request-id" : "c4736af9-8a30-4f12-9103-e47209e88cde" + "x-ms-request-id" : "1d9a5216-e01e-0092-710f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:38 GMT", + "x-ms-client-request-id" : "296daa4a-c287-4f06-8a61-d83c427e0453" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissiontostring03589768f34951866a4d/javapathpathsaspermissiontostring135218d0959f0c218c?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "73c0fda5-af24-4baa-a4b6-5819330042f8" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264C7C63AD", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:38 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9d51-101f-004b-120f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:38 GMT", + "x-ms-client-request-id" : "73c0fda5-af24-4baa-a4b6-5819330042f8" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissiontostring03589768f34951866a4d/javapathpathsaspermissiontostring135218d0959f0c218c?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ab0a23e5-9d44-422a-91c6-5ce2edb2cb17", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9d63-101f-004b-240f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:38 GMT", + "x-ms-client-request-id" : "ab0a23e5-9d44-422a-91c6-5ce2edb2cb17" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissiontostring03589768f34951866a4d/javapathpathsaspermissiontostring135218d0959f0c218c?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "0c8587fa-84e0-449c-a737-5ee25ace2fd8" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264C8D6FED", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:38 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9d6c-101f-004b-2d0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:38 GMT", + "x-ms-client-request-id" : "0c8587fa-84e0-449c-a737-5ee25ace2fd8" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfspathsaspermissiontostring&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "8f03d0e8-6465-4924-9780-36a68cfd42f0" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f461480e-6864-45e6-b5ca-a84b651c37af" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210517-701e-0097-44d3-902db3000000", - "Body" : "jtfspathsaspermissiontostringjtfspathsaspermissiontostring0361931d6e1dfb4e6b4bFri, 01 Nov 2019 16:39:59 GMT\"0x8D75EEA22E0E1B2\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:59 GMT", - "x-ms-client-request-id" : "8f03d0e8-6465-4924-9780-36a68cfd42f0", + "x-ms-request-id" : "1d9a5269-e01e-0092-390f-aad9cc000000", + "Body" : "jtfspathsaspermissiontostringjtfspathsaspermissiontostring03589768f34951866a4dTue, 03 Dec 2019 19:23:38 GMT\"0x8D778264C5D1899\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:38 GMT", + "x-ms-client-request-id" : "f461480e-6864-45e6-b5ca-a84b651c37af", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring0361931d6e1dfb4e6b4b?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring03589768f34951866a4d?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "e7e81de1-6982-42f2-ac2c-7cc2d56ce64c" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "33d8a681-4b9a-404e-be18-06e78667f634" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210528-701e-0097-55d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:59 GMT", - "x-ms-client-request-id" : "e7e81de1-6982-42f2-ac2c-7cc2d56ce64c" + "x-ms-request-id" : "1d9a5274-e01e-0092-440f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:38 GMT", + "x-ms-client-request-id" : "33d8a681-4b9a-404e-be18-06e78667f634" }, "Exception" : null } ], - "variables" : [ "jtfspathsaspermissiontostring0361931d6e1dfb4e6b4b" ] + "variables" : [ "jtfspathsaspermissiontostring03589768f34951866a4d", "javapathpathsaspermissiontostring135218d0959f0c218c" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[2].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[2].json index 79d15f44136f..418c6d1ee66c 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[2].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[2].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring03475360eabfb015ce4d?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring036492992ee45eefbd40?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "cb6dbef8-4064-4137-83ed-588b53347494" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "9d1be064-deb2-4670-8223-f84e626de6a3" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA22FAAFE8", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:59 GMT", + "ETag" : "0x8D778264CA79C6D", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:38 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210547-701e-0097-73d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:59 GMT", - "x-ms-client-request-id" : "cb6dbef8-4064-4137-83ed-588b53347494" + "x-ms-request-id" : "1d9a5285-e01e-0092-530f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:38 GMT", + "x-ms-client-request-id" : "9d1be064-deb2-4670-8223-f84e626de6a3" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissiontostring036492992ee45eefbd40/javapathpathsaspermissiontostring106498069657eecdfb?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "aabaa652-8185-4023-bd66-be58658362c0" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264CB1EE86", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:38 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9d84-101f-004b-450f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:38 GMT", + "x-ms-client-request-id" : "aabaa652-8185-4023-bd66-be58658362c0" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissiontostring036492992ee45eefbd40/javapathpathsaspermissiontostring106498069657eecdfb?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "3446db9f-e549-4568-9361-0c5c4f3c33fc", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9d85-101f-004b-460f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:38 GMT", + "x-ms-client-request-id" : "3446db9f-e549-4568-9361-0c5c4f3c33fc" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissiontostring036492992ee45eefbd40/javapathpathsaspermissiontostring106498069657eecdfb?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b899671f-547e-4e27-8f08-1dc3ac672bdc" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264CC353FF", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:38 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9d8b-101f-004b-4c0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:38 GMT", + "x-ms-client-request-id" : "b899671f-547e-4e27-8f08-1dc3ac672bdc" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfspathsaspermissiontostring&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "aaa48a6b-a55d-4eee-9cee-406b0a1d8f46" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "49cc205e-e2d9-4017-88dc-674f6ff8cadb" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b521055f-701e-0097-08d3-902db3000000", - "Body" : "jtfspathsaspermissiontostringjtfspathsaspermissiontostring03475360eabfb015ce4dFri, 01 Nov 2019 16:39:59 GMT\"0x8D75EEA22FAAFE8\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:59 GMT", - "x-ms-client-request-id" : "aaa48a6b-a55d-4eee-9cee-406b0a1d8f46", + "x-ms-request-id" : "1d9a52b9-e01e-0092-7d0f-aad9cc000000", + "Body" : "jtfspathsaspermissiontostringjtfspathsaspermissiontostring036492992ee45eefbd40Tue, 03 Dec 2019 19:23:38 GMT\"0x8D778264CA79C6D\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:38 GMT", + "x-ms-client-request-id" : "49cc205e-e2d9-4017-88dc-674f6ff8cadb", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring03475360eabfb015ce4d?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring036492992ee45eefbd40?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "406ae038-1fdf-401b-85b3-480ffdd49628" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "4f98f4c2-d30e-4505-b22e-91e3feb8eb88" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210577-701e-0097-1dd3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:59 GMT", - "x-ms-client-request-id" : "406ae038-1fdf-401b-85b3-480ffdd49628" + "x-ms-request-id" : "1d9a52c4-e01e-0092-070f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:38 GMT", + "x-ms-client-request-id" : "4f98f4c2-d30e-4505-b22e-91e3feb8eb88" }, "Exception" : null } ], - "variables" : [ "jtfspathsaspermissiontostring03475360eabfb015ce4d" ] + "variables" : [ "jtfspathsaspermissiontostring036492992ee45eefbd40", "javapathpathsaspermissiontostring106498069657eecdfb" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[3].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[3].json index 69d39e2eb5ae..18a05f0a2860 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[3].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[3].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring055360238572107a7146?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring06114432ab9681dffa4b?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "6a0cb3b3-ea04-43c0-833f-e3d30dfc0781" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "c149b481-fcd5-476f-8630-9c0b63a19fb6" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA2315DDF1", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:00 GMT", + "ETag" : "0x8D778264CDCBFAE", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:38 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210591-701e-0097-35d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:59 GMT", - "x-ms-client-request-id" : "6a0cb3b3-ea04-43c0-833f-e3d30dfc0781" + "x-ms-request-id" : "1d9a52d6-e01e-0092-170f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:38 GMT", + "x-ms-client-request-id" : "c149b481-fcd5-476f-8630-9c0b63a19fb6" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissiontostring06114432ab9681dffa4b/javapathpathsaspermissiontostring113553ce06e15a2912?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "4c139e55-aed9-4ac6-ae93-f30357690d66" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264CEBD003", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:39 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9da0-101f-004b-610f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:39 GMT", + "x-ms-client-request-id" : "4c139e55-aed9-4ac6-ae93-f30357690d66" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissiontostring06114432ab9681dffa4b/javapathpathsaspermissiontostring113553ce06e15a2912?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ae648e28-d60a-4e9a-a26f-fc7e7a4438f4", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9da2-101f-004b-620f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:39 GMT", + "x-ms-client-request-id" : "ae648e28-d60a-4e9a-a26f-fc7e7a4438f4" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissiontostring06114432ab9681dffa4b/javapathpathsaspermissiontostring113553ce06e15a2912?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "0cc882a2-3eee-44ff-904c-f45d0bbcecc9" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264D02B83F", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:39 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9da5-101f-004b-650f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:39 GMT", + "x-ms-client-request-id" : "0cc882a2-3eee-44ff-904c-f45d0bbcecc9" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfspathsaspermissiontostring&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "45d1ccdc-eb4a-4c61-9d98-195ba3bb39cd" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "026d4900-38dc-46dc-a1c0-a8a3e5832248" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b52105ad-701e-0097-4bd3-902db3000000", - "Body" : "jtfspathsaspermissiontostringjtfspathsaspermissiontostring055360238572107a7146Fri, 01 Nov 2019 16:40:00 GMT\"0x8D75EEA2315DDF1\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:59 GMT", - "x-ms-client-request-id" : "45d1ccdc-eb4a-4c61-9d98-195ba3bb39cd", + "x-ms-request-id" : "1d9a532f-e01e-0092-5f0f-aad9cc000000", + "Body" : "jtfspathsaspermissiontostringjtfspathsaspermissiontostring06114432ab9681dffa4bTue, 03 Dec 2019 19:23:38 GMT\"0x8D778264CDCBFAE\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:39 GMT", + "x-ms-client-request-id" : "026d4900-38dc-46dc-a1c0-a8a3e5832248", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring055360238572107a7146?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring06114432ab9681dffa4b?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "f03f8783-2d22-4057-b588-563628446c6d" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e7fa64cb-e5f1-4d42-b6d0-ac3d1cbcf722" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b52105d0-701e-0097-6cd3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:59 GMT", - "x-ms-client-request-id" : "f03f8783-2d22-4057-b588-563628446c6d" + "x-ms-request-id" : "1d9a533c-e01e-0092-6a0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:39 GMT", + "x-ms-client-request-id" : "e7fa64cb-e5f1-4d42-b6d0-ac3d1cbcf722" }, "Exception" : null } ], - "variables" : [ "jtfspathsaspermissiontostring055360238572107a7146" ] + "variables" : [ "jtfspathsaspermissiontostring06114432ab9681dffa4b", "javapathpathsaspermissiontostring113553ce06e15a2912" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[4].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[4].json index 0fadaaede814..3561cc6a9926 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[4].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[4].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring035129e2363e87c66445?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring087872e1afa4000a464d?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "9b9d3e59-1875-4ce8-bd74-7cecc704fc2e" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "5f748999-8900-49bb-b311-bf419fba2dca" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA232F36E2", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:00 GMT", + "ETag" : "0x8D778264D1B5A81", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:39 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b52105fe-701e-0097-16d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:59 GMT", - "x-ms-client-request-id" : "9b9d3e59-1875-4ce8-bd74-7cecc704fc2e" + "x-ms-request-id" : "1d9a534c-e01e-0092-790f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:39 GMT", + "x-ms-client-request-id" : "5f748999-8900-49bb-b311-bf419fba2dca" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissiontostring087872e1afa4000a464d/javapathpathsaspermissiontostring1673988a8dfd946a88?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b2e9a7a6-4d15-4f02-ae97-9d77207303e0" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264D283BCC", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:39 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9db0-101f-004b-700f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:39 GMT", + "x-ms-client-request-id" : "b2e9a7a6-4d15-4f02-ae97-9d77207303e0" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissiontostring087872e1afa4000a464d/javapathpathsaspermissiontostring1673988a8dfd946a88?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "5977e892-3f7e-4de3-987a-f61605e3ef23", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9db1-101f-004b-710f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:39 GMT", + "x-ms-client-request-id" : "5977e892-3f7e-4de3-987a-f61605e3ef23" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissiontostring087872e1afa4000a464d/javapathpathsaspermissiontostring1673988a8dfd946a88?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "17b7b50b-f017-4eb8-bf0b-eafade9fc0ee" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264D394F90", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:39 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9db2-101f-004b-720f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:39 GMT", + "x-ms-client-request-id" : "17b7b50b-f017-4eb8-bf0b-eafade9fc0ee" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfspathsaspermissiontostring&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "1f2ec4f8-069e-44a5-a59f-40b5324ed4a8" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "871047f9-9a91-446e-824d-4cb75405a9ba" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b521061f-701e-0097-35d3-902db3000000", - "Body" : "jtfspathsaspermissiontostringjtfspathsaspermissiontostring035129e2363e87c66445Fri, 01 Nov 2019 16:40:00 GMT\"0x8D75EEA232F36E2\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:59 GMT", - "x-ms-client-request-id" : "1f2ec4f8-069e-44a5-a59f-40b5324ed4a8", + "x-ms-request-id" : "1d9a53ac-e01e-0092-4b0f-aad9cc000000", + "Body" : "jtfspathsaspermissiontostringjtfspathsaspermissiontostring087872e1afa4000a464dTue, 03 Dec 2019 19:23:39 GMT\"0x8D778264D1B5A81\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:39 GMT", + "x-ms-client-request-id" : "871047f9-9a91-446e-824d-4cb75405a9ba", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring035129e2363e87c66445?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring087872e1afa4000a464d?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "af72e9cf-0823-4d04-a417-6f2cfd1008e7" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "6886a143-5fcd-4c1e-be21-ef948aa649ca" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210635-701e-0097-48d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:59 GMT", - "x-ms-client-request-id" : "af72e9cf-0823-4d04-a417-6f2cfd1008e7" + "x-ms-request-id" : "1d9a53bf-e01e-0092-5c0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:39 GMT", + "x-ms-client-request-id" : "6886a143-5fcd-4c1e-be21-ef948aa649ca" }, "Exception" : null } ], - "variables" : [ "jtfspathsaspermissiontostring035129e2363e87c66445" ] + "variables" : [ "jtfspathsaspermissiontostring087872e1afa4000a464d", "javapathpathsaspermissiontostring1673988a8dfd946a88" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[5].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[5].json index eac1eacdf30c..2f547e3cd002 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[5].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestpathsaspermissiontostring[5].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring063559c0c50fbee59b43?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring068712a1dcf3142fdc41?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "d8e4e24a-7974-4b72-b6a3-ee346448a17f" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "5c9bc1b3-a234-48d0-932f-e2b8ec18c9b3" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA23488FCE", - "Last-Modified" : "Fri, 01 Nov 2019 16:40:00 GMT", + "ETag" : "0x8D778264D51DD91", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:39 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210653-701e-0097-61d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:59 GMT", - "x-ms-client-request-id" : "d8e4e24a-7974-4b72-b6a3-ee346448a17f" + "x-ms-request-id" : "1d9a53cf-e01e-0092-6b0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:39 GMT", + "x-ms-client-request-id" : "5c9bc1b3-a234-48d0-932f-e2b8ec18c9b3" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissiontostring068712a1dcf3142fdc41/javapathpathsaspermissiontostring16625940ac20b6e368?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "a028a993-d457-4e9f-ad6e-1390be6bfee5" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264D623775", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:39 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9db3-101f-004b-730f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:39 GMT", + "x-ms-client-request-id" : "a028a993-d457-4e9f-ad6e-1390be6bfee5" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissiontostring068712a1dcf3142fdc41/javapathpathsaspermissiontostring16625940ac20b6e368?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "3561c194-2268-43c5-8fb6-e8f85c8a38f2", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9db4-101f-004b-740f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:39 GMT", + "x-ms-client-request-id" : "3561c194-2268-43c5-8fb6-e8f85c8a38f2" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfspathsaspermissiontostring068712a1dcf3142fdc41/javapathpathsaspermissiontostring16625940ac20b6e368?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "2e3ca330-07f2-4763-8fb4-d91f670792b8" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264D75652A", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:39 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9db5-101f-004b-750f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:39 GMT", + "x-ms-client-request-id" : "2e3ca330-07f2-4763-8fb4-d91f670792b8" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfspathsaspermissiontostring&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "f1f24870-9327-484a-ab34-9e62ff2995aa" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "027ff9d5-7b36-4da6-970e-2379fe68d133" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210667-701e-0097-74d3-902db3000000", - "Body" : "jtfspathsaspermissiontostringjtfspathsaspermissiontostring063559c0c50fbee59b43Fri, 01 Nov 2019 16:40:00 GMT\"0x8D75EEA23488FCE\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:59 GMT", - "x-ms-client-request-id" : "f1f24870-9327-484a-ab34-9e62ff2995aa", + "x-ms-request-id" : "1d9a542a-e01e-0092-3f0f-aad9cc000000", + "Body" : "jtfspathsaspermissiontostringjtfspathsaspermissiontostring068712a1dcf3142fdc41Tue, 03 Dec 2019 19:23:39 GMT\"0x8D778264D51DD91\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:39 GMT", + "x-ms-client-request-id" : "027ff9d5-7b36-4da6-970e-2379fe68d133", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring063559c0c50fbee59b43?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfspathsaspermissiontostring068712a1dcf3142fdc41?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "e65367ca-9825-4a83-b1b7-babc34a3354f" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "98ee6e17-abc2-4704-908d-775aedcd573d" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210681-701e-0097-0dd3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:40:00 GMT", - "x-ms-client-request-id" : "e65367ca-9825-4a83-b1b7-babc34a3354f" + "x-ms-request-id" : "1d9a5442-e01e-0092-550f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:40 GMT", + "x-ms-client-request-id" : "98ee6e17-abc2-4704-908d-775aedcd573d" }, "Exception" : null } ], - "variables" : [ "jtfspathsaspermissiontostring063559c0c50fbee59b43" ] + "variables" : [ "jtfspathsaspermissiontostring068712a1dcf3142fdc41", "javapathpathsaspermissiontostring16625940ac20b6e368" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[0].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[0].json index 08887ce172fa..6ca15c393f0a 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[0].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[0].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign037827c6ad873202?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign0588771b3c61cd71?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "9a766442-4605-4ef5-9030-263c0d4d6567" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "1f138979-2c51-4f19-a21d-95d20c9929a2" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA200E5399", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:54 GMT", + "ETag" : "0x8D77826463DFD99", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:27 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520fbda-701e-0097-60d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:54 GMT", - "x-ms-client-request-id" : "9a766442-4605-4ef5-9030-263c0d4d6567" + "x-ms-request-id" : "1d9a47ee-e01e-0092-400f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:27 GMT", + "x-ms-client-request-id" : "1f138979-2c51-4f19-a21d-95d20c9929a2" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign0588771b3c61cd71/javapathservicesassignaturesstringtosign13912755752bc6?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "403fbacd-fa0c-477d-b3d6-d76a744faa49" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782646544D5D", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:28 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9ba3-101f-004b-6e0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:27 GMT", + "x-ms-client-request-id" : "403fbacd-fa0c-477d-b3d6-d76a744faa49" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign0588771b3c61cd71/javapathservicesassignaturesstringtosign13912755752bc6?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "0b31115a-f245-424e-a3a5-c0f5cabb36c9", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9bac-101f-004b-770f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:27 GMT", + "x-ms-client-request-id" : "0b31115a-f245-424e-a3a5-c0f5cabb36c9" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign0588771b3c61cd71/javapathservicesassignaturesstringtosign13912755752bc6?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f699a5a3-57cc-41a1-a1eb-3036d7cb31d2" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264665BC24", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:28 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9bb3-101f-004b-7e0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:27 GMT", + "x-ms-client-request-id" : "f699a5a3-57cc-41a1-a1eb-3036d7cb31d2" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturesstringtosign&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "df6f23dc-8871-4595-8764-f60edea986ba" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "dfd53c54-d260-4876-8e19-d5154a9d99f0" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520fbf4-701e-0097-78d2-902db3000000", - "Body" : "jtfsservicesassignaturesstringtosignjtfsservicesassignaturesstringtosign037827c6ad873202Fri, 01 Nov 2019 16:39:54 GMT\"0x8D75EEA200E5399\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:54 GMT", - "x-ms-client-request-id" : "df6f23dc-8871-4595-8764-f60edea986ba", + "x-ms-request-id" : "1d9a4877-e01e-0092-3a0f-aad9cc000000", + "Body" : "jtfsservicesassignaturesstringtosignjtfsservicesassignaturesstringtosign0588771b3c61cd71Tue, 03 Dec 2019 19:23:27 GMT\"0x8D77826463DFD99\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:28 GMT", + "x-ms-client-request-id" : "dfd53c54-d260-4876-8e19-d5154a9d99f0", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign037827c6ad873202?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign0588771b3c61cd71?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "ae53a5ce-c049-4e2a-9684-a3c87ad8ac0c" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "4e2cbfa1-aa21-4db2-8725-9284c4bffde1" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520fc02-701e-0097-06d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:54 GMT", - "x-ms-client-request-id" : "ae53a5ce-c049-4e2a-9684-a3c87ad8ac0c" + "x-ms-request-id" : "1d9a488f-e01e-0092-4c0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:28 GMT", + "x-ms-client-request-id" : "4e2cbfa1-aa21-4db2-8725-9284c4bffde1" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturesstringtosign037827c6ad873202" ] + "variables" : [ "jtfsservicesassignaturesstringtosign0588771b3c61cd71", "javapathservicesassignaturesstringtosign13912755752bc6" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[1].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[1].json index 901634d77390..0f0cf103ff43 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[1].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[1].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign082440a169003a2c?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign0958063b844bf635?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "89cd8bad-1663-4694-87e4-a2fd1ad5b421" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "9cd570a8-7019-4811-aeda-0ddd2d50ebe2" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA2027D3A1", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:55 GMT", + "ETag" : "0x8D7782646B9AC54", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:28 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520fc34-701e-0097-31d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:54 GMT", - "x-ms-client-request-id" : "89cd8bad-1663-4694-87e4-a2fd1ad5b421" + "x-ms-request-id" : "1d9a48a7-e01e-0092-600f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:28 GMT", + "x-ms-client-request-id" : "9cd570a8-7019-4811-aeda-0ddd2d50ebe2" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign0958063b844bf635/javapathservicesassignaturesstringtosign1289571552ea9c?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "871b236a-9efb-4345-b486-a180bdd8f806" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782646C582CC", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:28 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9c06-101f-004b-510f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:27 GMT", + "x-ms-client-request-id" : "871b236a-9efb-4345-b486-a180bdd8f806" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign0958063b844bf635/javapathservicesassignaturesstringtosign1289571552ea9c?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "973f54b9-1f42-4a93-bb9c-fef10dadad2f", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9c0a-101f-004b-550f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:27 GMT", + "x-ms-client-request-id" : "973f54b9-1f42-4a93-bb9c-fef10dadad2f" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign0958063b844bf635/javapathservicesassignaturesstringtosign1289571552ea9c?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f1d0b53c-98ed-466c-bf26-d882bebb26c0" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782646D6EC07", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:28 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9c0f-101f-004b-5a0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:27 GMT", + "x-ms-client-request-id" : "f1d0b53c-98ed-466c-bf26-d882bebb26c0" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturesstringtosign&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "edbe4d1e-6fd8-48bc-9233-0d5b4b0a9d66" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d60a95db-d09b-4ee6-8a2b-be451fca14ea" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520fc66-701e-0097-5fd2-902db3000000", - "Body" : "jtfsservicesassignaturesstringtosignjtfsservicesassignaturesstringtosign082440a169003a2cFri, 01 Nov 2019 16:39:55 GMT\"0x8D75EEA2027D3A1\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:54 GMT", - "x-ms-client-request-id" : "edbe4d1e-6fd8-48bc-9233-0d5b4b0a9d66", + "x-ms-request-id" : "1d9a48ea-e01e-0092-1f0f-aad9cc000000", + "Body" : "jtfsservicesassignaturesstringtosignjtfsservicesassignaturesstringtosign0958063b844bf635Tue, 03 Dec 2019 19:23:28 GMT\"0x8D7782646B9AC54\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:28 GMT", + "x-ms-client-request-id" : "d60a95db-d09b-4ee6-8a2b-be451fca14ea", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign082440a169003a2c?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign0958063b844bf635?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "08e20b6d-240b-45bc-ae79-dfce1c2a8be3" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "0fe94568-103e-4e5f-a170-888449fa2ba1" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520fc82-701e-0097-78d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:54 GMT", - "x-ms-client-request-id" : "08e20b6d-240b-45bc-ae79-dfce1c2a8be3" + "x-ms-request-id" : "1d9a48f8-e01e-0092-2b0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:28 GMT", + "x-ms-client-request-id" : "0fe94568-103e-4e5f-a170-888449fa2ba1" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturesstringtosign082440a169003a2c" ] + "variables" : [ "jtfsservicesassignaturesstringtosign0958063b844bf635", "javapathservicesassignaturesstringtosign1289571552ea9c" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[2].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[2].json index 4434fe2c164b..b884cff9c648 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[2].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[2].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign09857879a90d749a?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign04431678dd2a59f6?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "02eca14f-9bb1-4cb7-9c16-e0f3fed81ddf" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "3ae6cfbe-07cb-4ac4-8e43-4ba96a02de85" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA2041A1D6", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:55 GMT", + "ETag" : "0x8D7782646F1410A", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:29 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520fc9f-701e-0097-0fd2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:54 GMT", - "x-ms-client-request-id" : "02eca14f-9bb1-4cb7-9c16-e0f3fed81ddf" + "x-ms-request-id" : "1d9a490b-e01e-0092-3e0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:28 GMT", + "x-ms-client-request-id" : "3ae6cfbe-07cb-4ac4-8e43-4ba96a02de85" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign04431678dd2a59f6/javapathservicesassignaturesstringtosign149840800ddcf3?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "91ee8998-2c50-4f40-bade-0f51fca86d56" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782646FBA1AC", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:29 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9c2e-101f-004b-790f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:28 GMT", + "x-ms-client-request-id" : "91ee8998-2c50-4f40-bade-0f51fca86d56" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign04431678dd2a59f6/javapathservicesassignaturesstringtosign149840800ddcf3?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "fa798198-8ef6-4703-ab54-9214c83b9541", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9c32-101f-004b-7d0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:28 GMT", + "x-ms-client-request-id" : "fa798198-8ef6-4703-ab54-9214c83b9541" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign04431678dd2a59f6/javapathservicesassignaturesstringtosign149840800ddcf3?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "9c5be924-a2f4-4b31-abcf-dc5f67e46aa1" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264735D9C1", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:29 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9c3c-101f-004b-070f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:28 GMT", + "x-ms-client-request-id" : "9c5be924-a2f4-4b31-abcf-dc5f67e46aa1" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturesstringtosign&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "6278b47a-33a2-41b5-8c11-68d318d5ab8b" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "2dc60a4c-2a4b-473b-9c9d-4a8a11a501b2" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520fcbf-701e-0097-27d2-902db3000000", - "Body" : "jtfsservicesassignaturesstringtosignjtfsservicesassignaturesstringtosign09857879a90d749aFri, 01 Nov 2019 16:39:55 GMT\"0x8D75EEA2041A1D6\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:54 GMT", - "x-ms-client-request-id" : "6278b47a-33a2-41b5-8c11-68d318d5ab8b", + "x-ms-request-id" : "1d9a498f-e01e-0092-3a0f-aad9cc000000", + "Body" : "jtfsservicesassignaturesstringtosignjtfsservicesassignaturesstringtosign04431678dd2a59f6Tue, 03 Dec 2019 19:23:29 GMT\"0x8D7782646F1410A\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:29 GMT", + "x-ms-client-request-id" : "2dc60a4c-2a4b-473b-9c9d-4a8a11a501b2", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign09857879a90d749a?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign04431678dd2a59f6?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "06405352-7221-49f5-8d56-8087de3a40ae" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f82ea92f-c357-4c12-99e9-03c517fc9ecc" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520fcd5-701e-0097-3bd2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:54 GMT", - "x-ms-client-request-id" : "06405352-7221-49f5-8d56-8087de3a40ae" + "x-ms-request-id" : "1d9a499f-e01e-0092-460f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:29 GMT", + "x-ms-client-request-id" : "f82ea92f-c357-4c12-99e9-03c517fc9ecc" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturesstringtosign09857879a90d749a" ] + "variables" : [ "jtfsservicesassignaturesstringtosign04431678dd2a59f6", "javapathservicesassignaturesstringtosign149840800ddcf3" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[3].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[3].json index 931988cbf641..4981d800b1a9 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[3].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[3].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign0551741c282e4814?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign0594510984d1e6b0?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "77d4b315-4118-4ebc-b442-3a1e1fee8666" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e56ccb06-4405-4ae0-a52f-623a4bfacaa0" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA205DBA66", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:55 GMT", + "ETag" : "0x8D77826475DD1E5", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:29 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520fcf3-701e-0097-58d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:55 GMT", - "x-ms-client-request-id" : "77d4b315-4118-4ebc-b442-3a1e1fee8666" + "x-ms-request-id" : "1d9a49cc-e01e-0092-6f0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:29 GMT", + "x-ms-client-request-id" : "e56ccb06-4405-4ae0-a52f-623a4bfacaa0" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign0594510984d1e6b0/javapathservicesassignaturesstringtosign1952241a7c9ac3?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "47c37a8a-510a-4fc2-9b24-f3d3026c9fe8" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826477D87F6", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:29 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9c48-101f-004b-130f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:28 GMT", + "x-ms-client-request-id" : "47c37a8a-510a-4fc2-9b24-f3d3026c9fe8" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign0594510984d1e6b0/javapathservicesassignaturesstringtosign1952241a7c9ac3?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f305b3fe-b020-4b69-83ad-97ed0037255c", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9c4a-101f-004b-150f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:29 GMT", + "x-ms-client-request-id" : "f305b3fe-b020-4b69-83ad-97ed0037255c" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign0594510984d1e6b0/javapathservicesassignaturesstringtosign1952241a7c9ac3?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "0b786422-053f-49a4-bc38-8f9d29a6cf38" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826478F2145", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:30 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9c51-101f-004b-1c0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:29 GMT", + "x-ms-client-request-id" : "0b786422-053f-49a4-bc38-8f9d29a6cf38" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturesstringtosign&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "323687bb-1bd8-41de-95c3-35ac18c23702" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d5e71df9-1569-4ce6-975a-57a59bbda54f" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520fd07-701e-0097-6bd2-902db3000000", - "Body" : "jtfsservicesassignaturesstringtosignjtfsservicesassignaturesstringtosign0551741c282e4814Fri, 01 Nov 2019 16:39:55 GMT\"0x8D75EEA205DBA66\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:55 GMT", - "x-ms-client-request-id" : "323687bb-1bd8-41de-95c3-35ac18c23702", + "x-ms-request-id" : "1d9a4a35-e01e-0092-450f-aad9cc000000", + "Body" : "jtfsservicesassignaturesstringtosignjtfsservicesassignaturesstringtosign0594510984d1e6b0Tue, 03 Dec 2019 19:23:29 GMT\"0x8D77826475DD1E5\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:30 GMT", + "x-ms-client-request-id" : "d5e71df9-1569-4ce6-975a-57a59bbda54f", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign0551741c282e4814?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign0594510984d1e6b0?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "04fbb16e-a655-427b-be64-ff54d80e5d09" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d5ebd3e9-982a-449d-aea6-7de571680c8f" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520fd23-701e-0097-03d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:55 GMT", - "x-ms-client-request-id" : "04fbb16e-a655-427b-be64-ff54d80e5d09" + "x-ms-request-id" : "1d9a4a40-e01e-0092-4e0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:30 GMT", + "x-ms-client-request-id" : "d5ebd3e9-982a-449d-aea6-7de571680c8f" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturesstringtosign0551741c282e4814" ] + "variables" : [ "jtfsservicesassignaturesstringtosign0594510984d1e6b0", "javapathservicesassignaturesstringtosign1952241a7c9ac3" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[4].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[4].json index d42a5190d3d6..4884619497d6 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[4].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[4].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign09623930ff539c88?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign01135422653d8494?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "a8e7d5af-4d65-4104-a891-a1e520643906" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8eb87ce4-e69c-4293-92bc-97641f4ab261" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA2076EC43", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:55 GMT", + "ETag" : "0x8D7782647AB638A", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:30 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520fd51-701e-0097-2ed2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:55 GMT", - "x-ms-client-request-id" : "a8e7d5af-4d65-4104-a891-a1e520643906" + "x-ms-request-id" : "1d9a4a5b-e01e-0092-610f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:30 GMT", + "x-ms-client-request-id" : "8eb87ce4-e69c-4293-92bc-97641f4ab261" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign01135422653d8494/javapathservicesassignaturesstringtosign105005048ac777?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "740fbad9-96a6-4a98-93ec-0a8dba4145e6" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782647C20437", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:30 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9c52-101f-004b-1d0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:29 GMT", + "x-ms-client-request-id" : "740fbad9-96a6-4a98-93ec-0a8dba4145e6" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign01135422653d8494/javapathservicesassignaturesstringtosign105005048ac777?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "af8d7351-f284-4677-b498-5034bad3c559", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9c53-101f-004b-1e0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:29 GMT", + "x-ms-client-request-id" : "af8d7351-f284-4677-b498-5034bad3c559" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign01135422653d8494/javapathservicesassignaturesstringtosign105005048ac777?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b9976704-1da6-4385-a363-a15fcebb6398" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782647D99EC4", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:30 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9c54-101f-004b-1f0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:29 GMT", + "x-ms-client-request-id" : "b9976704-1da6-4385-a363-a15fcebb6398" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturesstringtosign&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "7af41148-77fa-4667-868f-e3401b457c1e" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e6e29944-9059-43c6-ad0e-94ad61ec5af3" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520fd6c-701e-0097-45d2-902db3000000", - "Body" : "jtfsservicesassignaturesstringtosignjtfsservicesassignaturesstringtosign09623930ff539c88Fri, 01 Nov 2019 16:39:55 GMT\"0x8D75EEA2076EC43\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:55 GMT", - "x-ms-client-request-id" : "7af41148-77fa-4667-868f-e3401b457c1e", + "x-ms-request-id" : "1d9a4aa5-e01e-0092-250f-aad9cc000000", + "Body" : "jtfsservicesassignaturesstringtosignjtfsservicesassignaturesstringtosign01135422653d8494Tue, 03 Dec 2019 19:23:30 GMT\"0x8D7782647AB638A\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:30 GMT", + "x-ms-client-request-id" : "e6e29944-9059-43c6-ad0e-94ad61ec5af3", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign09623930ff539c88?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign01135422653d8494?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "3c84bbd3-1723-45cd-96e8-eed7ef1bcec3" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "3ed4714b-dea1-42e5-9088-361278b4d9e7" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520fd7d-701e-0097-55d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:55 GMT", - "x-ms-client-request-id" : "3c84bbd3-1723-45cd-96e8-eed7ef1bcec3" + "x-ms-request-id" : "1d9a4ab3-e01e-0092-310f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:30 GMT", + "x-ms-client-request-id" : "3ed4714b-dea1-42e5-9088-361278b4d9e7" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturesstringtosign09623930ff539c88" ] + "variables" : [ "jtfsservicesassignaturesstringtosign01135422653d8494", "javapathservicesassignaturesstringtosign105005048ac777" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[5].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[5].json index c68c51c68a6d..76146a32d2b6 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[5].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[5].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign05255514cb7566bc?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign097730b17d74dfb3?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "23f561bf-87c1-4ff7-b597-659ea16087d8" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "4ff087b0-3a1c-4cd5-8f3d-07af3a03f8e3" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA2092415B", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:55 GMT", + "ETag" : "0x8D7782647F4AECD", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:30 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520fd9b-701e-0097-72d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:55 GMT", - "x-ms-client-request-id" : "23f561bf-87c1-4ff7-b597-659ea16087d8" + "x-ms-request-id" : "1d9a4ac1-e01e-0092-3e0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:30 GMT", + "x-ms-client-request-id" : "4ff087b0-3a1c-4cd5-8f3d-07af3a03f8e3" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign097730b17d74dfb3/javapathservicesassignaturesstringtosign16164029ded58d?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8f2e3cf9-68ef-478d-b60e-8fdc4e87b44b" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782648030079", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:30 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9c5d-101f-004b-280f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:29 GMT", + "x-ms-client-request-id" : "8f2e3cf9-68ef-478d-b60e-8fdc4e87b44b" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign097730b17d74dfb3/javapathservicesassignaturesstringtosign16164029ded58d?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "bc7eabf7-c145-4154-9b88-55c3ea325950", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9c67-101f-004b-320f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:29 GMT", + "x-ms-client-request-id" : "bc7eabf7-c145-4154-9b88-55c3ea325950" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign097730b17d74dfb3/javapathservicesassignaturesstringtosign16164029ded58d?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b614e415-9a7a-478a-b68f-471bb24373bf" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782648153CF6", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:30 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9c6a-101f-004b-350f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:29 GMT", + "x-ms-client-request-id" : "b614e415-9a7a-478a-b68f-471bb24373bf" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturesstringtosign&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "9d8b6be2-9399-40ce-afa5-f83e1ddcfeb9" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "4f7845ad-b112-4047-bea9-9b27bf8e49e8" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520fdac-701e-0097-02d2-902db3000000", - "Body" : "jtfsservicesassignaturesstringtosignjtfsservicesassignaturesstringtosign05255514cb7566bcFri, 01 Nov 2019 16:39:55 GMT\"0x8D75EEA2092415B\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:55 GMT", - "x-ms-client-request-id" : "9d8b6be2-9399-40ce-afa5-f83e1ddcfeb9", + "x-ms-request-id" : "1d9a4aff-e01e-0092-750f-aad9cc000000", + "Body" : "jtfsservicesassignaturesstringtosignjtfsservicesassignaturesstringtosign097730b17d74dfb3Tue, 03 Dec 2019 19:23:30 GMT\"0x8D7782647F4AECD\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:30 GMT", + "x-ms-client-request-id" : "4f7845ad-b112-4047-bea9-9b27bf8e49e8", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign05255514cb7566bc?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign097730b17d74dfb3?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "86f0f087-2ac5-4a2c-80d2-7358f0259e6b" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "1557575d-8ecf-4492-9571-e6afc35bd6b2" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520fdbd-701e-0097-13d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:55 GMT", - "x-ms-client-request-id" : "86f0f087-2ac5-4a2c-80d2-7358f0259e6b" + "x-ms-request-id" : "1d9a4b0f-e01e-0092-030f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:31 GMT", + "x-ms-client-request-id" : "1557575d-8ecf-4492-9571-e6afc35bd6b2" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturesstringtosign05255514cb7566bc" ] + "variables" : [ "jtfsservicesassignaturesstringtosign097730b17d74dfb3", "javapathservicesassignaturesstringtosign16164029ded58d" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[6].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[6].json index a69f00697b29..32ef24bd93c0 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[6].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[6].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign0739494315cea834?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign06507288fdce5236?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "30660ec8-5f34-46da-8a98-b92f38452d46" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "fcefe24b-2137-4ea6-85b8-ed46c7d91ea6" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA20AC5DBF", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:55 GMT", + "ETag" : "0x8D77826484463C8", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:31 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520fde3-701e-0097-39d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:55 GMT", - "x-ms-client-request-id" : "30660ec8-5f34-46da-8a98-b92f38452d46" + "x-ms-request-id" : "1d9a4b59-e01e-0092-400f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:31 GMT", + "x-ms-client-request-id" : "fcefe24b-2137-4ea6-85b8-ed46c7d91ea6" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign06507288fdce5236/javapathservicesassignaturesstringtosign10581120b7f330?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "aad10fe5-5c99-469d-bd55-13eaafca0520" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826484FB330", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:31 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9c79-101f-004b-440f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:30 GMT", + "x-ms-client-request-id" : "aad10fe5-5c99-469d-bd55-13eaafca0520" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign06507288fdce5236/javapathservicesassignaturesstringtosign10581120b7f330?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "75a3c162-5c3e-497e-9185-e95367d0d38a", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9c7f-101f-004b-4a0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:30 GMT", + "x-ms-client-request-id" : "75a3c162-5c3e-497e-9185-e95367d0d38a" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign06507288fdce5236/javapathservicesassignaturesstringtosign10581120b7f330?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8a046f8c-9aa0-46c3-988c-92836bdbdad6" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782648628E2F", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:31 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9c8c-101f-004b-570f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:30 GMT", + "x-ms-client-request-id" : "8a046f8c-9aa0-46c3-988c-92836bdbdad6" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturesstringtosign&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "f1de7970-cd25-4d75-9d14-43df2c3e6ea8" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d4306d14-ba7d-4060-859d-96c24b165c5b" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520fe12-701e-0097-60d2-902db3000000", - "Body" : "jtfsservicesassignaturesstringtosignjtfsservicesassignaturesstringtosign0739494315cea834Fri, 01 Nov 2019 16:39:55 GMT\"0x8D75EEA20AC5DBF\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:55 GMT", - "x-ms-client-request-id" : "f1de7970-cd25-4d75-9d14-43df2c3e6ea8", + "x-ms-request-id" : "1d9a4bb2-e01e-0092-0b0f-aad9cc000000", + "Body" : "jtfsservicesassignaturesstringtosignjtfsservicesassignaturesstringtosign06507288fdce5236Tue, 03 Dec 2019 19:23:31 GMT\"0x8D77826484463C8\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:31 GMT", + "x-ms-client-request-id" : "d4306d14-ba7d-4060-859d-96c24b165c5b", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign0739494315cea834?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign06507288fdce5236?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "580294c8-4e19-4478-bbfb-92981ea381ae" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "9f97eb66-ce4a-49a7-901b-ba30de7511bd" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520fe3d-701e-0097-04d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:55 GMT", - "x-ms-client-request-id" : "580294c8-4e19-4478-bbfb-92981ea381ae" + "x-ms-request-id" : "1d9a4bbf-e01e-0092-180f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:31 GMT", + "x-ms-client-request-id" : "9f97eb66-ce4a-49a7-901b-ba30de7511bd" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturesstringtosign0739494315cea834" ] + "variables" : [ "jtfsservicesassignaturesstringtosign06507288fdce5236", "javapathservicesassignaturesstringtosign10581120b7f330" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[7].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[7].json index 56ae4ee2dd34..520077b3e917 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[7].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[7].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign0106942e32d3ba0e?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign086003bb57aafc5c?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "debf5991-420c-49ad-81a6-b72cced7ab0a" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "454979ba-f041-4fa6-86bd-5d65e9a311f6" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA20C5B6AF", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:56 GMT", + "ETag" : "0x8D77826487BF874", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:31 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520fe63-701e-0097-28d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:55 GMT", - "x-ms-client-request-id" : "debf5991-420c-49ad-81a6-b72cced7ab0a" + "x-ms-request-id" : "1d9a4bd6-e01e-0092-2d0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:31 GMT", + "x-ms-client-request-id" : "454979ba-f041-4fa6-86bd-5d65e9a311f6" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign086003bb57aafc5c/javapathservicesassignaturesstringtosign1997503f4a09ba?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "a16a2c6b-522f-4b16-99d2-314d5d95cac2" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782648862A14", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:31 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9cae-101f-004b-790f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:30 GMT", + "x-ms-client-request-id" : "a16a2c6b-522f-4b16-99d2-314d5d95cac2" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign086003bb57aafc5c/javapathservicesassignaturesstringtosign1997503f4a09ba?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e3d9e78d-2916-4f05-b28d-acdd86deb7c2", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9cb5-101f-004b-800f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:30 GMT", + "x-ms-client-request-id" : "e3d9e78d-2916-4f05-b28d-acdd86deb7c2" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign086003bb57aafc5c/javapathservicesassignaturesstringtosign1997503f4a09ba?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "08a81a6e-d8ff-4b0c-b296-a1c6c56f2f96" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826489850CB", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:31 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9cb6-101f-004b-010f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:30 GMT", + "x-ms-client-request-id" : "08a81a6e-d8ff-4b0c-b296-a1c6c56f2f96" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturesstringtosign&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "58db76de-0dea-4725-bf42-47eb63287fb9" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f9106c45-2d7b-4bd2-a486-d90688e16611" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520fe79-701e-0097-3cd2-902db3000000", - "Body" : "jtfsservicesassignaturesstringtosignjtfsservicesassignaturesstringtosign0106942e32d3ba0eFri, 01 Nov 2019 16:39:56 GMT\"0x8D75EEA20C5B6AF\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:55 GMT", - "x-ms-client-request-id" : "58db76de-0dea-4725-bf42-47eb63287fb9", + "x-ms-request-id" : "1d9a4c1d-e01e-0092-6c0f-aad9cc000000", + "Body" : "jtfsservicesassignaturesstringtosignjtfsservicesassignaturesstringtosign086003bb57aafc5cTue, 03 Dec 2019 19:23:31 GMT\"0x8D77826487BF874\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:31 GMT", + "x-ms-client-request-id" : "f9106c45-2d7b-4bd2-a486-d90688e16611", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign0106942e32d3ba0e?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign086003bb57aafc5c?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "ec5a45e1-3f91-46c0-871b-1c23c8608953" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "692808d7-0e85-4ddb-9c76-d573618d889e" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520fe8c-701e-0097-4fd2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:55 GMT", - "x-ms-client-request-id" : "ec5a45e1-3f91-46c0-871b-1c23c8608953" + "x-ms-request-id" : "1d9a4c26-e01e-0092-750f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:31 GMT", + "x-ms-client-request-id" : "692808d7-0e85-4ddb-9c76-d573618d889e" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturesstringtosign0106942e32d3ba0e" ] + "variables" : [ "jtfsservicesassignaturesstringtosign086003bb57aafc5c", "javapathservicesassignaturesstringtosign1997503f4a09ba" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[8].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[8].json index 9f78ab96e98d..2114c2af925a 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[8].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosign[8].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign059246da2544bb45?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign065278d41c609812?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "16635aac-5980-4bf0-a6e9-2200899e37fc" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "474f3d92-0cc0-4071-ac61-c81a50cf3182" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA20F29B25", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:56 GMT", + "ETag" : "0x8D7782648B317E5", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:32 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520feef-701e-0097-2ad2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:56 GMT", - "x-ms-client-request-id" : "16635aac-5980-4bf0-a6e9-2200899e37fc" + "x-ms-request-id" : "1d9a4c2f-e01e-0092-7d0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:31 GMT", + "x-ms-client-request-id" : "474f3d92-0cc0-4071-ac61-c81a50cf3182" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign065278d41c609812/javapathservicesassignaturesstringtosign1461651a76e152?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "4b17877a-48b5-4ae5-b6e1-ea0dd4893c32" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782648BF2ECA", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:32 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9cbe-101f-004b-090f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:31 GMT", + "x-ms-client-request-id" : "4b17877a-48b5-4ae5-b6e1-ea0dd4893c32" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign065278d41c609812/javapathservicesassignaturesstringtosign1461651a76e152?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d81195e4-88d1-47ac-89a4-73fae0041c45", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9cbf-101f-004b-0a0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:31 GMT", + "x-ms-client-request-id" : "d81195e4-88d1-47ac-89a4-73fae0041c45" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosign065278d41c609812/javapathservicesassignaturesstringtosign1461651a76e152?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "fb9548b5-8640-439b-9c5a-0aca19f64ba0" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782648D14C05", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:32 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9cc0-101f-004b-0b0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:31 GMT", + "x-ms-client-request-id" : "fb9548b5-8640-439b-9c5a-0aca19f64ba0" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturesstringtosign&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "88c92d0c-fea1-4bb4-a899-37e4e6fe002d" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "634ba2e3-7478-4b00-adf4-8c4ebe480d6b" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520ff05-701e-0097-3fd2-902db3000000", - "Body" : "jtfsservicesassignaturesstringtosignjtfsservicesassignaturesstringtosign059246da2544bb45Fri, 01 Nov 2019 16:39:56 GMT\"0x8D75EEA20F29B25\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:56 GMT", - "x-ms-client-request-id" : "88c92d0c-fea1-4bb4-a899-37e4e6fe002d", + "x-ms-request-id" : "1d9a4c6a-e01e-0092-2f0f-aad9cc000000", + "Body" : "jtfsservicesassignaturesstringtosignjtfsservicesassignaturesstringtosign065278d41c609812Tue, 03 Dec 2019 19:23:32 GMT\"0x8D7782648B317E5\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:32 GMT", + "x-ms-client-request-id" : "634ba2e3-7478-4b00-adf4-8c4ebe480d6b", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign059246da2544bb45?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosign065278d41c609812?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "926acf50-e8db-4f17-b263-7b97c8d9d0e5" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "03aadf6a-0a63-4e4e-ab92-98fc44203a1e" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520ff1b-701e-0097-50d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:56 GMT", - "x-ms-client-request-id" : "926acf50-e8db-4f17-b263-7b97c8d9d0e5" + "x-ms-request-id" : "1d9a4c75-e01e-0092-370f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:32 GMT", + "x-ms-client-request-id" : "03aadf6a-0a63-4e4e-ab92-98fc44203a1e" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturesstringtosign059246da2544bb45" ] + "variables" : [ "jtfsservicesassignaturesstringtosign065278d41c609812", "javapathservicesassignaturesstringtosign1461651a76e152" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[0].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[0].json index 70ace10d68ad..f14c346cc854 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[0].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[0].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey03058237?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey08931032?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "aabe99bf-02d8-42d3-9544-fab59a95886b" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b1ab48da-9ce3-4b24-87df-a31884ebdfa9" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA210D7AFC", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:56 GMT", + "ETag" : "0x8D7782648EAFAC0", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:32 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520ff36-701e-0097-6ad2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:56 GMT", - "x-ms-client-request-id" : "aabe99bf-02d8-42d3-9544-fab59a95886b" + "x-ms-request-id" : "1d9a4c82-e01e-0092-410f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:32 GMT", + "x-ms-client-request-id" : "b1ab48da-9ce3-4b24-87df-a31884ebdfa9" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey08931032/javapathservicesassignaturesstringtosignuserdelegationkey130646?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b1af4bab-9c3d-437c-99e1-7067f06332cd" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782648F5A8D2", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:32 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9cc1-101f-004b-0c0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:31 GMT", + "x-ms-client-request-id" : "b1af4bab-9c3d-437c-99e1-7067f06332cd" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey08931032/javapathservicesassignaturesstringtosignuserdelegationkey130646?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f77e57d3-3eb0-4799-982f-51db36e8519c", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9cc2-101f-004b-0d0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:31 GMT", + "x-ms-client-request-id" : "f77e57d3-3eb0-4799-982f-51db36e8519c" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey08931032/javapathservicesassignaturesstringtosignuserdelegationkey130646?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "03288fdd-02c0-4cf0-9244-414361c63c26" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264905CC3C", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:32 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9cc3-101f-004b-0e0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:31 GMT", + "x-ms-client-request-id" : "03288fdd-02c0-4cf0-9244-414361c63c26" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturesstringtosignuserdelegationkey&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "29531ff2-17ed-4b2f-a2f0-064dba062683" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "1c779ec4-3bf3-4e95-a11c-5162182a3b5d" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520ff4f-701e-0097-02d2-902db3000000", - "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey03058237Fri, 01 Nov 2019 16:39:56 GMT\"0x8D75EEA210D7AFC\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:56 GMT", - "x-ms-client-request-id" : "29531ff2-17ed-4b2f-a2f0-064dba062683", + "x-ms-request-id" : "1d9a4ca8-e01e-0092-610f-aad9cc000000", + "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey08931032Tue, 03 Dec 2019 19:23:32 GMT\"0x8D7782648EAFAC0\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:32 GMT", + "x-ms-client-request-id" : "1c779ec4-3bf3-4e95-a11c-5162182a3b5d", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey03058237?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey08931032?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "effd2074-d6b1-47af-8af0-90f5b7eeb764" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "608c1b06-92c1-494e-99c3-bd00a3b88170" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520ff69-701e-0097-17d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:56 GMT", - "x-ms-client-request-id" : "effd2074-d6b1-47af-8af0-90f5b7eeb764" + "x-ms-request-id" : "1d9a4cb3-e01e-0092-6c0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:32 GMT", + "x-ms-client-request-id" : "608c1b06-92c1-494e-99c3-bd00a3b88170" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey03058237" ] + "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey08931032", "javapathservicesassignaturesstringtosignuserdelegationkey130646" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[10].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[10].json index 5abb042cbfd4..d11b8af94552 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[10].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[10].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey04743298?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey033146f0?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "2c0085fa-171b-4a9a-bd6a-fb0347d9922f" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "5f7593df-a07e-40dd-aa1b-b38ec86466b8" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA223BF884", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:58 GMT", + "ETag" : "0x8D778264B35EFFD", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:36 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210304-701e-0097-63d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:58 GMT", - "x-ms-client-request-id" : "2c0085fa-171b-4a9a-bd6a-fb0347d9922f" + "x-ms-request-id" : "1d9a4fff-e01e-0092-270f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:36 GMT", + "x-ms-client-request-id" : "5f7593df-a07e-40dd-aa1b-b38ec86466b8" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey033146f0/javapathservicesassignaturesstringtosignuserdelegationkey152577?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "567b9891-9261-4779-8438-ab4e863bd67c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264B42CE56", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:36 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9d11-101f-004b-540f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:36 GMT", + "x-ms-client-request-id" : "567b9891-9261-4779-8438-ab4e863bd67c" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey033146f0/javapathservicesassignaturesstringtosignuserdelegationkey152577?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "da30ac24-3441-4fb7-afec-a8a43288fdb5", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9d12-101f-004b-550f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:36 GMT", + "x-ms-client-request-id" : "da30ac24-3441-4fb7-afec-a8a43288fdb5" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey033146f0/javapathservicesassignaturesstringtosignuserdelegationkey152577?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "eff399be-380e-42cc-8583-591deff97e94" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264B56245A", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:36 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9d13-101f-004b-560f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:36 GMT", + "x-ms-client-request-id" : "eff399be-380e-42cc-8583-591deff97e94" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturesstringtosignuserdelegationkey&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "03bc5842-5231-413a-a69c-bd497bc2bd0c" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "6625d4b2-6b9e-4526-99ce-662ae80a126c" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210315-701e-0097-71d2-902db3000000", - "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey04743298Fri, 01 Nov 2019 16:39:58 GMT\"0x8D75EEA223BF884\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:58 GMT", - "x-ms-client-request-id" : "03bc5842-5231-413a-a69c-bd497bc2bd0c", + "x-ms-request-id" : "1d9a5035-e01e-0092-570f-aad9cc000000", + "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey033146f0Tue, 03 Dec 2019 19:23:36 GMT\"0x8D778264B35EFFD\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:36 GMT", + "x-ms-client-request-id" : "6625d4b2-6b9e-4526-99ce-662ae80a126c", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey04743298?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey033146f0?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "29e60840-6b16-43ad-9c97-2fcefdd46574" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "fb58d69a-be38-4ea3-b23e-e7b772182f16" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210323-701e-0097-7fd2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:58 GMT", - "x-ms-client-request-id" : "29e60840-6b16-43ad-9c97-2fcefdd46574" + "x-ms-request-id" : "1d9a503f-e01e-0092-600f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:36 GMT", + "x-ms-client-request-id" : "fb58d69a-be38-4ea3-b23e-e7b772182f16" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey04743298" ] + "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey033146f0", "javapathservicesassignaturesstringtosignuserdelegationkey152577" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[11].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[11].json index d148cc88bc96..f395e0561573 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[11].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[11].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey02427323?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey093266ca?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "7e03fc96-b463-4cbb-bccf-21faf6877373" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8dba6bc3-4b72-4d15-a818-0d9d4ef85d07" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA2256D85B", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:58 GMT", + "ETag" : "0x8D778264B701D35", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:36 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b521033c-701e-0097-15d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:58 GMT", - "x-ms-client-request-id" : "7e03fc96-b463-4cbb-bccf-21faf6877373" + "x-ms-request-id" : "1d9a504a-e01e-0092-6a0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:36 GMT", + "x-ms-client-request-id" : "8dba6bc3-4b72-4d15-a818-0d9d4ef85d07" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey093266ca/javapathservicesassignaturesstringtosignuserdelegationkey130481?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "41055947-4515-4e0d-9e00-2ac6bb10d22e" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264B79F88F", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:36 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9d15-101f-004b-570f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:36 GMT", + "x-ms-client-request-id" : "41055947-4515-4e0d-9e00-2ac6bb10d22e" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey093266ca/javapathservicesassignaturesstringtosignuserdelegationkey130481?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "bc852cfa-90b7-4901-9738-a1df0e28a448", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9d16-101f-004b-580f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:36 GMT", + "x-ms-client-request-id" : "bc852cfa-90b7-4901-9738-a1df0e28a448" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey093266ca/javapathservicesassignaturesstringtosignuserdelegationkey130481?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f70539f3-4568-424e-8398-48c66c5c0cc5" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264B8BAE4C", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:36 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9d17-101f-004b-590f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:36 GMT", + "x-ms-client-request-id" : "f70539f3-4568-424e-8398-48c66c5c0cc5" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturesstringtosignuserdelegationkey&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "484258fb-1dd4-4adc-9e77-95c9ceafee0d" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d643b563-68f9-4b97-b596-6e40fd53e710" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210378-701e-0097-4dd2-902db3000000", - "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey02427323Fri, 01 Nov 2019 16:39:58 GMT\"0x8D75EEA2256D85B\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:58 GMT", - "x-ms-client-request-id" : "484258fb-1dd4-4adc-9e77-95c9ceafee0d", + "x-ms-request-id" : "1d9a507e-e01e-0092-160f-aad9cc000000", + "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey093266caTue, 03 Dec 2019 19:23:36 GMT\"0x8D778264B701D35\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:36 GMT", + "x-ms-client-request-id" : "d643b563-68f9-4b97-b596-6e40fd53e710", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey02427323?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey093266ca?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "d440b203-3551-4d52-9f72-dc27602859bc" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "0c8b3df7-fa60-455a-af1e-3b67721b8724" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210397-701e-0097-67d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:58 GMT", - "x-ms-client-request-id" : "d440b203-3551-4d52-9f72-dc27602859bc" + "x-ms-request-id" : "1d9a5086-e01e-0092-1e0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:36 GMT", + "x-ms-client-request-id" : "0c8b3df7-fa60-455a-af1e-3b67721b8724" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey02427323" ] + "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey093266ca", "javapathservicesassignaturesstringtosignuserdelegationkey130481" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[12].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[12].json index 527b6651a2d1..e3b86c813c15 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[12].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[12].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey092375b1?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey006194e3?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "83dbaaa6-7fdf-4ffb-b8a6-13b8190c984a" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "5ee5e06e-ca4a-4061-85ae-2aa659491fdf" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA22812445", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:59 GMT", + "ETag" : "0x8D778264BA9FC43", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:36 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b52103b7-701e-0097-06d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:58 GMT", - "x-ms-client-request-id" : "83dbaaa6-7fdf-4ffb-b8a6-13b8190c984a" + "x-ms-request-id" : "1d9a50a1-e01e-0092-370f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:36 GMT", + "x-ms-client-request-id" : "5ee5e06e-ca4a-4061-85ae-2aa659491fdf" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey006194e3/javapathservicesassignaturesstringtosignuserdelegationkey106114?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "64a98348-5efc-4008-a349-079e165c1330" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264BB4C33C", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:37 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9d18-101f-004b-5a0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:37 GMT", + "x-ms-client-request-id" : "64a98348-5efc-4008-a349-079e165c1330" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey006194e3/javapathservicesassignaturesstringtosignuserdelegationkey106114?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "3968ea51-c297-4df7-983f-4d1ff757bd8a", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9d19-101f-004b-5b0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:37 GMT", + "x-ms-client-request-id" : "3968ea51-c297-4df7-983f-4d1ff757bd8a" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey006194e3/javapathservicesassignaturesstringtosignuserdelegationkey106114?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "506b2323-5b6e-446e-b3f2-fd552f4b9f5b" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264BC765E3", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:37 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9d1a-101f-004b-5c0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:37 GMT", + "x-ms-client-request-id" : "506b2323-5b6e-446e-b3f2-fd552f4b9f5b" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturesstringtosignuserdelegationkey&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "27d8b707-14a1-460a-87e3-a887199f69c8" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "c74e3741-61ef-4c43-b4dd-db140a8c0416" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b52103d6-701e-0097-23d3-902db3000000", - "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey092375b1Fri, 01 Nov 2019 16:39:59 GMT\"0x8D75EEA22812445\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:58 GMT", - "x-ms-client-request-id" : "27d8b707-14a1-460a-87e3-a887199f69c8", + "x-ms-request-id" : "1d9a50e6-e01e-0092-6e0f-aad9cc000000", + "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey006194e3Tue, 03 Dec 2019 19:23:36 GMT\"0x8D778264BA9FC43\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:37 GMT", + "x-ms-client-request-id" : "c74e3741-61ef-4c43-b4dd-db140a8c0416", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey092375b1?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey006194e3?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "01511972-5a08-48de-8d89-20f2b26d2140" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "955255f8-022b-4f1c-a252-a2278f74997f" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b52103ef-701e-0097-3ad3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:58 GMT", - "x-ms-client-request-id" : "01511972-5a08-48de-8d89-20f2b26d2140" + "x-ms-request-id" : "1d9a50f2-e01e-0092-7a0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:37 GMT", + "x-ms-client-request-id" : "955255f8-022b-4f1c-a252-a2278f74997f" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey092375b1" ] + "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey006194e3", "javapathservicesassignaturesstringtosignuserdelegationkey106114" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[13].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[13].json index fc45ae6d1bff..393adc634a13 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[13].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[13].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey0301678d?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey08973417?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "1872d782-76fd-4a75-9c69-8468784afdf4" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "a537fbdc-134a-435f-a4fe-a17706438cff" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA229EC3BA", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:59 GMT", + "ETag" : "0x8D778264BE25463", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:37 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210416-701e-0097-5ed3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:58 GMT", - "x-ms-client-request-id" : "1872d782-76fd-4a75-9c69-8468784afdf4" + "x-ms-request-id" : "1d9a5108-e01e-0092-0c0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:37 GMT", + "x-ms-client-request-id" : "a537fbdc-134a-435f-a4fe-a17706438cff" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey08973417/javapathservicesassignaturesstringtosignuserdelegationkey106421?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d654ed08-3e49-4445-bef2-4cc953c37b01" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264BEF951B", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:37 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9d1b-101f-004b-5d0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:37 GMT", + "x-ms-client-request-id" : "d654ed08-3e49-4445-bef2-4cc953c37b01" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey08973417/javapathservicesassignaturesstringtosignuserdelegationkey106421?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "088d3bc2-eef4-49d5-987d-686d0f43aa5e", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9d1c-101f-004b-5e0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:37 GMT", + "x-ms-client-request-id" : "088d3bc2-eef4-49d5-987d-686d0f43aa5e" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey08973417/javapathservicesassignaturesstringtosignuserdelegationkey106421?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d20dd4a2-2e32-4d63-b538-2b6e45b6d10b" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264C0531FF", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:37 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9d1d-101f-004b-5f0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:37 GMT", + "x-ms-client-request-id" : "d20dd4a2-2e32-4d63-b538-2b6e45b6d10b" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturesstringtosignuserdelegationkey&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "c6a0ce7c-19f4-44e0-96ee-b9d9b071a058" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "22b085c3-9dff-4f62-a175-f12dfd321127" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210434-701e-0097-78d3-902db3000000", - "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey0301678dFri, 01 Nov 2019 16:39:59 GMT\"0x8D75EEA229EC3BA\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:58 GMT", - "x-ms-client-request-id" : "c6a0ce7c-19f4-44e0-96ee-b9d9b071a058", + "x-ms-request-id" : "1d9a5148-e01e-0092-3e0f-aad9cc000000", + "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey08973417Tue, 03 Dec 2019 19:23:37 GMT\"0x8D778264BE25463\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:37 GMT", + "x-ms-client-request-id" : "22b085c3-9dff-4f62-a175-f12dfd321127", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey0301678d?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey08973417?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "f3f09262-2a9d-4c54-a7eb-afe350c099f7" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "804c2e7b-fd61-4fd1-add4-44ddefd52287" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b521044f-701e-0097-10d3-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:58 GMT", - "x-ms-client-request-id" : "f3f09262-2a9d-4c54-a7eb-afe350c099f7" + "x-ms-request-id" : "1d9a5158-e01e-0092-4b0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:37 GMT", + "x-ms-client-request-id" : "804c2e7b-fd61-4fd1-add4-44ddefd52287" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey0301678d" ] + "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey08973417", "javapathservicesassignaturesstringtosignuserdelegationkey106421" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[1].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[1].json index 307e7d40f158..933e829e6a68 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[1].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[1].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey0093742d?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey02660634?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "71f4be9a-c637-4de6-b598-b138e5f27c4f" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "a44e597c-231d-41b8-8c82-a75f34c59ed8" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA2129455D", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:56 GMT", + "ETag" : "0x8D77826491FF6EA", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:32 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520ff7e-701e-0097-2ad2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:56 GMT", - "x-ms-client-request-id" : "71f4be9a-c637-4de6-b598-b138e5f27c4f" + "x-ms-request-id" : "1d9a4cbd-e01e-0092-730f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:32 GMT", + "x-ms-client-request-id" : "a44e597c-231d-41b8-8c82-a75f34c59ed8" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey02660634/javapathservicesassignaturesstringtosignuserdelegationkey103948?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "0a171d88-d686-4fc1-b43c-abe56c037b12" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826492D4D0E", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:32 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9cc5-101f-004b-100f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:31 GMT", + "x-ms-client-request-id" : "0a171d88-d686-4fc1-b43c-abe56c037b12" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey02660634/javapathservicesassignaturesstringtosignuserdelegationkey103948?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f8bce9d0-5766-4594-b118-842e74e947ce", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9cc6-101f-004b-110f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:31 GMT", + "x-ms-client-request-id" : "f8bce9d0-5766-4594-b118-842e74e947ce" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey02660634/javapathservicesassignaturesstringtosignuserdelegationkey103948?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8b2db010-4bc5-4ec8-8cb1-cf0181af8731" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826493CD13C", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:32 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9cc8-101f-004b-130f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:31 GMT", + "x-ms-client-request-id" : "8b2db010-4bc5-4ec8-8cb1-cf0181af8731" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturesstringtosignuserdelegationkey&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "f71248fe-a78a-44df-88c0-0ec1734b7374" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d0c509d3-e8f9-4310-a355-a16959516a15" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520ff90-701e-0097-39d2-902db3000000", - "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey0093742dFri, 01 Nov 2019 16:39:56 GMT\"0x8D75EEA2129455D\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:56 GMT", - "x-ms-client-request-id" : "f71248fe-a78a-44df-88c0-0ec1734b7374", + "x-ms-request-id" : "1d9a4d05-e01e-0092-290f-aad9cc000000", + "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey02660634Tue, 03 Dec 2019 19:23:32 GMT\"0x8D77826491FF6EA\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:32 GMT", + "x-ms-client-request-id" : "d0c509d3-e8f9-4310-a355-a16959516a15", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey0093742d?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey02660634?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "f66a556f-88d8-42e0-b221-710d928ce46f" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "a8af774f-ba85-402e-8c2a-47f08c1606b1" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520ffa2-701e-0097-48d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:56 GMT", - "x-ms-client-request-id" : "f66a556f-88d8-42e0-b221-710d928ce46f" + "x-ms-request-id" : "1d9a4d0f-e01e-0092-330f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:32 GMT", + "x-ms-client-request-id" : "a8af774f-ba85-402e-8c2a-47f08c1606b1" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey0093742d" ] + "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey02660634", "javapathservicesassignaturesstringtosignuserdelegationkey103948" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[2].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[2].json index eab3e68e4430..75f309345209 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[2].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[2].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey030490ac?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey08808937?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "458c6a4b-c81b-4df1-a992-af43fa6edfba" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "38798b36-ff59-43f4-8219-23d08ff50bfb" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA2144253D", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:56 GMT", + "ETag" : "0x8D77826495CBCA9", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:33 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520ffb9-701e-0097-5cd2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:56 GMT", - "x-ms-client-request-id" : "458c6a4b-c81b-4df1-a992-af43fa6edfba" + "x-ms-request-id" : "1d9a4d29-e01e-0092-4a0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:33 GMT", + "x-ms-client-request-id" : "38798b36-ff59-43f4-8219-23d08ff50bfb" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey08808937/javapathservicesassignaturesstringtosignuserdelegationkey140657?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ae54d864-53c3-4deb-b193-492e4bd28db0" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826496E53C5", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:33 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9cc9-101f-004b-140f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:33 GMT", + "x-ms-client-request-id" : "ae54d864-53c3-4deb-b193-492e4bd28db0" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey08808937/javapathservicesassignaturesstringtosignuserdelegationkey140657?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "62d6731b-1670-4c14-9eae-084865f9aae2", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9ccb-101f-004b-150f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:33 GMT", + "x-ms-client-request-id" : "62d6731b-1670-4c14-9eae-084865f9aae2" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey08808937/javapathservicesassignaturesstringtosignuserdelegationkey140657?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "026d86a1-dedf-4bf5-878b-24630632c3b8" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826497E2152", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:33 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9ccc-101f-004b-160f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:33 GMT", + "x-ms-client-request-id" : "026d86a1-dedf-4bf5-878b-24630632c3b8" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturesstringtosignuserdelegationkey&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "82169e7a-24dd-4c88-ad27-aa1466ab62b0" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ef5db85c-c08c-4eb0-9c1b-29eeab01d2e2" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520ffde-701e-0097-7fd2-902db3000000", - "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey030490acFri, 01 Nov 2019 16:39:56 GMT\"0x8D75EEA2144253D\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:56 GMT", - "x-ms-client-request-id" : "82169e7a-24dd-4c88-ad27-aa1466ab62b0", + "x-ms-request-id" : "1d9a4d65-e01e-0092-7d0f-aad9cc000000", + "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey08808937Tue, 03 Dec 2019 19:23:33 GMT\"0x8D77826495CBCA9\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:33 GMT", + "x-ms-client-request-id" : "ef5db85c-c08c-4eb0-9c1b-29eeab01d2e2", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey030490ac?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey08808937?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "743ff75f-41c9-4746-a822-08b8132792a2" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "1706c115-b309-4e19-976d-cc2212764371" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210003-701e-0097-21d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:56 GMT", - "x-ms-client-request-id" : "743ff75f-41c9-4746-a822-08b8132792a2" + "x-ms-request-id" : "1d9a4d6a-e01e-0092-010f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:33 GMT", + "x-ms-client-request-id" : "1706c115-b309-4e19-976d-cc2212764371" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey030490ac" ] + "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey08808937", "javapathservicesassignaturesstringtosignuserdelegationkey140657" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[3].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[3].json index 508d783a8a93..07e3be7213d7 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[3].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[3].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey080840c4?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey018512c4?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "db26c589-be46-4367-a53f-21066e1dc753" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8d87d44b-356c-44bc-a6e2-9c94cbb8ed93" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA2168559F", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:57 GMT", + "ETag" : "0x8D778264999343A", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:33 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b521004f-701e-0097-62d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:56 GMT", - "x-ms-client-request-id" : "db26c589-be46-4367-a53f-21066e1dc753" + "x-ms-request-id" : "1d9a4d73-e01e-0092-090f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:33 GMT", + "x-ms-client-request-id" : "8d87d44b-356c-44bc-a6e2-9c94cbb8ed93" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey018512c4/javapathservicesassignaturesstringtosignuserdelegationkey143978?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f32eb789-614b-4ebd-91f0-427d7c1453b6" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782649A5AF16", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:33 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9ccd-101f-004b-170f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:33 GMT", + "x-ms-client-request-id" : "f32eb789-614b-4ebd-91f0-427d7c1453b6" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey018512c4/javapathservicesassignaturesstringtosignuserdelegationkey143978?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b7fd87f2-fc31-478d-8cbc-6bf2a2c81b3e", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9cce-101f-004b-180f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:33 GMT", + "x-ms-client-request-id" : "b7fd87f2-fc31-478d-8cbc-6bf2a2c81b3e" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey018512c4/javapathservicesassignaturesstringtosignuserdelegationkey143978?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8c16a939-686b-4eb8-a666-37cc9d82a15d" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782649B84BE5", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:33 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9ccf-101f-004b-190f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:33 GMT", + "x-ms-client-request-id" : "8c16a939-686b-4eb8-a666-37cc9d82a15d" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturesstringtosignuserdelegationkey&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "8a8f366f-3472-4b0a-b78e-3744abc93133" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "037a50d7-215a-4e74-8a07-3878508619a0" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b521005c-701e-0097-6ed2-902db3000000", - "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey080840c4Fri, 01 Nov 2019 16:39:57 GMT\"0x8D75EEA2168559F\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:56 GMT", - "x-ms-client-request-id" : "8a8f366f-3472-4b0a-b78e-3744abc93133", + "x-ms-request-id" : "1d9a4db0-e01e-0092-3b0f-aad9cc000000", + "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey018512c4Tue, 03 Dec 2019 19:23:33 GMT\"0x8D778264999343A\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:33 GMT", + "x-ms-client-request-id" : "037a50d7-215a-4e74-8a07-3878508619a0", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey080840c4?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey018512c4?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "a01b7245-1803-409d-b933-be06715f5985" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "32089abc-c244-468e-ba35-2ca9799e2127" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b521006f-701e-0097-80d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:56 GMT", - "x-ms-client-request-id" : "a01b7245-1803-409d-b933-be06715f5985" + "x-ms-request-id" : "1d9a4dc4-e01e-0092-4b0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:33 GMT", + "x-ms-client-request-id" : "32089abc-c244-468e-ba35-2ca9799e2127" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey080840c4" ] + "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey018512c4", "javapathservicesassignaturesstringtosignuserdelegationkey143978" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[4].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[4].json index 72045789696e..c8cce99b33d3 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[4].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[4].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey0269077e?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey03151996?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "3e579c60-c8c6-42d3-9b66-b5c6d12e1809" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "be535585-0a95-45dc-9f76-50a25629db15" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA2181AE99", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:57 GMT", + "ETag" : "0x8D7782649D228BA", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:33 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210091-701e-0097-1ed2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:56 GMT", - "x-ms-client-request-id" : "3e579c60-c8c6-42d3-9b66-b5c6d12e1809" + "x-ms-request-id" : "1d9a4ddd-e01e-0092-5c0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:33 GMT", + "x-ms-client-request-id" : "be535585-0a95-45dc-9f76-50a25629db15" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey03151996/javapathservicesassignaturesstringtosignuserdelegationkey182156?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "2492e77e-d34f-4d2a-ac9f-dbb3e1408f7f" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782649DE4E14", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:33 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9cd0-101f-004b-1a0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:33 GMT", + "x-ms-client-request-id" : "2492e77e-d34f-4d2a-ac9f-dbb3e1408f7f" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey03151996/javapathservicesassignaturesstringtosignuserdelegationkey182156?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "c138387a-c8d8-4789-808d-f7defc89ca92", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9cd1-101f-004b-1b0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:34 GMT", + "x-ms-client-request-id" : "c138387a-c8d8-4789-808d-f7defc89ca92" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey03151996/javapathservicesassignaturesstringtosignuserdelegationkey182156?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d537e1b2-c24b-4eb9-9f09-37f9af79cd49" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D7782649EED5C6", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:34 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9cd4-101f-004b-1e0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:34 GMT", + "x-ms-client-request-id" : "d537e1b2-c24b-4eb9-9f09-37f9af79cd49" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturesstringtosignuserdelegationkey&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "15fd55e0-4a05-4f4f-825b-af4f04f29500" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "eaa98f9c-35a0-4fd0-a3f4-483d6d4113bd" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b52100b4-701e-0097-3ed2-902db3000000", - "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey0269077eFri, 01 Nov 2019 16:39:57 GMT\"0x8D75EEA2181AE99\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:57 GMT", - "x-ms-client-request-id" : "15fd55e0-4a05-4f4f-825b-af4f04f29500", + "x-ms-request-id" : "1d9a4e17-e01e-0092-090f-aad9cc000000", + "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey03151996Tue, 03 Dec 2019 19:23:33 GMT\"0x8D7782649D228BA\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:34 GMT", + "x-ms-client-request-id" : "eaa98f9c-35a0-4fd0-a3f4-483d6d4113bd", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey0269077e?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey03151996?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "77e67166-e96d-4000-b7b7-634841e28442" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "4080882a-d9ca-4375-a5d9-3cf081372bf9" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b52100cc-701e-0097-54d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:57 GMT", - "x-ms-client-request-id" : "77e67166-e96d-4000-b7b7-634841e28442" + "x-ms-request-id" : "1d9a4e2c-e01e-0092-1d0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:34 GMT", + "x-ms-client-request-id" : "4080882a-d9ca-4375-a5d9-3cf081372bf9" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey0269077e" ] + "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey03151996", "javapathservicesassignaturesstringtosignuserdelegationkey182156" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[5].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[5].json index aa8ca26bf94c..4eb3676fddba 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[5].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[5].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey0292857f?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey02342330?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "6668b1bc-c759-4da3-a066-11349cfe0a97" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "32ec25cd-dba3-4c23-8746-01d184f9a675" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA21A19875", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:57 GMT", + "ETag" : "0x8D778264A083689", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:34 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b521010a-701e-0097-0ed2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:57 GMT", - "x-ms-client-request-id" : "6668b1bc-c759-4da3-a066-11349cfe0a97" + "x-ms-request-id" : "1d9a4e3b-e01e-0092-2b0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:34 GMT", + "x-ms-client-request-id" : "32ec25cd-dba3-4c23-8746-01d184f9a675" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey02342330/javapathservicesassignaturesstringtosignuserdelegationkey163694?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8f13dd75-bba5-40bc-8af3-a52eb36b7a6f" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264A12497D", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:34 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9ce0-101f-004b-2a0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:34 GMT", + "x-ms-client-request-id" : "8f13dd75-bba5-40bc-8af3-a52eb36b7a6f" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey02342330/javapathservicesassignaturesstringtosignuserdelegationkey163694?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "9a2eb162-28d9-4683-bc5b-e3b50f0e1736", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9ce4-101f-004b-2e0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:34 GMT", + "x-ms-client-request-id" : "9a2eb162-28d9-4683-bc5b-e3b50f0e1736" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey02342330/javapathservicesassignaturesstringtosignuserdelegationkey163694?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f7d88997-5ee4-4d95-b876-55504d8e0f2f" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264A237A46", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:34 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9cee-101f-004b-320f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:34 GMT", + "x-ms-client-request-id" : "f7d88997-5ee4-4d95-b876-55504d8e0f2f" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturesstringtosignuserdelegationkey&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "9fb3a8ed-61a9-4363-81e9-d66735b0588e" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "daa7139c-d4a1-4541-97f8-2224f000b405" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210122-701e-0097-23d2-902db3000000", - "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey0292857fFri, 01 Nov 2019 16:39:57 GMT\"0x8D75EEA21A19875\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:57 GMT", - "x-ms-client-request-id" : "9fb3a8ed-61a9-4363-81e9-d66735b0588e", + "x-ms-request-id" : "1d9a4e73-e01e-0092-580f-aad9cc000000", + "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey02342330Tue, 03 Dec 2019 19:23:34 GMT\"0x8D778264A083689\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:34 GMT", + "x-ms-client-request-id" : "daa7139c-d4a1-4541-97f8-2224f000b405", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey0292857f?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey02342330?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "c708d08e-af0c-40b0-bc18-9ed6195abc81" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "c8537f61-bd58-490b-8354-5cfd8985139b" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210139-701e-0097-36d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:57 GMT", - "x-ms-client-request-id" : "c708d08e-af0c-40b0-bc18-9ed6195abc81" + "x-ms-request-id" : "1d9a4e8d-e01e-0092-6c0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:34 GMT", + "x-ms-client-request-id" : "c8537f61-bd58-490b-8354-5cfd8985139b" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey0292857f" ] + "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey02342330", "javapathservicesassignaturesstringtosignuserdelegationkey163694" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[6].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[6].json index c9c494e1114c..41595b391142 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[6].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[6].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey09190835?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey08934706?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "a9a7f64a-76ee-46d4-a102-27d6f2f2fd65" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "2a740d4c-a4ac-415b-aeeb-0c0f175d7d44" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA21BB66BD", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:57 GMT", + "ETag" : "0x8D778264A3D0BA1", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:34 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210154-701e-0097-4fd2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:57 GMT", - "x-ms-client-request-id" : "a9a7f64a-76ee-46d4-a102-27d6f2f2fd65" + "x-ms-request-id" : "1d9a4e9e-e01e-0092-7a0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:34 GMT", + "x-ms-client-request-id" : "2a740d4c-a4ac-415b-aeeb-0c0f175d7d44" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey08934706/javapathservicesassignaturesstringtosignuserdelegationkey110795?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "be07c027-b04c-4ab4-8e5c-33994d50eb1c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264A4C82AA", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:34 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9d03-101f-004b-470f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:34 GMT", + "x-ms-client-request-id" : "be07c027-b04c-4ab4-8e5c-33994d50eb1c" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey08934706/javapathservicesassignaturesstringtosignuserdelegationkey110795?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e4ab2246-7e7b-4881-94ec-f4f459d51fe7", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9d05-101f-004b-490f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:34 GMT", + "x-ms-client-request-id" : "e4ab2246-7e7b-4881-94ec-f4f459d51fe7" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey08934706/javapathservicesassignaturesstringtosignuserdelegationkey110795?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "1a6cd1fa-79b2-4f77-8586-f10318c3c66e" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264A5ECCA5", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:34 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9d07-101f-004b-4a0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:34 GMT", + "x-ms-client-request-id" : "1a6cd1fa-79b2-4f77-8586-f10318c3c66e" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturesstringtosignuserdelegationkey&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "e25e7b93-6fa6-40b6-9fbc-2464f55dcdeb" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "27f51835-c091-46e6-945b-67e746eb731a" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b521017c-701e-0097-72d2-902db3000000", - "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey09190835Fri, 01 Nov 2019 16:39:57 GMT\"0x8D75EEA21BB66BD\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:57 GMT", - "x-ms-client-request-id" : "e25e7b93-6fa6-40b6-9fbc-2464f55dcdeb", + "x-ms-request-id" : "1d9a4ed0-e01e-0092-280f-aad9cc000000", + "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey08934706Tue, 03 Dec 2019 19:23:34 GMT\"0x8D778264A3D0BA1\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:34 GMT", + "x-ms-client-request-id" : "27f51835-c091-46e6-945b-67e746eb731a", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey09190835?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey08934706?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "5e00717e-4366-470c-b86d-9fd1181d0e4c" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "36deafd4-dff9-4978-ad28-a4bd6cfec580" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210192-701e-0097-06d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:57 GMT", - "x-ms-client-request-id" : "5e00717e-4366-470c-b86d-9fd1181d0e4c" + "x-ms-request-id" : "1d9a4edc-e01e-0092-310f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:34 GMT", + "x-ms-client-request-id" : "36deafd4-dff9-4978-ad28-a4bd6cfec580" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey09190835" ] + "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey08934706", "javapathservicesassignaturesstringtosignuserdelegationkey110795" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[7].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[7].json index 1d5f1b924693..6af8d536c5bb 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[7].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[7].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey06530999?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey0511040d?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "4bbe526b-9a74-4efd-895d-1ac362ec9c95" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "72b87b69-d659-47cb-95da-23995c06c5c0" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA21D55C06", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:57 GMT", + "ETag" : "0x8D778264A79832D", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:34 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b52101aa-701e-0097-1dd2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:57 GMT", - "x-ms-client-request-id" : "4bbe526b-9a74-4efd-895d-1ac362ec9c95" + "x-ms-request-id" : "1d9a4ef0-e01e-0092-420f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:34 GMT", + "x-ms-client-request-id" : "72b87b69-d659-47cb-95da-23995c06c5c0" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey0511040d/javapathservicesassignaturesstringtosignuserdelegationkey117182?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "62c81edb-a0fb-4d00-afe5-bf9f1e9298bb" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264A88A116", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:35 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9d08-101f-004b-4b0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:35 GMT", + "x-ms-client-request-id" : "62c81edb-a0fb-4d00-afe5-bf9f1e9298bb" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey0511040d/javapathservicesassignaturesstringtosignuserdelegationkey117182?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e2a4a93e-9f85-4ca5-9c0c-8ce3733eb81d", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9d09-101f-004b-4c0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:35 GMT", + "x-ms-client-request-id" : "e2a4a93e-9f85-4ca5-9c0c-8ce3733eb81d" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey0511040d/javapathservicesassignaturesstringtosignuserdelegationkey117182?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ad1ce030-83d7-437f-a211-0a48c13ea7d2" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264A9A2E55", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:35 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9d0a-101f-004b-4d0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:35 GMT", + "x-ms-client-request-id" : "ad1ce030-83d7-437f-a211-0a48c13ea7d2" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturesstringtosignuserdelegationkey&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "36bf71e5-f15c-411a-a96d-bc96c398bf50" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "0a16b529-39e2-4d10-ada7-d39aa508212c" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b52101c8-701e-0097-35d2-902db3000000", - "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey06530999Fri, 01 Nov 2019 16:39:57 GMT\"0x8D75EEA21D55C06\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:57 GMT", - "x-ms-client-request-id" : "36bf71e5-f15c-411a-a96d-bc96c398bf50", + "x-ms-request-id" : "1d9a4f2e-e01e-0092-750f-aad9cc000000", + "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey0511040dTue, 03 Dec 2019 19:23:34 GMT\"0x8D778264A79832D\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:35 GMT", + "x-ms-client-request-id" : "0a16b529-39e2-4d10-ada7-d39aa508212c", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey06530999?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey0511040d?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "cd9f6377-2d63-46bc-8f5d-2165a097b491" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d8436080-d5b4-4579-b771-f26520367a7f" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b52101e3-701e-0097-4dd2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:57 GMT", - "x-ms-client-request-id" : "cd9f6377-2d63-46bc-8f5d-2165a097b491" + "x-ms-request-id" : "1d9a4f35-e01e-0092-7c0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:35 GMT", + "x-ms-client-request-id" : "d8436080-d5b4-4579-b771-f26520367a7f" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey06530999" ] + "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey0511040d", "javapathservicesassignaturesstringtosignuserdelegationkey117182" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[8].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[8].json index bb67fa7d60c2..f2142cc45aea 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[8].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[8].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey05299874?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey021288d2?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "90d524b9-9957-41bd-82f4-9e06efd09495" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e7cc97f9-24f8-477a-bebe-181a4f4d6987" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA21F0B122", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:58 GMT", + "ETag" : "0x8D778264ABD27F2", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:35 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b5210210-701e-0097-78d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:57 GMT", - "x-ms-client-request-id" : "90d524b9-9957-41bd-82f4-9e06efd09495" + "x-ms-request-id" : "1d9a4f4c-e01e-0092-100f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:35 GMT", + "x-ms-client-request-id" : "e7cc97f9-24f8-477a-bebe-181a4f4d6987" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey021288d2/javapathservicesassignaturesstringtosignuserdelegationkey112959?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e4bd7a5f-880f-4a35-a08b-ee444ed37818" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264AD2C687", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:35 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9d0b-101f-004b-4e0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:35 GMT", + "x-ms-client-request-id" : "e4bd7a5f-880f-4a35-a08b-ee444ed37818" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey021288d2/javapathservicesassignaturesstringtosignuserdelegationkey112959?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "7dcffda9-adaa-4b91-9ac8-179c937418c0", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9d0c-101f-004b-4f0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:35 GMT", + "x-ms-client-request-id" : "7dcffda9-adaa-4b91-9ac8-179c937418c0" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey021288d2/javapathservicesassignaturesstringtosignuserdelegationkey112959?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "a1c70fb9-0c73-4b2d-a785-a303c88f4c49" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264AE30A77", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:35 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9d0d-101f-004b-500f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:35 GMT", + "x-ms-client-request-id" : "a1c70fb9-0c73-4b2d-a785-a303c88f4c49" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturesstringtosignuserdelegationkey&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "70cb5493-8c45-4715-9911-4a3f3ce2443c" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "37a9ce58-a1b7-4187-bf94-f4c2b34d5a09" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b5210235-701e-0097-1bd2-902db3000000", - "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey05299874Fri, 01 Nov 2019 16:39:58 GMT\"0x8D75EEA21F0B122\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:57 GMT", - "x-ms-client-request-id" : "70cb5493-8c45-4715-9911-4a3f3ce2443c", + "x-ms-request-id" : "1d9a4f87-e01e-0092-440f-aad9cc000000", + "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey021288d2Tue, 03 Dec 2019 19:23:35 GMT\"0x8D778264ABD27F2\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:35 GMT", + "x-ms-client-request-id" : "37a9ce58-a1b7-4187-bf94-f4c2b34d5a09", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey05299874?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey021288d2?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "e7891ec0-83c2-4390-8113-a3b58b56147c" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "30f76a3a-e195-4bbc-936a-e83d8b124f60" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b5210258-701e-0097-3dd2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:57 GMT", - "x-ms-client-request-id" : "e7891ec0-83c2-4390-8113-a3b58b56147c" + "x-ms-request-id" : "1d9a4f94-e01e-0092-510f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:35 GMT", + "x-ms-client-request-id" : "30f76a3a-e195-4bbc-936a-e83d8b124f60" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey05299874" ] + "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey021288d2", "javapathservicesassignaturesstringtosignuserdelegationkey112959" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[9].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[9].json index 6d042f9560b1..cad6d646678b 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[9].json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturesstringtosignuserdelegationkey[9].json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey0200015d?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey03514718?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "b79ce52a-920e-4682-a87b-a63871acf7f4" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "bb208c37-4232-408d-833b-c6d3fc9de1ad" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA220C5470", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:58 GMT", + "ETag" : "0x8D778264AFCFB7D", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:35 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b521027b-701e-0097-5fd2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:57 GMT", - "x-ms-client-request-id" : "b79ce52a-920e-4682-a87b-a63871acf7f4" + "x-ms-request-id" : "1d9a4fa1-e01e-0092-5c0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:35 GMT", + "x-ms-client-request-id" : "bb208c37-4232-408d-833b-c6d3fc9de1ad" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey03514718/javapathservicesassignaturesstringtosignuserdelegationkey178838?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "2e0fe4ba-9967-4aa6-843e-c6c4c292ee4b" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264B0B1D6C", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:35 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9d0e-101f-004b-510f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:35 GMT", + "x-ms-client-request-id" : "2e0fe4ba-9967-4aa6-843e-c6c4c292ee4b" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey03514718/javapathservicesassignaturesstringtosignuserdelegationkey178838?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "a2afdd21-fe1b-46eb-9da8-2deab8c721be", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9d0f-101f-004b-520f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:35 GMT", + "x-ms-client-request-id" : "a2afdd21-fe1b-46eb-9da8-2deab8c721be" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey03514718/javapathservicesassignaturesstringtosignuserdelegationkey178838?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ae44658d-a379-41ff-88dd-0fd0d208ab89" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264B1BCC71", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:36 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9d10-101f-004b-530f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:36 GMT", + "x-ms-client-request-id" : "ae44658d-a379-41ff-88dd-0fd0d208ab89" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturesstringtosignuserdelegationkey&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "440d4072-c439-4a5b-8002-b32027a0979a" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ce7bcbb2-68d5-4d05-8f3e-5e8cc67a2746" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -34,20 +98,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b52102d3-701e-0097-34d2-902db3000000", - "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey0200015dFri, 01 Nov 2019 16:39:58 GMT\"0x8D75EEA220C5470\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:58 GMT", - "x-ms-client-request-id" : "440d4072-c439-4a5b-8002-b32027a0979a", + "x-ms-request-id" : "1d9a4fe8-e01e-0092-110f-aad9cc000000", + "Body" : "jtfsservicesassignaturesstringtosignuserdelegationkeyjtfsservicesassignaturesstringtosignuserdelegationkey03514718Tue, 03 Dec 2019 19:23:35 GMT\"0x8D778264AFCFB7D\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:36 GMT", + "x-ms-client-request-id" : "ce7bcbb2-68d5-4d05-8f3e-5e8cc67a2746", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey0200015d?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturesstringtosignuserdelegationkey03514718?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "84ea51d9-be7e-4009-8252-77fa6645230b" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "3fee3908-a952-4c90-af63-2f5d450b5676" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -55,11 +119,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b52102dd-701e-0097-3dd2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:58 GMT", - "x-ms-client-request-id" : "84ea51d9-be7e-4009-8252-77fa6645230b" + "x-ms-request-id" : "1d9a4ff7-e01e-0092-1f0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:36 GMT", + "x-ms-client-request-id" : "3fee3908-a952-4c90-af63-2f5d450b5676" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey0200015d" ] + "variables" : [ "jtfsservicesassignaturesstringtosignuserdelegationkey03514718", "javapathservicesassignaturesstringtosignuserdelegationkey178838" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturevaluesnetworktestfile.json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturevaluesnetworktestfile.json index 63e678c3a6bc..475abe44b2ef 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturevaluesnetworktestfile.json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturevaluesnetworktestfile.json @@ -1,53 +1,53 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfile024021889c44?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfile021998aa053d?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "d4bcf863-ed62-46c5-8c89-57176218f63b" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b7e6098a-486c-464f-a6fc-b7777d70be83" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA1D179568", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:49 GMT", + "ETag" : "0x8D7782642C1A4C0", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:22 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520f175-701e-0097-65d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:49 GMT", - "x-ms-client-request-id" : "d4bcf863-ed62-46c5-8c89-57176218f63b" + "x-ms-request-id" : "1d9a41d0-e01e-0092-720f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:21 GMT", + "x-ms-client-request-id" : "b7e6098a-486c-464f-a6fc-b7777d70be83" }, "Exception" : null }, { "Method" : "PUT", - "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfile024021889c44/javapathservicesassignaturevaluesnetworktestfile1970373304?resource=file", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfile021998aa053d/javapathservicesassignaturevaluesnetworktestfile1763995f2b?resource=file", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "4dc4eef2-7408-4822-9de6-ba68e936a20b" + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "c704263c-aafa-4699-b669-abdf609db83b" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA1D5B1C5B", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:50 GMT", + "ETag" : "0x8D7782642CE0251", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:22 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "3074d948-a01f-003f-32d2-90f9a6000000", - "Date" : "Fri, 01 Nov 2019 16:39:50 GMT", - "x-ms-client-request-id" : "4dc4eef2-7408-4822-9de6-ba68e936a20b" + "x-ms-request-id" : "053c9ad8-101f-004b-250f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:21 GMT", + "x-ms-client-request-id" : "c704263c-aafa-4699-b669-abdf609db83b" }, "Exception" : null }, { "Method" : "PATCH", - "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfile024021889c44/javapathservicesassignaturevaluesnetworktestfile1970373304?position=0&action=append", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfile021998aa053d/javapathservicesassignaturevaluesnetworktestfile1763995f2b?position=0&action=append", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "3d35332b-5506-40e6-b655-436d17d3d85a", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "0a567b23-799d-4264-be25-205950a08240", "Content-Type" : "application/octet-stream" }, "Response" : { @@ -57,95 +57,95 @@ "Content-Length" : "0", "StatusCode" : "202", "x-ms-request-server-encrypted" : "true", - "x-ms-request-id" : "3074d94b-a01f-003f-35d2-90f9a6000000", - "Date" : "Fri, 01 Nov 2019 16:39:50 GMT", - "x-ms-client-request-id" : "3d35332b-5506-40e6-b655-436d17d3d85a" + "x-ms-request-id" : "053c9ad9-101f-004b-260f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:21 GMT", + "x-ms-client-request-id" : "0a567b23-799d-4264-be25-205950a08240" }, "Exception" : null }, { "Method" : "PATCH", - "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfile024021889c44/javapathservicesassignaturevaluesnetworktestfile1970373304?position=7&retainUncommittedData=false&close=false&action=flush", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfile021998aa053d/javapathservicesassignaturevaluesnetworktestfile1763995f2b?position=7&retainUncommittedData=false&close=false&action=flush", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "1494821a-4fc1-48f6-ae60-0c9d86faa595" + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b66c3f80-a6c1-41e1-994f-8edd81940d39" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA1D70569F", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:50 GMT", + "ETag" : "0x8D7782642E19125", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:22 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "200", "x-ms-request-server-encrypted" : "true", - "x-ms-request-id" : "3074d94c-a01f-003f-36d2-90f9a6000000", - "Date" : "Fri, 01 Nov 2019 16:39:50 GMT", - "x-ms-client-request-id" : "1494821a-4fc1-48f6-ae60-0c9d86faa595" + "x-ms-request-id" : "053c9ada-101f-004b-270f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:21 GMT", + "x-ms-client-request-id" : "b66c3f80-a6c1-41e1-994f-8edd81940d39" }, "Exception" : null }, { "Method" : "GET", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfile024021889c44/javapathservicesassignaturevaluesnetworktestfile1970373304?sv=2019-02-02&spr=https%2Chttp&st=2019-10-31T16%3A39%3A50Z&se=2019-11-02T16%3A39%3A50Z&sip=0.0.0.0-255.255.255.255&sr=b&sp=racwd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfile021998aa053d/javapathservicesassignaturevaluesnetworktestfile1763995f2b?sv=2019-02-02&spr=https%2Chttp&st=2019-12-02T19%3A23%3A22Z&se=2019-12-04T19%3A23%3A22Z&sip=0.0.0.0-255.255.255.255&sr=b&sp=racwd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "0569f2ae-428d-4f41-85ed-f6102b915141" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f1e66d04-698b-4834-b800-b179fbe3b17d" }, "Response" : { "x-ms-version" : "2019-02-02", "x-ms-lease-status" : "unlocked", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "x-ms-lease-state" : "available", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:50 GMT", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:22 GMT", "retry-after" : "0", "StatusCode" : "200", - "Date" : "Fri, 01 Nov 2019 16:39:50 GMT", + "Date" : "Tue, 03 Dec 2019 19:23:22 GMT", "x-ms-blob-type" : "BlockBlob", "Accept-Ranges" : "bytes", "x-ms-server-encrypted" : "true", "Cache-Control" : "cache", - "ETag" : "0x8D75EEA1D70569F", + "ETag" : "0x8D7782642E19125", "Content-Disposition" : "disposition", - "x-ms-creation-time" : "Fri, 01 Nov 2019 16:39:50 GMT", + "x-ms-creation-time" : "Tue, 03 Dec 2019 19:23:22 GMT", "Content-Length" : "7", - "x-ms-request-id" : "b520f337-701e-0097-03d2-902db3000000", + "x-ms-request-id" : "1d9a421a-e01e-0092-370f-aad9cc000000", "Body" : "default", - "x-ms-client-request-id" : "0569f2ae-428d-4f41-85ed-f6102b915141", + "x-ms-client-request-id" : "f1e66d04-698b-4834-b800-b179fbe3b17d", "Content-Language" : "language", "Content-Type" : "type" }, "Exception" : null }, { "Method" : "HEAD", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfile024021889c44/javapathservicesassignaturevaluesnetworktestfile1970373304?sv=2019-02-02&spr=https%2Chttp&st=2019-10-31T16%3A39%3A50Z&se=2019-11-02T16%3A39%3A50Z&sip=0.0.0.0-255.255.255.255&sr=b&sp=racwd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfile021998aa053d/javapathservicesassignaturevaluesnetworktestfile1763995f2b?sv=2019-02-02&spr=https%2Chttp&st=2019-12-02T19%3A23%3A22Z&se=2019-12-04T19%3A23%3A22Z&sip=0.0.0.0-255.255.255.255&sr=b&sp=racwd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "c6a01276-697d-4249-980a-891287b259d3" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "5899b073-da08-4624-b135-5e93232df44a" }, "Response" : { "x-ms-version" : "2019-02-02", "x-ms-lease-status" : "unlocked", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "x-ms-lease-state" : "available", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:50 GMT", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:22 GMT", "retry-after" : "0", "StatusCode" : "200", - "Date" : "Fri, 01 Nov 2019 16:39:50 GMT", + "Date" : "Tue, 03 Dec 2019 19:23:22 GMT", "x-ms-blob-type" : "BlockBlob", "Accept-Ranges" : "bytes", "x-ms-server-encrypted" : "true", "x-ms-access-tier-inferred" : "true", "x-ms-access-tier" : "Hot", "Cache-Control" : "cache", - "ETag" : "0x8D75EEA1D70569F", + "ETag" : "0x8D7782642E19125", "Content-Disposition" : "disposition", "Content-Encoding" : "encoding", - "x-ms-creation-time" : "Fri, 01 Nov 2019 16:39:50 GMT", + "x-ms-creation-time" : "Tue, 03 Dec 2019 19:23:22 GMT", "Content-Length" : "7", - "x-ms-request-id" : "b520f380-701e-0097-45d2-902db3000000", - "x-ms-client-request-id" : "c6a01276-697d-4249-980a-891287b259d3", + "x-ms-request-id" : "1d9a4234-e01e-0092-4f0f-aad9cc000000", + "x-ms-client-request-id" : "5899b073-da08-4624-b135-5e93232df44a", "Content-Language" : "language", "Content-Type" : "type" }, @@ -155,8 +155,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturevaluesnetworktestfile&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "47bea717-d97b-4ded-b7e4-f2c7db7db0b8" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ce8331f7-f19d-40f2-b259-5bd981914982" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -164,20 +164,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520f3ab-701e-0097-6cd2-902db3000000", - "Body" : "jtfsservicesassignaturevaluesnetworktestfilejtfsservicesassignaturevaluesnetworktestfile024021889c44Fri, 01 Nov 2019 16:39:49 GMT\"0x8D75EEA1D179568\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:50 GMT", - "x-ms-client-request-id" : "47bea717-d97b-4ded-b7e4-f2c7db7db0b8", + "x-ms-request-id" : "1d9a424c-e01e-0092-620f-aad9cc000000", + "Body" : "jtfsservicesassignaturevaluesnetworktestfilejtfsservicesassignaturevaluesnetworktestfile021998aa053dTue, 03 Dec 2019 19:23:22 GMT\"0x8D7782642C1A4C0\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:22 GMT", + "x-ms-client-request-id" : "ce8331f7-f19d-40f2-b259-5bd981914982", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfile024021889c44?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfile021998aa053d?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "adf18002-7db1-4bcd-bf4c-5527be73b588" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "636d8d50-2f35-4f34-a48e-40410085d58a" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -185,11 +185,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520f3c9-701e-0097-09d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:50 GMT", - "x-ms-client-request-id" : "adf18002-7db1-4bcd-bf4c-5527be73b588" + "x-ms-request-id" : "1d9a4259-e01e-0092-6e0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:22 GMT", + "x-ms-client-request-id" : "636d8d50-2f35-4f34-a48e-40410085d58a" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturevaluesnetworktestfile024021889c44", "javapathservicesassignaturevaluesnetworktestfile1970373304", "2019-11-01T16:39:50.562Z", "2019-11-01T16:39:50.562Z" ] + "variables" : [ "jtfsservicesassignaturevaluesnetworktestfile021998aa053d", "javapathservicesassignaturevaluesnetworktestfile1763995f2b", "2019-12-03T19:23:22.218798900Z", "2019-12-03T19:23:22.221828700Z" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturevaluesnetworktestfilesystem.json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturevaluesnetworktestfilesystem.json index 81edb7aa4043..a50b4ec97422 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturevaluesnetworktestfilesystem.json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturevaluesnetworktestfilesystem.json @@ -1,54 +1,118 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "http://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfilesystem028360d64?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfilesystem033843783?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", - "x-ms-client-request-id" : "26bd9f1c-40b0-41ea-8ab0-d45be570b6bd" + "x-ms-client-request-id" : "b5f3268c-1ef5-4755-bd70-33a92bcd713b" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D76D5388999057", - "Last-Modified" : "Wed, 20 Nov 2019 00:49:43 GMT", + "ETag" : "0x8D77826ACDA2711", + "Last-Modified" : "Tue, 03 Dec 2019 19:26:20 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "69f9ff27-201e-006a-733c-9f12d1000000", - "Date" : "Wed, 20 Nov 2019 00:49:43 GMT", - "x-ms-client-request-id" : "26bd9f1c-40b0-41ea-8ab0-d45be570b6bd" + "x-ms-request-id" : "6f6c6137-201e-0061-560f-aa0aa5000000", + "Date" : "Tue, 03 Dec 2019 19:26:19 GMT", + "x-ms-client-request-id" : "b5f3268c-1ef5-4755-bd70-33a92bcd713b" }, "Exception" : null }, { "Method" : "PUT", - "Uri" : "http://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfilesystem028360d64?restype=container&comp=acl", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfilesystem033843783/javapathservicesassignaturevaluesnetworktestfilesystem1617487?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "59afa8b2-d63f-4b6b-a1d8-399b6fe12df6" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826AD43E3F3", + "Last-Modified" : "Tue, 03 Dec 2019 19:26:20 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "9a73b01a-501f-0080-1c0f-aaedd0000000", + "Date" : "Tue, 03 Dec 2019 19:26:19 GMT", + "x-ms-client-request-id" : "59afa8b2-d63f-4b6b-a1d8-399b6fe12df6" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfilesystem033843783/javapathservicesassignaturevaluesnetworktestfilesystem1617487?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "6f914881-0a66-43f9-9ca3-a38231374bf9", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "9a73b034-501f-0080-360f-aaedd0000000", + "Date" : "Tue, 03 Dec 2019 19:26:20 GMT", + "x-ms-client-request-id" : "6f914881-0a66-43f9-9ca3-a38231374bf9" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfilesystem033843783/javapathservicesassignaturevaluesnetworktestfilesystem1617487?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "50186e3f-c85c-4dd1-82be-efbdd221f349" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77826AD5F799A", + "Last-Modified" : "Tue, 03 Dec 2019 19:26:20 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "9a73b040-501f-0080-420f-aaedd0000000", + "Date" : "Tue, 03 Dec 2019 19:26:20 GMT", + "x-ms-client-request-id" : "50186e3f-c85c-4dd1-82be-efbdd221f349" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfilesystem033843783?restype=container&comp=acl", "Headers" : { "x-ms-version" : "2019-02-02", "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", - "x-ms-client-request-id" : "a9fe98aa-c9c3-438b-ad56-70fedd14d3f0", + "x-ms-client-request-id" : "f440e63e-395f-4aab-98c2-46e9f05cc63b", "Content-Type" : "application/xml; charset=utf-8" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D76D5388C983D6", - "Last-Modified" : "Wed, 20 Nov 2019 00:49:44 GMT", + "ETag" : "0x8D77826AD705C76", + "Last-Modified" : "Tue, 03 Dec 2019 19:26:21 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "200", - "x-ms-request-id" : "69f9ffb2-201e-006a-763c-9f12d1000000", - "Date" : "Wed, 20 Nov 2019 00:49:43 GMT", - "x-ms-client-request-id" : "a9fe98aa-c9c3-438b-ad56-70fedd14d3f0" + "x-ms-request-id" : "6f6c6343-201e-0061-2d0f-aa0aa5000000", + "Date" : "Tue, 03 Dec 2019 19:26:20 GMT", + "x-ms-client-request-id" : "f440e63e-395f-4aab-98c2-46e9f05cc63b" }, "Exception" : null }, { "Method" : "GET", - "Uri" : "http://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfilesystem028360d64?recursive=false&upn=false&resource=filesystem&sv=2019-02-02&si=0000&sr=c&sig=REDACTED", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfilesystem033843783?recursive=false&upn=false&resource=filesystem&sv=2019-02-02&si=0000&sr=c&sig=REDACTED", "Headers" : { "x-ms-version" : "2019-02-02", "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", - "x-ms-client-request-id" : "4db3d36e-eb47-4e5c-925c-e0600b384c18" + "x-ms-client-request-id" : "096ded8a-9525-4f02-9098-6930b6a95879" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -56,20 +120,20 @@ "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "f11ca5a0-701f-001f-5d3c-9f956a000000", - "Body" : "{\"paths\":[]}\n", - "Date" : "Wed, 20 Nov 2019 00:49:44 GMT", - "x-ms-client-request-id" : "4db3d36e-eb47-4e5c-925c-e0600b384c18", + "x-ms-request-id" : "9a73b832-501f-0080-270f-aaedd0000000", + "Body" : "{\"paths\":[{\"contentLength\":\"7\",\"etag\":\"0x8D77826AD5F799A\",\"group\":\"$superuser\",\"lastModified\":\"Tue, 03 Dec 2019 19:26:20 GMT\",\"name\":\"javapathservicesassignaturevaluesnetworktestfilesystem1617487\",\"owner\":\"$superuser\",\"permissions\":\"rw-r-----\"}]}\n", + "Date" : "Tue, 03 Dec 2019 19:26:50 GMT", + "x-ms-client-request-id" : "096ded8a-9525-4f02-9098-6930b6a95879", "Content-Type" : "application/json;charset=utf-8" }, "Exception" : null }, { "Method" : "GET", - "Uri" : "http://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfilesystem028360d64?recursive=false&upn=false&resource=filesystem&sv=2019-02-02&se=2019-11-21T00%3A49%3A44Z&sr=c&sp=racwdl&sig=REDACTED", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfilesystem033843783?recursive=false&upn=false&resource=filesystem&sv=2019-02-02&se=2019-12-04T19%3A26%3A20Z&sr=c&sp=racwdl&sig=REDACTED", "Headers" : { "x-ms-version" : "2019-02-02", "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", - "x-ms-client-request-id" : "77a02632-c354-48d0-a028-324a0431134f" + "x-ms-client-request-id" : "da4c12a4-c49f-4879-8d28-d97af7ebff23" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -77,20 +141,20 @@ "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "f11ca5a1-701f-001f-5e3c-9f956a000000", - "Body" : "{\"paths\":[]}\n", - "Date" : "Wed, 20 Nov 2019 00:49:44 GMT", - "x-ms-client-request-id" : "77a02632-c354-48d0-a028-324a0431134f", + "x-ms-request-id" : "9a73b835-501f-0080-2a0f-aaedd0000000", + "Body" : "{\"paths\":[{\"contentLength\":\"7\",\"etag\":\"0x8D77826AD5F799A\",\"group\":\"$superuser\",\"lastModified\":\"Tue, 03 Dec 2019 19:26:20 GMT\",\"name\":\"javapathservicesassignaturevaluesnetworktestfilesystem1617487\",\"owner\":\"$superuser\",\"permissions\":\"rw-r-----\"}]}\n", + "Date" : "Tue, 03 Dec 2019 19:26:50 GMT", + "x-ms-client-request-id" : "da4c12a4-c49f-4879-8d28-d97af7ebff23", "Content-Type" : "application/json;charset=utf-8" }, "Exception" : null }, { "Method" : "GET", - "Uri" : "http://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturevaluesnetworktestfilesystem&comp=list", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturevaluesnetworktestfilesystem&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", - "x-ms-client-request-id" : "1db89c5f-e2a2-4568-a59a-e8dc5df72374" + "x-ms-client-request-id" : "14351dfb-1ff1-4628-99e7-aeb20f1b26d0" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -98,20 +162,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "69f9fffe-201e-006a-343c-9f12d1000000", - "Body" : "jtfsservicesassignaturevaluesnetworktestfilesystemjtfsservicesassignaturevaluesnetworktestfilesystem028360d64Wed, 20 Nov 2019 00:49:44 GMT\"0x8D76D5388C983D6\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Wed, 20 Nov 2019 00:49:43 GMT", - "x-ms-client-request-id" : "1db89c5f-e2a2-4568-a59a-e8dc5df72374", + "x-ms-request-id" : "6f6cae68-201e-0061-6e0f-aa0aa5000000", + "Body" : "jtfsservicesassignaturevaluesnetworktestfilesystemjtfsservicesassignaturevaluesnetworktestfilesystem033843783Tue, 03 Dec 2019 19:26:21 GMT\"0x8D77826AD705C76\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:26:50 GMT", + "x-ms-client-request-id" : "14351dfb-1ff1-4628-99e7-aeb20f1b26d0", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "http://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfilesystem028360d64?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfilesystem033843783?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", - "x-ms-client-request-id" : "1f189368-00d0-4cac-bd65-f5e9fdd1bf26" + "x-ms-client-request-id" : "f7ad5e8d-2d73-441e-8cf0-9a9f9610b7ef" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -119,11 +183,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "69fa0021-201e-006a-543c-9f12d1000000", - "Date" : "Wed, 20 Nov 2019 00:49:44 GMT", - "x-ms-client-request-id" : "1f189368-00d0-4cac-bd65-f5e9fdd1bf26" + "x-ms-request-id" : "6f6caee3-201e-0061-5e0f-aa0aa5000000", + "Date" : "Tue, 03 Dec 2019 19:26:50 GMT", + "x-ms-client-request-id" : "f7ad5e8d-2d73-441e-8cf0-9a9f9610b7ef" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturevaluesnetworktestfilesystem028360d64", "2019-11-20T00:49:43.982492900Z", "2019-11-20T00:49:44.108466700Z" ] + "variables" : [ "jtfsservicesassignaturevaluesnetworktestfilesystem033843783", "javapathservicesassignaturevaluesnetworktestfilesystem1617487", "2019-12-03T19:26:20.889589900Z", "2019-12-03T19:26:20.998616900Z" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturevaluesnetworktestfilesystemuserdelegation.json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturevaluesnetworktestfilesystemuserdelegation.json index 3794e8d41a1f..8577fe74cec0 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturevaluesnetworktestfilesystemuserdelegation.json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturevaluesnetworktestfilesystemuserdelegation.json @@ -1,23 +1,87 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfilesystemuser0097440?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfilesystemuser0761174?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "e7d5b361-8089-44b3-9b72-bb64645985ec" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "2bcee51e-3f99-4747-a754-dcb157cc9e6e" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA1EEA5F86", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:53 GMT", + "ETag" : "0x8D77826444380B0", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:24 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520f7bf-701e-0097-24d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:52 GMT", - "x-ms-client-request-id" : "e7d5b361-8089-44b3-9b72-bb64645985ec" + "x-ms-request-id" : "1d9a4494-e01e-0092-5b0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:24 GMT", + "x-ms-client-request-id" : "2bcee51e-3f99-4747-a754-dcb157cc9e6e" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfilesystemuser0761174/c4f0a02beeff415796baeafc9f590785e9b2c22ac8854f0890fa769ef1799ccf?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e197a164-9466-46f7-87c7-5ef546a48f44" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264458A7C5", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:24 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "053c9ae5-101f-004b-310f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:23 GMT", + "x-ms-client-request-id" : "e197a164-9466-46f7-87c7-5ef546a48f44" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfilesystemuser0761174/c4f0a02beeff415796baeafc9f590785e9b2c22ac8854f0890fa769ef1799ccf?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8add85a4-b693-4876-bb9e-7b3638affe26", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9ae6-101f-004b-320f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:23 GMT", + "x-ms-client-request-id" : "8add85a4-b693-4876-bb9e-7b3638affe26" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfilesystemuser0761174/c4f0a02beeff415796baeafc9f590785e9b2c22ac8854f0890fa769ef1799ccf?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ae6a947b-00a8-44a7-8616-ff1e936f60b9" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D778264469DB36", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:24 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "053c9ae7-101f-004b-330f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:23 GMT", + "x-ms-client-request-id" : "ae6a947b-00a8-44a7-8616-ff1e936f60b9" }, "Exception" : null }, { @@ -25,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?restype=service&comp=userdelegationkey", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "c89c7f64-1702-4755-86ab-7bae38bac7a7", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "930a8cf4-cbcf-4552-9e10-b01dcb3b5b7e", "Content-Type" : "application/xml; charset=utf-8" }, "Response" : { @@ -35,20 +99,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520f897-701e-0097-5dd2-902db3000000", - "Body" : "cbe88567-c3b6-4a94-a669-62c90822fa1aac4e70b2-f708-4d63-9fa5-2a554304e4f92019-11-01T16:39:53Z2019-11-02T16:39:53Zb2019-02-02UkVEQUNURUQ=", - "Date" : "Fri, 01 Nov 2019 16:39:52 GMT", - "x-ms-client-request-id" : "c89c7f64-1702-4755-86ab-7bae38bac7a7", + "x-ms-request-id" : "1d9a4545-e01e-0092-780f-aad9cc000000", + "Body" : "34c50fef-75aa-445a-a7ce-e54bf63ce32a54af99f2-990c-4b5f-a372-f1a5bd487fd72019-12-03T19:23:25Z2019-12-04T19:23:24Zb2019-02-02UkVEQUNURUQ=", + "Date" : "Tue, 03 Dec 2019 19:23:25 GMT", + "x-ms-client-request-id" : "930a8cf4-cbcf-4552-9e10-b01dcb3b5b7e", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "GET", - "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfilesystemuser0097440?recursive=false&upn=false&resource=filesystem&sv=2019-02-02&se=2019-11-02T16%3A39%3A53Z&skoid=c4f48289-bb84-4086-b250-6f94a8f64cee&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2019-11-01T16%3A39%3A53Z&ske=2019-11-02T16%3A39%3A53Z&sks=b&skv=2019-02-02&sr=c&sp=racwdl&sig=REDACTED", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfilesystemuser0761174?recursive=false&upn=false&resource=filesystem&sv=2019-02-02&se=2019-12-04T19%3A23%3A24Z&skoid=c4f48289-bb84-4086-b250-6f94a8f64cee&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2019-12-03T19%3A23%3A25Z&ske=2019-12-04T19%3A23%3A24Z&sks=b&skv=2019-02-02&sr=c&sp=racwdl&sig=REDACTED", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "4dfb7e82-fb00-4c36-9813-756dd84cf5dd" + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "bbba05b5-f2cb-4577-8b4f-817177f9ca11" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -56,10 +120,10 @@ "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "3074d957-a01f-003f-3bd2-90f9a6000000", - "Body" : "{\"paths\":[]}\n", - "Date" : "Fri, 01 Nov 2019 16:39:53 GMT", - "x-ms-client-request-id" : "4dfb7e82-fb00-4c36-9813-756dd84cf5dd", + "x-ms-request-id" : "053c9ae8-101f-004b-340f-aa7fe0000000", + "Body" : "{\"paths\":[{\"contentLength\":\"7\",\"etag\":\"0x8D778264469DB36\",\"group\":\"$superuser\",\"lastModified\":\"Tue, 03 Dec 2019 19:23:24 GMT\",\"name\":\"c4f0a02beeff415796baeafc9f590785e9b2c22ac8854f0890fa769ef1799ccf\",\"owner\":\"$superuser\",\"permissions\":\"rw-r-----\"}]}\n", + "Date" : "Tue, 03 Dec 2019 19:23:24 GMT", + "x-ms-client-request-id" : "bbba05b5-f2cb-4577-8b4f-817177f9ca11", "Content-Type" : "application/json;charset=utf-8" }, "Exception" : null @@ -68,8 +132,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturevaluesnetworktestfilesystemuser&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "8df2b709-b293-4698-845e-0ba197dbf581" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "aff0a4cc-d183-42c1-a4cc-e58fe43d93c8" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -77,20 +141,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520f8d4-701e-0097-13d2-902db3000000", - "Body" : "jtfsservicesassignaturevaluesnetworktestfilesystemuserjtfsservicesassignaturevaluesnetworktestfilesystemuser0097440Fri, 01 Nov 2019 16:39:53 GMT\"0x8D75EEA1EEA5F86\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:53 GMT", - "x-ms-client-request-id" : "8df2b709-b293-4698-845e-0ba197dbf581", + "x-ms-request-id" : "1d9a456a-e01e-0092-180f-aad9cc000000", + "Body" : "jtfsservicesassignaturevaluesnetworktestfilesystemuserjtfsservicesassignaturevaluesnetworktestfilesystemuser0761174Tue, 03 Dec 2019 19:23:24 GMT\"0x8D77826444380B0\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:25 GMT", + "x-ms-client-request-id" : "aff0a4cc-d183-42c1-a4cc-e58fe43d93c8", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfilesystemuser0097440?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfilesystemuser0761174?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "2981f2be-13da-4afd-9c8f-bd3e8977ef4b" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "29943565-e845-4f7d-9329-015681090756" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -98,11 +162,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520f8fe-701e-0097-38d2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:53 GMT", - "x-ms-client-request-id" : "2981f2be-13da-4afd-9c8f-bd3e8977ef4b" + "x-ms-request-id" : "1d9a4571-e01e-0092-1d0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:25 GMT", + "x-ms-client-request-id" : "29943565-e845-4f7d-9329-015681090756" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturevaluesnetworktestfilesystemuser0097440", "2019-11-01T16:39:53.049Z", "c4f48289-bb84-4086-b250-6f94a8f64cee", "72f988bf-86f1-41af-91ab-2d7cd011db47" ] + "variables" : [ "jtfsservicesassignaturevaluesnetworktestfilesystemuser0761174", "c4f0a02beeff415796baeafc9f590785e9b2c22ac8854f0890fa769ef1799ccf", "2019-12-03T19:23:24.786994200Z", "c4f48289-bb84-4086-b250-6f94a8f64cee", "72f988bf-86f1-41af-91ab-2d7cd011db47" ] } \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturevaluesnetworktestfileuserdelegation.json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturevaluesnetworktestfileuserdelegation.json index eb6c292c3bee..c6e4bdf587b9 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturevaluesnetworktestfileuserdelegation.json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestservicesassignaturevaluesnetworktestfileuserdelegation.json @@ -1,53 +1,53 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfileuserdelega0127843?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfileuserdelega0282514?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "dca4b0f0-0c0a-4767-86d0-783fbef9017e" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "4a19f662-7f9e-4d85-bf5b-a0c15a71a228" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA1DB2DFF3", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:50 GMT", + "ETag" : "0x8D77826437F715F", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:23 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "b520f3ed-701e-0097-2bd2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:50 GMT", - "x-ms-client-request-id" : "dca4b0f0-0c0a-4767-86d0-783fbef9017e" + "x-ms-request-id" : "1d9a4349-e01e-0092-3f0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:23 GMT", + "x-ms-client-request-id" : "4a19f662-7f9e-4d85-bf5b-a0c15a71a228" }, "Exception" : null }, { "Method" : "PUT", - "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfileuserdelega0127843/5d11840843384c74aaf643899d78f43fc2dcc7d5044b400e8be80a7e2cce14de?resource=file", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfileuserdelega0282514/fd751437b8cb4b1d95049e2526d45ca124fd02ae23eb4e6a9bb6bb6718d51e3a?resource=file", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "0022df75-b5dc-490e-b128-22e27380e3ee" + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "80483912-f8c2-4ff3-a83e-f6ff65cbbdb2" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA1DBD4830", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:51 GMT", + "ETag" : "0x8D77826438CA200", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:23 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "3074d94d-a01f-003f-37d2-90f9a6000000", - "Date" : "Fri, 01 Nov 2019 16:39:50 GMT", - "x-ms-client-request-id" : "0022df75-b5dc-490e-b128-22e27380e3ee" + "x-ms-request-id" : "053c9adf-101f-004b-2c0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:22 GMT", + "x-ms-client-request-id" : "80483912-f8c2-4ff3-a83e-f6ff65cbbdb2" }, "Exception" : null }, { "Method" : "PATCH", - "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfileuserdelega0127843/5d11840843384c74aaf643899d78f43fc2dcc7d5044b400e8be80a7e2cce14de?position=0&action=append", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfileuserdelega0282514/fd751437b8cb4b1d95049e2526d45ca124fd02ae23eb4e6a9bb6bb6718d51e3a?position=0&action=append", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "afefc817-b80f-45e9-9053-f5b36f669e91", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "be399746-7a5a-49f5-9fa5-5d071b190916", "Content-Type" : "application/octet-stream" }, "Response" : { @@ -57,31 +57,31 @@ "Content-Length" : "0", "StatusCode" : "202", "x-ms-request-server-encrypted" : "true", - "x-ms-request-id" : "3074d94e-a01f-003f-38d2-90f9a6000000", - "Date" : "Fri, 01 Nov 2019 16:39:50 GMT", - "x-ms-client-request-id" : "afefc817-b80f-45e9-9053-f5b36f669e91" + "x-ms-request-id" : "053c9ae0-101f-004b-2d0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:22 GMT", + "x-ms-client-request-id" : "be399746-7a5a-49f5-9fa5-5d071b190916" }, "Exception" : null }, { "Method" : "PATCH", - "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfileuserdelega0127843/5d11840843384c74aaf643899d78f43fc2dcc7d5044b400e8be80a7e2cce14de?position=7&retainUncommittedData=false&close=false&action=flush", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsservicesassignaturevaluesnetworktestfileuserdelega0282514/fd751437b8cb4b1d95049e2526d45ca124fd02ae23eb4e6a9bb6bb6718d51e3a?position=7&retainUncommittedData=false&close=false&action=flush", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "3718df04-ae29-43f2-98d6-e181e5c8e80c" + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "43a08d43-0ca7-478f-8ea3-e2ddfbcb5d87" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D75EEA1DD0E7AC", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:51 GMT", + "ETag" : "0x8D7782643A05526", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:23 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "200", "x-ms-request-server-encrypted" : "true", - "x-ms-request-id" : "3074d94f-a01f-003f-39d2-90f9a6000000", - "Date" : "Fri, 01 Nov 2019 16:39:50 GMT", - "x-ms-client-request-id" : "3718df04-ae29-43f2-98d6-e181e5c8e80c" + "x-ms-request-id" : "053c9ae1-101f-004b-2e0f-aa7fe0000000", + "Date" : "Tue, 03 Dec 2019 19:23:22 GMT", + "x-ms-client-request-id" : "43a08d43-0ca7-478f-8ea3-e2ddfbcb5d87" }, "Exception" : null }, { @@ -89,8 +89,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?restype=service&comp=userdelegationkey", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "d3cf6ebd-51e9-43b3-862f-9ee11c310b90", + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f9d28ece-45cc-45bd-9a78-5235e1d80581", "Content-Type" : "application/xml; charset=utf-8" }, "Response" : { @@ -99,75 +99,75 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520f5b3-701e-0097-4bd2-902db3000000", - "Body" : "5f6750ec-3ec9-4f51-8675-2a1d587ff4f53070fecf-c88e-4679-b74b-b01fc4480c842019-11-01T16:39:52Z2019-11-02T16:39:51Zb2019-02-02UkVEQUNURUQ=", - "Date" : "Fri, 01 Nov 2019 16:39:52 GMT", - "x-ms-client-request-id" : "d3cf6ebd-51e9-43b3-862f-9ee11c310b90", + "x-ms-request-id" : "1d9a4451-e01e-0092-240f-aad9cc000000", + "Body" : "1904bd24-0950-4e2d-aa0f-cb251becccbb6205002a-2dc3-499f-9d7f-74c99eac30a62019-12-02T19:23:23Z2019-12-04T19:23:23Zb2019-02-02UkVEQUNURUQ=", + "Date" : "Tue, 03 Dec 2019 19:23:24 GMT", + "x-ms-client-request-id" : "f9d28ece-45cc-45bd-9a78-5235e1d80581", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "GET", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfileuserdelega0127843/5d11840843384c74aaf643899d78f43fc2dcc7d5044b400e8be80a7e2cce14de?sv=2019-02-02&spr=https%2Chttp&st=2019-10-31T16%3A39%3A51Z&se=2019-11-02T16%3A39%3A51Z&sip=0.0.0.0-255.255.255.255&skoid=c4f48289-bb84-4086-b250-6f94a8f64cee&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2019-11-01T16%3A39%3A52Z&ske=2019-11-02T16%3A39%3A51Z&sks=b&skv=2019-02-02&sr=b&sp=racwd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfileuserdelega0282514/fd751437b8cb4b1d95049e2526d45ca124fd02ae23eb4e6a9bb6bb6718d51e3a?sv=2019-02-02&spr=https%2Chttp&st=2019-12-02T19%3A23%3A23Z&se=2019-12-04T19%3A23%3A23Z&sip=0.0.0.0-255.255.255.255&skoid=c4f48289-bb84-4086-b250-6f94a8f64cee&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2019-12-02T19%3A23%3A23Z&ske=2019-12-04T19%3A23%3A23Z&sks=b&skv=2019-02-02&sr=b&sp=racwd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "6d195edd-fee5-4abb-bb32-45d68ae5cf0c" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d6a88775-39b7-4203-8dce-3565e919f4e4" }, "Response" : { "x-ms-version" : "2019-02-02", "x-ms-lease-status" : "unlocked", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "x-ms-lease-state" : "available", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:51 GMT", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:23 GMT", "retry-after" : "0", "StatusCode" : "200", - "Date" : "Fri, 01 Nov 2019 16:39:52 GMT", + "Date" : "Tue, 03 Dec 2019 19:23:24 GMT", "x-ms-blob-type" : "BlockBlob", "Accept-Ranges" : "bytes", "x-ms-server-encrypted" : "true", "Cache-Control" : "cache", - "ETag" : "0x8D75EEA1DD0E7AC", + "ETag" : "0x8D7782643A05526", "Content-Disposition" : "disposition", - "x-ms-creation-time" : "Fri, 01 Nov 2019 16:39:51 GMT", + "x-ms-creation-time" : "Tue, 03 Dec 2019 19:23:23 GMT", "Content-Length" : "7", - "x-ms-request-id" : "b520f6f7-701e-0097-6ed2-902db3000000", + "x-ms-request-id" : "1d9a4462-e01e-0092-350f-aad9cc000000", "Body" : "default", - "x-ms-client-request-id" : "6d195edd-fee5-4abb-bb32-45d68ae5cf0c", + "x-ms-client-request-id" : "d6a88775-39b7-4203-8dce-3565e919f4e4", "Content-Language" : "language", "Content-Type" : "type" }, "Exception" : null }, { "Method" : "HEAD", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfileuserdelega0127843/5d11840843384c74aaf643899d78f43fc2dcc7d5044b400e8be80a7e2cce14de?sv=2019-02-02&spr=https%2Chttp&st=2019-10-31T16%3A39%3A51Z&se=2019-11-02T16%3A39%3A51Z&sip=0.0.0.0-255.255.255.255&skoid=c4f48289-bb84-4086-b250-6f94a8f64cee&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2019-11-01T16%3A39%3A52Z&ske=2019-11-02T16%3A39%3A51Z&sks=b&skv=2019-02-02&sr=b&sp=racwd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfileuserdelega0282514/fd751437b8cb4b1d95049e2526d45ca124fd02ae23eb4e6a9bb6bb6718d51e3a?sv=2019-02-02&spr=https%2Chttp&st=2019-12-02T19%3A23%3A23Z&se=2019-12-04T19%3A23%3A23Z&sip=0.0.0.0-255.255.255.255&skoid=c4f48289-bb84-4086-b250-6f94a8f64cee&sktid=72f988bf-86f1-41af-91ab-2d7cd011db47&skt=2019-12-02T19%3A23%3A23Z&ske=2019-12-04T19%3A23%3A23Z&sks=b&skv=2019-02-02&sr=b&sp=racwd&sig=REDACTED&rscc=cache&rscd=disposition&rsce=encoding&rscl=language&rsct=type", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "4619e89a-4652-4085-a67b-cfd8cb97b20d" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "456a53df-6767-478a-b2c8-44abe801ebde" }, "Response" : { "x-ms-version" : "2019-02-02", "x-ms-lease-status" : "unlocked", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "x-ms-lease-state" : "available", - "Last-Modified" : "Fri, 01 Nov 2019 16:39:51 GMT", + "Last-Modified" : "Tue, 03 Dec 2019 19:23:23 GMT", "retry-after" : "0", "StatusCode" : "200", - "Date" : "Fri, 01 Nov 2019 16:39:52 GMT", + "Date" : "Tue, 03 Dec 2019 19:23:24 GMT", "x-ms-blob-type" : "BlockBlob", "Accept-Ranges" : "bytes", "x-ms-server-encrypted" : "true", "x-ms-access-tier-inferred" : "true", "x-ms-access-tier" : "Hot", "Cache-Control" : "cache", - "ETag" : "0x8D75EEA1DD0E7AC", + "ETag" : "0x8D7782643A05526", "Content-Disposition" : "disposition", "Content-Encoding" : "encoding", - "x-ms-creation-time" : "Fri, 01 Nov 2019 16:39:51 GMT", + "x-ms-creation-time" : "Tue, 03 Dec 2019 19:23:23 GMT", "Content-Length" : "7", - "x-ms-request-id" : "b520f78c-701e-0097-74d2-902db3000000", - "x-ms-client-request-id" : "4619e89a-4652-4085-a67b-cfd8cb97b20d", + "x-ms-request-id" : "1d9a4472-e01e-0092-3f0f-aad9cc000000", + "x-ms-client-request-id" : "456a53df-6767-478a-b2c8-44abe801ebde", "Content-Language" : "language", "Content-Type" : "type" }, @@ -177,8 +177,8 @@ "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsservicesassignaturevaluesnetworktestfileuserdelega&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "529ccd9c-ce5d-4633-82a4-c404b8c3c9a3" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "7eb34ed5-0cb9-428c-97d8-3b8354440f28" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -186,20 +186,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "b520f79b-701e-0097-03d2-902db3000000", - "Body" : "jtfsservicesassignaturevaluesnetworktestfileuserdelegajtfsservicesassignaturevaluesnetworktestfileuserdelega0127843Fri, 01 Nov 2019 16:39:50 GMT\"0x8D75EEA1DB2DFF3\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Fri, 01 Nov 2019 16:39:52 GMT", - "x-ms-client-request-id" : "529ccd9c-ce5d-4633-82a4-c404b8c3c9a3", + "x-ms-request-id" : "1d9a447e-e01e-0092-490f-aad9cc000000", + "Body" : "jtfsservicesassignaturevaluesnetworktestfileuserdelegajtfsservicesassignaturevaluesnetworktestfileuserdelega0282514Tue, 03 Dec 2019 19:23:23 GMT\"0x8D77826437F715F\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Tue, 03 Dec 2019 19:23:24 GMT", + "x-ms-client-request-id" : "7eb34ed5-0cb9-428c-97d8-3b8354440f28", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfileuserdelega0127843?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsservicesassignaturevaluesnetworktestfileuserdelega0282514?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.0.0 1.8.0_221; Windows 10 10.0", - "x-ms-client-request-id" : "c835a82f-af50-4477-8f47-fcda8a4500d4" + "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "51326d8b-390b-454b-a9b6-523be580e443" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -207,11 +207,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "b520f7a7-701e-0097-0fd2-902db3000000", - "Date" : "Fri, 01 Nov 2019 16:39:52 GMT", - "x-ms-client-request-id" : "c835a82f-af50-4477-8f47-fcda8a4500d4" + "x-ms-request-id" : "1d9a4485-e01e-0092-4e0f-aad9cc000000", + "Date" : "Tue, 03 Dec 2019 19:23:24 GMT", + "x-ms-client-request-id" : "51326d8b-390b-454b-a9b6-523be580e443" }, "Exception" : null } ], - "variables" : [ "jtfsservicesassignaturevaluesnetworktestfileuserdelega0127843", "5d11840843384c74aaf643899d78f43fc2dcc7d5044b400e8be80a7e2cce14de", "2019-11-01T16:39:51.192Z", "2019-11-01T16:39:51.192Z", "c4f48289-bb84-4086-b250-6f94a8f64cee", "72f988bf-86f1-41af-91ab-2d7cd011db47" ] + "variables" : [ "jtfsservicesassignaturevaluesnetworktestfileuserdelega0282514", "fd751437b8cb4b1d95049e2526d45ca124fd02ae23eb4e6a9bb6bb6718d51e3a", "2019-12-03T19:23:23.467726200Z", "2019-12-03T19:23:23.467726200Z", "2019-12-03T19:23:23.483729200Z", "2019-12-03T19:23:23.483729200Z", "c4f48289-bb84-4086-b250-6f94a8f64cee", "72f988bf-86f1-41af-91ab-2d7cd011db47" ] } \ No newline at end of file From fe1a32f7624476532621fe6486ab675e58cbd7a7 Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Mon, 9 Dec 2019 10:12:12 -0800 Subject: [PATCH 18/23] reverted two changes --- .../java/com/azure/storage/blob/BlobContainerAsyncClient.java | 1 + sdk/storage/azure-storage-common/CHANGELOG.md | 1 + 2 files changed, 2 insertions(+) diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java index ad9472112b3a..d0456b868a42 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java @@ -45,6 +45,7 @@ import java.util.ArrayList; import java.util.List; import java.util.Map; +import java.util.function.Function; import java.util.stream.Collectors; import java.util.stream.Stream; diff --git a/sdk/storage/azure-storage-common/CHANGELOG.md b/sdk/storage/azure-storage-common/CHANGELOG.md index 3384ddb115bb..8a167f5c9673 100644 --- a/sdk/storage/azure-storage-common/CHANGELOG.md +++ b/sdk/storage/azure-storage-common/CHANGELOG.md @@ -1,4 +1,5 @@ # Release History + ## Version XX.X.X (XXXX-XX-XX) - Added generateSas methods on service clients to improve discoverability and convenience of sas. Deprecated setters of required parameters, generateSasQueryParameters methods on AccountSasSignatureValues to direct users to using the methods added on clients. From 7f4723bb17bbba59a5054d37a0a5db8cd0bdc2d5 Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Mon, 9 Dec 2019 10:28:41 -0800 Subject: [PATCH 19/23] added deprecagtion notices to sas query parameters --- .../sas/ShareServiceSasQueryParameters.java | 24 +++++++++++++++++++ .../sas/QueueServiceSasQueryParameters.java | 12 ++++++++++ 2 files changed, 36 insertions(+) diff --git a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/sas/ShareServiceSasQueryParameters.java b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/sas/ShareServiceSasQueryParameters.java index d7e26bf18021..b6f15ccb1f9b 100644 --- a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/sas/ShareServiceSasQueryParameters.java +++ b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/sas/ShareServiceSasQueryParameters.java @@ -19,7 +19,10 @@ * {@code String} and appended to a URL directly (though caution should be taken here in case there are existing query * parameters, which might affect the appropriate means of appending these query parameters). NOTE: Instances of this * class are immutable to ensure thread safety. + * @deprecated Please use the generateSas method on the desired file/share client after initializing + * {@link ShareServiceSasSignatureValues}. */ +@Deprecated public final class ShareServiceSasQueryParameters extends BaseSasQueryParameters { private final String identifier; @@ -42,7 +45,9 @@ public final class ShareServiceSasQueryParameters extends BaseSasQueryParameters * @param queryParamsMap All query parameters for the request as key-value pairs * @param removeSasParametersFromMap When {@code true}, the SAS query parameters will be removed from * queryParamsMap + * @deprecated Please use {@link ShareServiceSasSignatureValues} */ + @Deprecated public ShareServiceSasQueryParameters(Map queryParamsMap, boolean removeSasParametersFromMap) { super(queryParamsMap, removeSasParametersFromMap); this.identifier = getQueryParameter(queryParamsMap, Constants.UrlConstants.SAS_SIGNED_IDENTIFIER, @@ -75,7 +80,9 @@ public ShareServiceSasQueryParameters(Map queryParamsMap, bool * @param resource A {@code String} representing the storage share or file (only for Service SAS). * @param permissions A {@code String} representing the storage permissions or {@code null}. * @param signature A {@code String} representing the signature for the SAS token. + * @deprecated Please use {@link ShareServiceSasSignatureValues} */ + @Deprecated ShareServiceSasQueryParameters(String version, SasProtocol protocol, OffsetDateTime startTime, OffsetDateTime expiryTime, SasIpRange sasIpRange, String identifier, String resource, String permissions, String signature, String cacheControl, String contentDisposition, String contentEncoding, @@ -95,49 +102,63 @@ public ShareServiceSasQueryParameters(Map queryParamsMap, bool * @return The signed identifier (only for {@link ShareServiceSasSignatureValues}) or {@code null}. Please see * here * for more information. + * @deprecated Please use {@link ShareServiceSasSignatureValues} */ + @Deprecated public String getIdentifier() { return identifier; } /** * @return The storage share or file (only for {@link ShareServiceSasSignatureValues}). + * @deprecated Please use {@link ShareServiceSasSignatureValues} */ + @Deprecated public String getResource() { return resource; } /** * @return The Cache-Control header value when a client accesses the resource with this sas token. + * @deprecated Please use {@link ShareServiceSasSignatureValues} */ + @Deprecated public String getCacheControl() { return cacheControl; } /** * @return The Content-Disposition header value when a client accesses the resource with this sas token. + * @deprecated Please use {@link ShareServiceSasSignatureValues} */ + @Deprecated public String getContentDisposition() { return contentDisposition; } /** * @return The Content-Encoding header value when a client accesses the resource with this sas token. + * @deprecated Please use {@link ShareServiceSasSignatureValues} */ + @Deprecated public String getContentEncoding() { return contentEncoding; } /** * @return The Content-Language header value when a client accesses the resource with this sas token. + * @deprecated Please use {@link ShareServiceSasSignatureValues} */ + @Deprecated public String getContentLanguage() { return contentLanguage; } /** * @return The Content-Type header value when a client accesses the resource with this sas token. + * @deprecated Please use {@link ShareServiceSasSignatureValues} */ + @Deprecated public String getContentType() { return contentType; } @@ -146,7 +167,10 @@ public String getContentType() { * Encodes all SAS query parameters into a string that can be appended to a URL. * * @return A {@code String} representing all SAS query parameters. + * @deprecated Please use the generateSas method on the desired file/share client after initializing + * {@link ShareServiceSasSignatureValues}. */ + @Deprecated public String encode() { /* We should be url-encoding each key and each value, but because we know all the keys and values will encode to diff --git a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/sas/QueueServiceSasQueryParameters.java b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/sas/QueueServiceSasQueryParameters.java index d3e12835ef43..8df9add46078 100644 --- a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/sas/QueueServiceSasQueryParameters.java +++ b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/sas/QueueServiceSasQueryParameters.java @@ -19,7 +19,10 @@ * and appended to a URL directly (though caution should be taken here in case there are existing query parameters, * which might affect the appropriate means of appending these query parameters). NOTE: Instances of this class are * immutable to ensure thread safety. + * @deprecated Please use the generateSas method on the desired queue client after initializing + * {@link QueueServiceSasSignatureValues}. */ +@Deprecated public final class QueueServiceSasQueryParameters extends BaseSasQueryParameters { private final String identifier; @@ -30,7 +33,9 @@ public final class QueueServiceSasQueryParameters extends BaseSasQueryParameters * @param queryParametersMap All query parameters for the request as key-value pairs * @param removeSasParametersFromMap When {@code true}, the SAS query parameters will be removed from * {@code queryParametersMap} + * @deprecated Please use {@link QueueServiceSasSignatureValues} */ + @Deprecated public QueueServiceSasQueryParameters(Map queryParametersMap, boolean removeSasParametersFromMap) { super(queryParametersMap, removeSasParametersFromMap); @@ -53,7 +58,9 @@ public QueueServiceSasQueryParameters(Map queryParametersMap, * @param identifier A {@code String} representing the signed identifier (only for Service SAS) or {@code null}. * @param permissions A {@code String} representing the storage permissions or {@code null}. * @param signature A {@code String} representing the signature for the SAS token. + * @deprecated Please use {@link QueueServiceSasSignatureValues} */ + @Deprecated QueueServiceSasQueryParameters(String version, SasProtocol protocol, OffsetDateTime startTime, OffsetDateTime expiryTime, SasIpRange sasIpRange, String identifier, String permissions, String signature) { super(version, protocol, startTime, expiryTime, sasIpRange, permissions, signature); @@ -65,7 +72,9 @@ public QueueServiceSasQueryParameters(Map queryParametersMap, * @return The signed identifier (only for {@link QueueServiceSasSignatureValues}) or {@code null}. Please see * here * for more information. + * @deprecated Please use {@link QueueServiceSasSignatureValues} */ + @Deprecated public String getIdentifier() { return identifier; } @@ -74,7 +83,10 @@ public String getIdentifier() { * Encodes all SAS query parameters into a string that can be appended to a URL. * * @return A {@code String} representing all SAS query parameters. + * @deprecated Please use the generateSas method on the desired queue client after initializing + * {@link QueueServiceSasSignatureValues}. */ + @Deprecated public String encode() { /* We should be url-encoding each key and each value, but because we know all the keys and values will encode to From 901602babf414e0f83929e84c9bc2cc1bfa12848 Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Mon, 9 Dec 2019 10:42:14 -0800 Subject: [PATCH 20/23] rewrote datalake sas test --- .../storage/file/datalake/SASTest.groovy | 9 +- ...ntsasnetworkaccountsastokenonendpoint.json | 152 +++++++++++++----- 2 files changed, 110 insertions(+), 51 deletions(-) diff --git a/sdk/storage/azure-storage-file-datalake/src/test/java/com/azure/storage/file/datalake/SASTest.groovy b/sdk/storage/azure-storage-file-datalake/src/test/java/com/azure/storage/file/datalake/SASTest.groovy index e5764957cfd3..2914805f4552 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/java/com/azure/storage/file/datalake/SASTest.groovy +++ b/sdk/storage/azure-storage-file-datalake/src/test/java/com/azure/storage/file/datalake/SASTest.groovy @@ -336,13 +336,8 @@ class SASTest extends APISpec { .setCreatePermission(true) def expiryTime = getUTCNow().plusDays(1) - def sas = new AccountSasSignatureValues() - .setServices(service.toString()) - .setResourceTypes(resourceType.toString()) - .setPermissions(permissions) - .setExpiryTime(expiryTime) - .generateSasQueryParameters(primaryCredential) - .encode() + def sasValues = new AccountSasSignatureValues(expiryTime, permissions, service, resourceType) + def sas = primaryDataLakeServiceClient.generateAccountSas(sasValues) def fileSystemName = generateFileSystemName() def pathName = generatePathName() diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestaccountsasnetworkaccountsastokenonendpoint.json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestaccountsasnetworkaccountsastokenonendpoint.json index 66c9f3aa0715..43c5ec0069ce 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestaccountsasnetworkaccountsastokenonendpoint.json +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestaccountsasnetworkaccountsastokenonendpoint.json @@ -1,74 +1,138 @@ { "networkCallRecords" : [ { "Method" : "PUT", - "Uri" : "http://gaprahns.blob.core.windows.net/jtfsaccountsasnetworkaccountsastokenonendpoint067916d9d10?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworkaccountsastokenonendpoint09344544830?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", - "x-ms-client-request-id" : "ba0d0b00-7bc6-435d-aeb6-7914b887b1ca" + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "517c2ecd-676a-4f1d-b3dd-5473316b42ea" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D77384781C846D", - "Last-Modified" : "Wed, 27 Nov 2019 21:55:08 GMT", + "ETag" : "0x8D77CD750CFFB00", + "Last-Modified" : "Mon, 09 Dec 2019 18:40:51 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "7cd67954-701e-0050-506d-a55172000000", - "Date" : "Wed, 27 Nov 2019 21:55:07 GMT", - "x-ms-client-request-id" : "ba0d0b00-7bc6-435d-aeb6-7914b887b1ca" + "x-ms-request-id" : "6c49419c-d01e-00d5-07c0-ae06a7000000", + "Date" : "Mon, 09 Dec 2019 18:40:50 GMT", + "x-ms-client-request-id" : "517c2ecd-676a-4f1d-b3dd-5473316b42ea" }, "Exception" : null }, { "Method" : "PUT", - "Uri" : "http://gaprahns.blob.core.windows.net/jtfsaccountsasnetworkaccountsastokenonendpoint19368366285?restype=container&sv=2019-02-02&se=2019-11-28T21%3A55%3A08Z&sp=rc&sig=REDACTED&ss=b&srt=sco", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworkaccountsastokenonendpoint09344544830/javapathaccountsasnetworkaccountsastokenonendpoint188049ca2?resource=file", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", - "x-ms-client-request-id" : "acbcc9a9-59c2-4db0-80ea-bc2984b32767" + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "3ea3afa5-3541-423c-9bbf-69c6d5e8b12b" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CD751358A95", + "Last-Modified" : "Mon, 09 Dec 2019 18:40:51 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "f130591e-b01f-0009-1ec0-ae54f4000000", + "Date" : "Mon, 09 Dec 2019 18:40:50 GMT", + "x-ms-client-request-id" : "3ea3afa5-3541-423c-9bbf-69c6d5e8b12b" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworkaccountsastokenonendpoint09344544830/javapathaccountsasnetworkaccountsastokenonendpoint188049ca2?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "71f67702-c123-40d0-9061-3e5cca5d6a90", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "f1305920-b01f-0009-20c0-ae54f4000000", + "Date" : "Mon, 09 Dec 2019 18:40:51 GMT", + "x-ms-client-request-id" : "71f67702-c123-40d0-9061-3e5cca5d6a90" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworkaccountsastokenonendpoint09344544830/javapathaccountsasnetworkaccountsastokenonendpoint188049ca2?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "c78a3f61-7110-467b-8058-596b6f6720d7" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CD751500761", + "Last-Modified" : "Mon, 09 Dec 2019 18:40:52 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "f1305921-b01f-0009-21c0-ae54f4000000", + "Date" : "Mon, 09 Dec 2019 18:40:51 GMT", + "x-ms-client-request-id" : "c78a3f61-7110-467b-8058-596b6f6720d7" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworkaccountsastokenonendpoint24465198d45?restype=container&sv=2019-02-02&se=2019-12-10T18%3A40%3A52Z&sp=rc&sig=REDACTED&ss=b&srt=sco", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "5812494f-4474-4808-9c09-c3fe1c7ff34e" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D773847839D5B1", - "Last-Modified" : "Wed, 27 Nov 2019 21:55:08 GMT", + "ETag" : "0x8D77CD7515AD6B1", + "Last-Modified" : "Mon, 09 Dec 2019 18:40:52 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "7cd67985-701e-0050-7a6d-a55172000000", - "Date" : "Wed, 27 Nov 2019 21:55:07 GMT", - "x-ms-client-request-id" : "acbcc9a9-59c2-4db0-80ea-bc2984b32767" + "x-ms-request-id" : "6c49437f-d01e-00d5-40c0-ae06a7000000", + "Date" : "Mon, 09 Dec 2019 18:40:51 GMT", + "x-ms-client-request-id" : "5812494f-4474-4808-9c09-c3fe1c7ff34e" }, "Exception" : null }, { "Method" : "PUT", - "Uri" : "http://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworkaccountsastokenonendpoint19368366285/javapathaccountsasnetworkaccountsastokenonendpoint263720b4b?resource=file", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfsaccountsasnetworkaccountsastokenonendpoint24465198d45/javapathaccountsasnetworkaccountsastokenonendpoint364863086?resource=file", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.5 (11.0.4; Windows 10 10.0)", - "x-ms-client-request-id" : "4a9a85b1-a304-4391-98a6-1f0f926a440a" + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "78465d1b-e15c-4d1a-9844-026f7008d45d" }, "Response" : { "x-ms-version" : "2019-02-02", "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", - "ETag" : "0x8D773847865E876", - "Last-Modified" : "Wed, 27 Nov 2019 21:55:08 GMT", + "ETag" : "0x8D77CD751738A69", + "Last-Modified" : "Mon, 09 Dec 2019 18:40:52 GMT", "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "201", - "x-ms-request-id" : "4c52f0d6-301f-005c-666d-a5bf83000000", - "Date" : "Wed, 27 Nov 2019 21:55:08 GMT", - "x-ms-client-request-id" : "4a9a85b1-a304-4391-98a6-1f0f926a440a" + "x-ms-request-id" : "f1305923-b01f-0009-23c0-ae54f4000000", + "Date" : "Mon, 09 Dec 2019 18:40:51 GMT", + "x-ms-client-request-id" : "78465d1b-e15c-4d1a-9844-026f7008d45d" }, "Exception" : null }, { "Method" : "GET", - "Uri" : "http://gaprahns.blob.core.windows.net?prefix=jtfsaccountsasnetworkaccountsastokenonendpoint&comp=list", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfsaccountsasnetworkaccountsastokenonendpoint&comp=list", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", - "x-ms-client-request-id" : "1c454339-bead-497e-8ffe-5282a7edfc26" + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "97574596-2d2e-4db9-bf85-f68977c26674" }, "Response" : { "Transfer-Encoding" : "chunked", @@ -76,20 +140,20 @@ "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", "retry-after" : "0", "StatusCode" : "200", - "x-ms-request-id" : "7cd67a0e-701e-0050-7b6d-a55172000000", - "Body" : "jtfsaccountsasnetworkaccountsastokenonendpointjtfsaccountsasnetworkaccountsastokenonendpoint067916d9d10Wed, 27 Nov 2019 21:55:08 GMT\"0x8D77384781C846D\"unlockedavailable$account-encryption-keyfalsefalsefalsejtfsaccountsasnetworkaccountsastokenonendpoint19368366285Wed, 27 Nov 2019 21:55:08 GMT\"0x8D773847839D5B1\"unlockedavailable$account-encryption-keyfalsefalsefalse", - "Date" : "Wed, 27 Nov 2019 21:55:08 GMT", - "x-ms-client-request-id" : "1c454339-bead-497e-8ffe-5282a7edfc26", + "x-ms-request-id" : "6c4943ea-d01e-00d5-1fc0-ae06a7000000", + "Body" : "jtfsaccountsasnetworkaccountsastokenonendpointjtfsaccountsasnetworkaccountsastokenonendpoint09344544830Mon, 09 Dec 2019 18:40:51 GMT\"0x8D77CD750CFFB00\"unlockedavailable$account-encryption-keyfalsefalsefalsejtfsaccountsasnetworkaccountsastokenonendpoint24465198d45Mon, 09 Dec 2019 18:40:52 GMT\"0x8D77CD7515AD6B1\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 18:40:51 GMT", + "x-ms-client-request-id" : "97574596-2d2e-4db9-bf85-f68977c26674", "Content-Type" : "application/xml" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "http://gaprahns.blob.core.windows.net/jtfsaccountsasnetworkaccountsastokenonendpoint067916d9d10?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworkaccountsastokenonendpoint09344544830?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", - "x-ms-client-request-id" : "11202616-a3b5-4c59-9389-0433849b3780" + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8d564ca1-5e1f-4068-919a-5969e1b0cba6" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -97,18 +161,18 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "7cd67a2e-701e-0050-176d-a55172000000", - "Date" : "Wed, 27 Nov 2019 21:55:08 GMT", - "x-ms-client-request-id" : "11202616-a3b5-4c59-9389-0433849b3780" + "x-ms-request-id" : "6c49441d-d01e-00d5-4dc0-ae06a7000000", + "Date" : "Mon, 09 Dec 2019 18:40:51 GMT", + "x-ms-client-request-id" : "8d564ca1-5e1f-4068-919a-5969e1b0cba6" }, "Exception" : null }, { "Method" : "DELETE", - "Uri" : "http://gaprahns.blob.core.windows.net/jtfsaccountsasnetworkaccountsastokenonendpoint19368366285?restype=container", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfsaccountsasnetworkaccountsastokenonendpoint24465198d45?restype=container", "Headers" : { "x-ms-version" : "2019-02-02", - "User-Agent" : "azsdk-java-azure-storage-blob/12.1.0-beta.1 (11.0.4; Windows 10 10.0)", - "x-ms-client-request-id" : "623c6b4f-8515-41e4-a944-d95126e10959" + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "2e98fb1f-3857-4d25-a4e0-c209e193e2b6" }, "Response" : { "x-ms-version" : "2019-02-02", @@ -116,11 +180,11 @@ "retry-after" : "0", "Content-Length" : "0", "StatusCode" : "202", - "x-ms-request-id" : "7cd67a43-701e-0050-266d-a55172000000", - "Date" : "Wed, 27 Nov 2019 21:55:08 GMT", - "x-ms-client-request-id" : "623c6b4f-8515-41e4-a944-d95126e10959" + "x-ms-request-id" : "6c494440-d01e-00d5-70c0-ae06a7000000", + "Date" : "Mon, 09 Dec 2019 18:40:51 GMT", + "x-ms-client-request-id" : "2e98fb1f-3857-4d25-a4e0-c209e193e2b6" }, "Exception" : null } ], - "variables" : [ "jtfsaccountsasnetworkaccountsastokenonendpoint067916d9d10", "2019-11-27T21:55:08.510490500Z", "jtfsaccountsasnetworkaccountsastokenonendpoint19368366285", "javapathaccountsasnetworkaccountsastokenonendpoint263720b4b" ] + "variables" : [ "jtfsaccountsasnetworkaccountsastokenonendpoint09344544830", "javapathaccountsasnetworkaccountsastokenonendpoint188049ca2", "2019-12-09T18:40:52.023035900Z", "jtfsaccountsasnetworkaccountsastokenonendpoint24465198d45", "javapathaccountsasnetworkaccountsastokenonendpoint364863086" ] } \ No newline at end of file From 6817dad844f2c8ac279850f5313ff488eaca79e5 Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Mon, 9 Dec 2019 12:13:21 -0800 Subject: [PATCH 21/23] rewrote string to sign tests in datalake --- .../storage/file/datalake/SASTest.groovy | 45 +++--- .../SASTestsasimplutilstringtosign[1].json | 129 ++++++++++++++++++ .../SASTestsasimplutilstringtosign[2].json | 129 ++++++++++++++++++ .../SASTestsasimplutilstringtosign[3].json | 129 ++++++++++++++++++ .../SASTestsasimplutilstringtosign[4].json | 129 ++++++++++++++++++ .../SASTestsasimplutilstringtosign[5].json | 129 ++++++++++++++++++ .../SASTestsasimplutilstringtosign[6].json | 129 ++++++++++++++++++ .../SASTestsasimplutilstringtosign[7].json | 129 ++++++++++++++++++ .../SASTestsasimplutilstringtosign[8].json | 129 ++++++++++++++++++ ...lutilstringtosignuserdelegationkey[0].json | 129 ++++++++++++++++++ ...utilstringtosignuserdelegationkey[10].json | 129 ++++++++++++++++++ ...utilstringtosignuserdelegationkey[11].json | 129 ++++++++++++++++++ ...utilstringtosignuserdelegationkey[12].json | 129 ++++++++++++++++++ ...utilstringtosignuserdelegationkey[13].json | 129 ++++++++++++++++++ ...lutilstringtosignuserdelegationkey[1].json | 129 ++++++++++++++++++ ...lutilstringtosignuserdelegationkey[2].json | 129 ++++++++++++++++++ ...lutilstringtosignuserdelegationkey[3].json | 129 ++++++++++++++++++ ...lutilstringtosignuserdelegationkey[4].json | 129 ++++++++++++++++++ ...lutilstringtosignuserdelegationkey[5].json | 129 ++++++++++++++++++ ...lutilstringtosignuserdelegationkey[6].json | 129 ++++++++++++++++++ ...lutilstringtosignuserdelegationkey[7].json | 129 ++++++++++++++++++ ...lutilstringtosignuserdelegationkey[8].json | 129 ++++++++++++++++++ ...lutilstringtosignuserdelegationkey[9].json | 129 ++++++++++++++++++ 23 files changed, 2867 insertions(+), 16 deletions(-) create mode 100644 sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[1].json create mode 100644 sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[2].json create mode 100644 sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[3].json create mode 100644 sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[4].json create mode 100644 sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[5].json create mode 100644 sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[6].json create mode 100644 sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[7].json create mode 100644 sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[8].json create mode 100644 sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[0].json create mode 100644 sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[10].json create mode 100644 sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[11].json create mode 100644 sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[12].json create mode 100644 sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[13].json create mode 100644 sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[1].json create mode 100644 sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[2].json create mode 100644 sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[3].json create mode 100644 sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[4].json create mode 100644 sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[5].json create mode 100644 sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[6].json create mode 100644 sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[7].json create mode 100644 sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[8].json create mode 100644 sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[9].json diff --git a/sdk/storage/azure-storage-file-datalake/src/test/java/com/azure/storage/file/datalake/SASTest.groovy b/sdk/storage/azure-storage-file-datalake/src/test/java/com/azure/storage/file/datalake/SASTest.groovy index 2914805f4552..fe1e2e8789db 100644 --- a/sdk/storage/azure-storage-file-datalake/src/test/java/com/azure/storage/file/datalake/SASTest.groovy +++ b/sdk/storage/azure-storage-file-datalake/src/test/java/com/azure/storage/file/datalake/SASTest.groovy @@ -3,6 +3,7 @@ package com.azure.storage.file.datalake +import com.azure.storage.blob.implementation.util.BlobSasImplUtil import com.azure.storage.blob.models.BlobStorageException import com.azure.storage.common.implementation.Constants import com.azure.storage.common.implementation.StorageImplUtils @@ -363,21 +364,26 @@ class SASTest extends APISpec { */ @Unroll - def "serviceSasSignatures string to sign"() { + def "sas impl util string to sign"() { when: - def v = new DataLakeServiceSasSignatureValues() + def e = OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC) + def p = new PathSasPermission() + p.setReadPermission(true) + + def v + if (identifier != null) { + v = new DataLakeServiceSasSignatureValues(identifier) + } else { + v = new DataLakeServiceSasSignatureValues(e, p) + } def expected = String.format(expectedStringToSign, primaryCredential.getAccountName()) - p.setReadPermission(true) v.setPermissions(p) v.setStartTime(startTime) - def e = OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC) v.setExpiryTime(e) - v.setFileSystemName("fileSystemName") - .setPathName("pathName") if (ipRange != null) { def ipR = new SasIpRange() ipR.setIpMin("ip") @@ -391,9 +397,12 @@ class SASTest extends APISpec { .setContentLanguage(language) .setContentType(type) - def token = v.generateSasQueryParameters(primaryCredential) + def util = new BlobSasImplUtil(Transforms.toBlobSasValues(v), "fileSystemName", "pathName", null) + util.ensureState() + def sasToken = util.stringToSign(util.getCanonicalName(primaryCredential.getAccountName())) + then: - token.getSignature() == primaryCredential.computeHmac256(expected) + sasToken == expected /* We don't test the blob or containerName properties because canonicalized resource is always added as at least @@ -415,21 +424,22 @@ class SASTest extends APISpec { } @Unroll - def "serviceSasSignatures string to sign user delegation key"() { + def "sas impl util string to sign user delegation key"() { when: - def v = new DataLakeServiceSasSignatureValues() - def expected = String.format(expectedStringToSign, primaryCredential.getAccountName()) + def e = OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC) def p = new PathSasPermission() + p.setReadPermission(true) + + def v = new DataLakeServiceSasSignatureValues(e, p) + def expected = String.format(expectedStringToSign, primaryCredential.getAccountName()) + p.setReadPermission(true) v.setPermissions(p) v.setStartTime(startTime) - def e = OffsetDateTime.of(2017, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC) v.setExpiryTime(e) - v.setFileSystemName("fileSystemName") - .setPathName("pathName") if (ipRange != null) { def ipR = new SasIpRange() ipR.setIpMin("ip") @@ -449,10 +459,13 @@ class SASTest extends APISpec { .setSignedService(keyService) .setSignedVersion(keyVersion) .setValue(keyValue) - def token = v.generateSasQueryParameters(key, primaryCredential.getAccountName()) + + def util = new BlobSasImplUtil(Transforms.toBlobSasValues(v), "fileSystemName", "pathName", null) + util.ensureState() + def sasToken = util.stringToSign(Transforms.toBlobUserDelegationKey(key), util.getCanonicalName(primaryCredential.getAccountName())) then: - token.getSignature() == StorageImplUtils.computeHMac256(key.getValue(), expected) + sasToken == expected /* We test string to sign functionality directly related to user delegation sas specific parameters diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[1].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[1].json new file mode 100644 index 000000000000..b428f34a9f76 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[1].json @@ -0,0 +1,129 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosign089305a1e33256578c480?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "15eddd35-9f62-4bf3-81a0-a778c839697c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE825F0C00", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:20 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "a37b1ec8-501e-00cf-3dc7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:20 GMT", + "x-ms-client-request-id" : "15eddd35-9f62-4bf3-81a0-a778c839697c" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign089305a1e33256578c480/javapathsasimplutilstringtosign1430413ec9fa3145b14?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "02ab74ac-bbac-438b-b7d6-f37b12ceada1" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE826B3EEE", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:20 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "1f17730b-101f-002d-33c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:19 GMT", + "x-ms-client-request-id" : "02ab74ac-bbac-438b-b7d6-f37b12ceada1" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign089305a1e33256578c480/javapathsasimplutilstringtosign1430413ec9fa3145b14?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "51a89301-3e91-45a7-8ed0-6d8e3979feaf", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f17730c-101f-002d-34c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:19 GMT", + "x-ms-client-request-id" : "51a89301-3e91-45a7-8ed0-6d8e3979feaf" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign089305a1e33256578c480/javapathsasimplutilstringtosign1430413ec9fa3145b14?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "3e397118-e813-4f16-9430-de0d77f1de3c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE827C6148", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:20 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f17730d-101f-002d-35c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:20 GMT", + "x-ms-client-request-id" : "3e397118-e813-4f16-9430-de0d77f1de3c" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfssasimplutilstringtosign&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "c16d2141-3554-402e-9ee2-4254a1f06d4f" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "a37b1f43-501e-00cf-2bc7-ae29c8000000", + "Body" : "jtfssasimplutilstringtosignjtfssasimplutilstringtosign089305a1e33256578c480Mon, 09 Dec 2019 19:32:20 GMT\"0x8D77CDE825F0C00\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 19:32:20 GMT", + "x-ms-client-request-id" : "c16d2141-3554-402e-9ee2-4254a1f06d4f", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosign089305a1e33256578c480?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "9cdf7a19-b7f8-4023-8542-b3cbb5872728" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "a37b1f6c-501e-00cf-50c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:20 GMT", + "x-ms-client-request-id" : "9cdf7a19-b7f8-4023-8542-b3cbb5872728" + }, + "Exception" : null + } ], + "variables" : [ "jtfssasimplutilstringtosign089305a1e33256578c480", "javapathsasimplutilstringtosign1430413ec9fa3145b14" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[2].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[2].json new file mode 100644 index 000000000000..c240b0fd28ea --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[2].json @@ -0,0 +1,129 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosign052543e74e75c0f317474?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "352ff7f9-5e61-476e-b6c5-0ca3161d7f84" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE8296E53C", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:21 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "a37b1f95-501e-00cf-70c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:20 GMT", + "x-ms-client-request-id" : "352ff7f9-5e61-476e-b6c5-0ca3161d7f84" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign052543e74e75c0f317474/javapathsasimplutilstringtosign1752872740f7656f044?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "cf6a95bd-9b96-43b7-a46c-0969ffa10d62" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE82A238C1", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:21 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "1f17730e-101f-002d-36c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:20 GMT", + "x-ms-client-request-id" : "cf6a95bd-9b96-43b7-a46c-0969ffa10d62" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign052543e74e75c0f317474/javapathsasimplutilstringtosign1752872740f7656f044?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "9b02a196-41ae-4eb5-86e8-7ea9db4d2115", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f17730f-101f-002d-37c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:20 GMT", + "x-ms-client-request-id" : "9b02a196-41ae-4eb5-86e8-7ea9db4d2115" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign052543e74e75c0f317474/javapathsasimplutilstringtosign1752872740f7656f044?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ce6a1203-e158-48d2-b394-e7cd86653097" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE82BE7131", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:21 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177310-101f-002d-38c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:20 GMT", + "x-ms-client-request-id" : "ce6a1203-e158-48d2-b394-e7cd86653097" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfssasimplutilstringtosign&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f0f64c82-9731-402e-b7b6-5dbc73c55991" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "a37b2033-501e-00cf-7cc7-ae29c8000000", + "Body" : "jtfssasimplutilstringtosignjtfssasimplutilstringtosign052543e74e75c0f317474Mon, 09 Dec 2019 19:32:21 GMT\"0x8D77CDE8296E53C\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 19:32:21 GMT", + "x-ms-client-request-id" : "f0f64c82-9731-402e-b7b6-5dbc73c55991", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosign052543e74e75c0f317474?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "835f726b-2ed5-46ea-a878-a65949289ef0" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "a37b204f-501e-00cf-16c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:21 GMT", + "x-ms-client-request-id" : "835f726b-2ed5-46ea-a878-a65949289ef0" + }, + "Exception" : null + } ], + "variables" : [ "jtfssasimplutilstringtosign052543e74e75c0f317474", "javapathsasimplutilstringtosign1752872740f7656f044" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[3].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[3].json new file mode 100644 index 000000000000..493476e57a14 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[3].json @@ -0,0 +1,129 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosign043671371172ec31524f7?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "45b099c3-3d84-46fe-be4d-dd6b31d6297b" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE82D7983E", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:21 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "a37b206d-501e-00cf-32c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:21 GMT", + "x-ms-client-request-id" : "45b099c3-3d84-46fe-be4d-dd6b31d6297b" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign043671371172ec31524f7/javapathsasimplutilstringtosign1509771e15a747496a4?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "70be16eb-b773-4ba1-8dd1-4aafcfd578c7" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE82E1B66F", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:21 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "1f177311-101f-002d-39c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:20 GMT", + "x-ms-client-request-id" : "70be16eb-b773-4ba1-8dd1-4aafcfd578c7" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign043671371172ec31524f7/javapathsasimplutilstringtosign1509771e15a747496a4?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "59f9424e-e396-4e0e-a74c-8d2b04aaffa7", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177312-101f-002d-3ac7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:20 GMT", + "x-ms-client-request-id" : "59f9424e-e396-4e0e-a74c-8d2b04aaffa7" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign043671371172ec31524f7/javapathsasimplutilstringtosign1509771e15a747496a4?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "08f57dfb-4184-4197-a6f5-e263d2dcef62" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE82F224B4", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:21 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177313-101f-002d-3bc7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:20 GMT", + "x-ms-client-request-id" : "08f57dfb-4184-4197-a6f5-e263d2dcef62" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfssasimplutilstringtosign&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d3b28beb-57a0-4828-98f3-8f6f455bf14c" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "a37b20ef-501e-00cf-22c7-ae29c8000000", + "Body" : "jtfssasimplutilstringtosignjtfssasimplutilstringtosign043671371172ec31524f7Mon, 09 Dec 2019 19:32:21 GMT\"0x8D77CDE82D7983E\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 19:32:21 GMT", + "x-ms-client-request-id" : "d3b28beb-57a0-4828-98f3-8f6f455bf14c", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosign043671371172ec31524f7?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "5dd75a40-5d79-4e76-9fee-8f8bc211b725" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "a37b20f7-501e-00cf-29c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:21 GMT", + "x-ms-client-request-id" : "5dd75a40-5d79-4e76-9fee-8f8bc211b725" + }, + "Exception" : null + } ], + "variables" : [ "jtfssasimplutilstringtosign043671371172ec31524f7", "javapathsasimplutilstringtosign1509771e15a747496a4" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[4].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[4].json new file mode 100644 index 000000000000..97dc1d192731 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[4].json @@ -0,0 +1,129 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosign072433be7d54a7005740d?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "c73a6ff7-313d-441a-b2bf-19d12b8dbfdb" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE830A4171", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:21 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "a37b2119-501e-00cf-48c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:21 GMT", + "x-ms-client-request-id" : "c73a6ff7-313d-441a-b2bf-19d12b8dbfdb" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign072433be7d54a7005740d/javapathsasimplutilstringtosign166485a062902e2ba04?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "87a6d2c7-0acd-464b-be62-d38311e6bbd6" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE831440F6", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:21 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "1f177314-101f-002d-3cc7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:21 GMT", + "x-ms-client-request-id" : "87a6d2c7-0acd-464b-be62-d38311e6bbd6" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign072433be7d54a7005740d/javapathsasimplutilstringtosign166485a062902e2ba04?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "c5733ff6-2c8b-42b6-98da-30a6ef1b8596", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177315-101f-002d-3dc7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:21 GMT", + "x-ms-client-request-id" : "c5733ff6-2c8b-42b6-98da-30a6ef1b8596" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign072433be7d54a7005740d/javapathsasimplutilstringtosign166485a062902e2ba04?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "64ead3fa-be3d-45cf-ae03-7cde7e8a0423" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE8325485D", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:22 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177316-101f-002d-3ec7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:21 GMT", + "x-ms-client-request-id" : "64ead3fa-be3d-45cf-ae03-7cde7e8a0423" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfssasimplutilstringtosign&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "cb7fb9c4-bf94-4f97-9dd9-352215c1db83" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "a37b217c-501e-00cf-1fc7-ae29c8000000", + "Body" : "jtfssasimplutilstringtosignjtfssasimplutilstringtosign072433be7d54a7005740dMon, 09 Dec 2019 19:32:21 GMT\"0x8D77CDE830A4171\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 19:32:21 GMT", + "x-ms-client-request-id" : "cb7fb9c4-bf94-4f97-9dd9-352215c1db83", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosign072433be7d54a7005740d?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "eb1919d2-420b-4f8a-9a87-88977f1649fc" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "a37b218b-501e-00cf-2cc7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:21 GMT", + "x-ms-client-request-id" : "eb1919d2-420b-4f8a-9a87-88977f1649fc" + }, + "Exception" : null + } ], + "variables" : [ "jtfssasimplutilstringtosign072433be7d54a7005740d", "javapathsasimplutilstringtosign166485a062902e2ba04" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[5].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[5].json new file mode 100644 index 000000000000..20179789bc4e --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[5].json @@ -0,0 +1,129 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosign037421ac16d4d3abc346f?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "4da1ba8e-ac37-4247-ac65-23e743f95a7d" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE8341A58B", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:22 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "a37b21c2-501e-00cf-60c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:21 GMT", + "x-ms-client-request-id" : "4da1ba8e-ac37-4247-ac65-23e743f95a7d" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign037421ac16d4d3abc346f/javapathsasimplutilstringtosign198951d48a4197d3c54?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "4dbbc105-2aeb-4cbe-a768-8f11aac636ca" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE834DB666", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:22 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "1f177317-101f-002d-3fc7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:21 GMT", + "x-ms-client-request-id" : "4dbbc105-2aeb-4cbe-a768-8f11aac636ca" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign037421ac16d4d3abc346f/javapathsasimplutilstringtosign198951d48a4197d3c54?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "a0306b7e-a1eb-4a4d-9e18-d88885161c0d", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177318-101f-002d-40c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:21 GMT", + "x-ms-client-request-id" : "a0306b7e-a1eb-4a4d-9e18-d88885161c0d" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign037421ac16d4d3abc346f/javapathsasimplutilstringtosign198951d48a4197d3c54?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8d577425-f2f1-4ccd-84ed-26f08f46cb74" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE835EC2F7", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:22 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177319-101f-002d-41c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:21 GMT", + "x-ms-client-request-id" : "8d577425-f2f1-4ccd-84ed-26f08f46cb74" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfssasimplutilstringtosign&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ea9407e3-3a42-4fed-8d6d-ac3d107c8f1b" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "a37b2249-501e-00cf-57c7-ae29c8000000", + "Body" : "jtfssasimplutilstringtosignjtfssasimplutilstringtosign037421ac16d4d3abc346fMon, 09 Dec 2019 19:32:22 GMT\"0x8D77CDE8341A58B\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 19:32:22 GMT", + "x-ms-client-request-id" : "ea9407e3-3a42-4fed-8d6d-ac3d107c8f1b", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosign037421ac16d4d3abc346f?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "39ddb409-e28d-41f3-b0a3-c22cde04da27" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "a37b225d-501e-00cf-68c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:22 GMT", + "x-ms-client-request-id" : "39ddb409-e28d-41f3-b0a3-c22cde04da27" + }, + "Exception" : null + } ], + "variables" : [ "jtfssasimplutilstringtosign037421ac16d4d3abc346f", "javapathsasimplutilstringtosign198951d48a4197d3c54" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[6].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[6].json new file mode 100644 index 000000000000..a22aec991616 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[6].json @@ -0,0 +1,129 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosign0678856616265b8642451?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "22867a0e-f581-486f-ab89-bcd8caa8582e" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE837B2C74", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:22 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "a37b228c-501e-00cf-0fc7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:22 GMT", + "x-ms-client-request-id" : "22867a0e-f581-486f-ab89-bcd8caa8582e" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign0678856616265b8642451/javapathsasimplutilstringtosign168162b5fb9530acfa4?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "a5ff3b70-81f0-4cfa-9ef8-f5ad973fab02" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE83913641", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:22 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "1f17731a-101f-002d-42c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:21 GMT", + "x-ms-client-request-id" : "a5ff3b70-81f0-4cfa-9ef8-f5ad973fab02" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign0678856616265b8642451/javapathsasimplutilstringtosign168162b5fb9530acfa4?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b01228c4-c7ca-4735-a00f-6aa40bef19b5", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f17731b-101f-002d-43c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:21 GMT", + "x-ms-client-request-id" : "b01228c4-c7ca-4735-a00f-6aa40bef19b5" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign0678856616265b8642451/javapathsasimplutilstringtosign168162b5fb9530acfa4?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "1f3dbe5e-7f12-4b29-8fb8-0a7537b547dc" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE83A6BB4A", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:22 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f17731c-101f-002d-44c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:21 GMT", + "x-ms-client-request-id" : "1f3dbe5e-7f12-4b29-8fb8-0a7537b547dc" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfssasimplutilstringtosign&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f53e15f7-948c-4130-886b-3cf225e7d974" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "a37b2344-501e-00cf-2fc7-ae29c8000000", + "Body" : "jtfssasimplutilstringtosignjtfssasimplutilstringtosign0678856616265b8642451Mon, 09 Dec 2019 19:32:22 GMT\"0x8D77CDE837B2C74\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 19:32:22 GMT", + "x-ms-client-request-id" : "f53e15f7-948c-4130-886b-3cf225e7d974", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosign0678856616265b8642451?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "7a85d4fe-6073-421e-aa38-ab0cbfcbcb03" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "a37b2366-501e-00cf-4ec7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:22 GMT", + "x-ms-client-request-id" : "7a85d4fe-6073-421e-aa38-ab0cbfcbcb03" + }, + "Exception" : null + } ], + "variables" : [ "jtfssasimplutilstringtosign0678856616265b8642451", "javapathsasimplutilstringtosign168162b5fb9530acfa4" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[7].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[7].json new file mode 100644 index 000000000000..eef3f9157284 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[7].json @@ -0,0 +1,129 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosign08755261d7e298aceb45f?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ca9d59b6-9249-41b9-aed8-08a33bd90d99" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE83C136C5", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:23 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "a37b23a9-501e-00cf-09c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:22 GMT", + "x-ms-client-request-id" : "ca9d59b6-9249-41b9-aed8-08a33bd90d99" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign08755261d7e298aceb45f/javapathsasimplutilstringtosign1108600b6747f8944f4?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "cc970f4c-e49b-45b1-bf93-757d108fc096" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE83D2D37C", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:23 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "1f17731d-101f-002d-45c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:22 GMT", + "x-ms-client-request-id" : "cc970f4c-e49b-45b1-bf93-757d108fc096" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign08755261d7e298aceb45f/javapathsasimplutilstringtosign1108600b6747f8944f4?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "fc72156c-7585-471d-a04a-7ba76a20e492", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f17731e-101f-002d-46c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:22 GMT", + "x-ms-client-request-id" : "fc72156c-7585-471d-a04a-7ba76a20e492" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign08755261d7e298aceb45f/javapathsasimplutilstringtosign1108600b6747f8944f4?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d1d5b757-672d-46db-88b0-0290382e4312" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE83E85BA1", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:23 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f17731f-101f-002d-47c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:22 GMT", + "x-ms-client-request-id" : "d1d5b757-672d-46db-88b0-0290382e4312" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfssasimplutilstringtosign&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "eed2160c-d6b3-45ce-bf70-7e91c32220df" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "a37b2464-501e-00cf-31c7-ae29c8000000", + "Body" : "jtfssasimplutilstringtosignjtfssasimplutilstringtosign08755261d7e298aceb45fMon, 09 Dec 2019 19:32:23 GMT\"0x8D77CDE83C136C5\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 19:32:23 GMT", + "x-ms-client-request-id" : "eed2160c-d6b3-45ce-bf70-7e91c32220df", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosign08755261d7e298aceb45f?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "dc0a364a-e9f5-4621-b4d7-ada53ec9f87c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "a37b2482-501e-00cf-4ec7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:23 GMT", + "x-ms-client-request-id" : "dc0a364a-e9f5-4621-b4d7-ada53ec9f87c" + }, + "Exception" : null + } ], + "variables" : [ "jtfssasimplutilstringtosign08755261d7e298aceb45f", "javapathsasimplutilstringtosign1108600b6747f8944f4" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[8].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[8].json new file mode 100644 index 000000000000..f1c8ee15e86e --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[8].json @@ -0,0 +1,129 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosign026069e014eb0ec8804d7?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8db4ee9f-5a9d-402b-b6d5-71890cda7eb5" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE840014F5", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:23 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "a37b24a2-501e-00cf-6dc7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:23 GMT", + "x-ms-client-request-id" : "8db4ee9f-5a9d-402b-b6d5-71890cda7eb5" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign026069e014eb0ec8804d7/javapathsasimplutilstringtosign140888ff77858054a84?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b03d858d-34dc-4e4c-aa84-372551917946" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE8409FC51", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:23 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "1f177320-101f-002d-48c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:22 GMT", + "x-ms-client-request-id" : "b03d858d-34dc-4e4c-aa84-372551917946" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign026069e014eb0ec8804d7/javapathsasimplutilstringtosign140888ff77858054a84?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "6fde1be1-eabb-4de8-8336-7b940568492c", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177321-101f-002d-49c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:22 GMT", + "x-ms-client-request-id" : "6fde1be1-eabb-4de8-8336-7b940568492c" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign026069e014eb0ec8804d7/javapathsasimplutilstringtosign140888ff77858054a84?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "eb1c595a-92fe-413b-90e9-5041d3ba22e6" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE841BF26D", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:23 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177322-101f-002d-4ac7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:22 GMT", + "x-ms-client-request-id" : "eb1c595a-92fe-413b-90e9-5041d3ba22e6" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfssasimplutilstringtosign&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8dd233d4-9805-4369-8090-8a6d5e235282" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "a37b2528-501e-00cf-63c7-ae29c8000000", + "Body" : "jtfssasimplutilstringtosignjtfssasimplutilstringtosign026069e014eb0ec8804d7Mon, 09 Dec 2019 19:32:23 GMT\"0x8D77CDE840014F5\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 19:32:23 GMT", + "x-ms-client-request-id" : "8dd233d4-9805-4369-8090-8a6d5e235282", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosign026069e014eb0ec8804d7?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "a5ed1ed7-1cd1-4dd3-b4f0-b7e11c3770f3" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "a37b253d-501e-00cf-75c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:23 GMT", + "x-ms-client-request-id" : "a5ed1ed7-1cd1-4dd3-b4f0-b7e11c3770f3" + }, + "Exception" : null + } ], + "variables" : [ "jtfssasimplutilstringtosign026069e014eb0ec8804d7", "javapathsasimplutilstringtosign140888ff77858054a84" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[0].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[0].json new file mode 100644 index 000000000000..cb43185fc8ae --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[0].json @@ -0,0 +1,129 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey027666b7ad61?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "65289160-af12-4a7b-80f3-eb9a889ecc56" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE843E2FAD", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:23 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "a37b2575-501e-00cf-29c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:23 GMT", + "x-ms-client-request-id" : "65289160-af12-4a7b-80f3-eb9a889ecc56" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey027666b7ad61/javapathsasimplutilstringtosignuserdelegationkey100112ca91?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f96ab73b-c3c5-4fe4-bdb1-b2c7ce7bb5df" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE844835CC", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:24 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "1f177323-101f-002d-4bc7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:23 GMT", + "x-ms-client-request-id" : "f96ab73b-c3c5-4fe4-bdb1-b2c7ce7bb5df" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey027666b7ad61/javapathsasimplutilstringtosignuserdelegationkey100112ca91?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8d932526-a687-40b5-8de6-bf8d0f56bdab", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177324-101f-002d-4cc7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:23 GMT", + "x-ms-client-request-id" : "8d932526-a687-40b5-8de6-bf8d0f56bdab" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey027666b7ad61/javapathsasimplutilstringtosignuserdelegationkey100112ca91?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d157aa28-eaac-40f9-81a5-073f30e2e47e" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE845C8438", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:24 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177325-101f-002d-4dc7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:23 GMT", + "x-ms-client-request-id" : "d157aa28-eaac-40f9-81a5-073f30e2e47e" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfssasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "a9201de3-dfc7-4b0f-add4-9aa9b6a18899" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "a37b2605-501e-00cf-2ac7-ae29c8000000", + "Body" : "jtfssasimplutilstringtosignuserdelegationkeyjtfssasimplutilstringtosignuserdelegationkey027666b7ad61Mon, 09 Dec 2019 19:32:23 GMT\"0x8D77CDE843E2FAD\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 19:32:23 GMT", + "x-ms-client-request-id" : "a9201de3-dfc7-4b0f-add4-9aa9b6a18899", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey027666b7ad61?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "6762e64f-5630-40ad-8a0e-3faeff7d7134" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "a37b262a-501e-00cf-4cc7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:23 GMT", + "x-ms-client-request-id" : "6762e64f-5630-40ad-8a0e-3faeff7d7134" + }, + "Exception" : null + } ], + "variables" : [ "jtfssasimplutilstringtosignuserdelegationkey027666b7ad61", "javapathsasimplutilstringtosignuserdelegationkey100112ca91" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[10].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[10].json new file mode 100644 index 000000000000..513de7976b4e --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[10].json @@ -0,0 +1,129 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey023406b6d13e?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "caeaf053-253d-4cea-ae24-7f6e91c5c094" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE86A10313", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:27 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "a37b2d8c-501e-00cf-02c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:27 GMT", + "x-ms-client-request-id" : "caeaf053-253d-4cea-ae24-7f6e91c5c094" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey023406b6d13e/javapathsasimplutilstringtosignuserdelegationkey19229316b5?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ffb9e35b-048c-4bee-935a-3fcf49fb98d0" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE86AC2778", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:28 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "1f17734e-101f-002d-74c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:27 GMT", + "x-ms-client-request-id" : "ffb9e35b-048c-4bee-935a-3fcf49fb98d0" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey023406b6d13e/javapathsasimplutilstringtosignuserdelegationkey19229316b5?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "cc9f34ee-feb0-43b5-8424-0d9849aa0bdd", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f17734f-101f-002d-75c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:27 GMT", + "x-ms-client-request-id" : "cc9f34ee-feb0-43b5-8424-0d9849aa0bdd" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey023406b6d13e/javapathsasimplutilstringtosignuserdelegationkey19229316b5?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "dac0d076-f3e5-4d35-8d26-a52125574c85" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE86C44D4A", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:28 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177352-101f-002d-78c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:27 GMT", + "x-ms-client-request-id" : "dac0d076-f3e5-4d35-8d26-a52125574c85" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfssasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "1d7b2052-8868-4b38-bf13-3a8a8102f6c6" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "a37b2e2e-501e-00cf-18c7-ae29c8000000", + "Body" : "jtfssasimplutilstringtosignuserdelegationkeyjtfssasimplutilstringtosignuserdelegationkey023406b6d13eMon, 09 Dec 2019 19:32:27 GMT\"0x8D77CDE86A10313\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 19:32:27 GMT", + "x-ms-client-request-id" : "1d7b2052-8868-4b38-bf13-3a8a8102f6c6", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey023406b6d13e?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "2f91391f-79f6-4e50-b2c5-cabadefaba30" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "a37b2e41-501e-00cf-28c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:27 GMT", + "x-ms-client-request-id" : "2f91391f-79f6-4e50-b2c5-cabadefaba30" + }, + "Exception" : null + } ], + "variables" : [ "jtfssasimplutilstringtosignuserdelegationkey023406b6d13e", "javapathsasimplutilstringtosignuserdelegationkey19229316b5" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[11].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[11].json new file mode 100644 index 000000000000..50c36b4c73b3 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[11].json @@ -0,0 +1,129 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey002763e89d20?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ea90af06-5a8b-44b3-9f8d-1afaed0edc10" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE86DBE97E", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:28 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "a37b2e67-501e-00cf-4dc7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:28 GMT", + "x-ms-client-request-id" : "ea90af06-5a8b-44b3-9f8d-1afaed0edc10" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey002763e89d20/javapathsasimplutilstringtosignuserdelegationkey1299055263?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "604b0d97-ecc5-447c-92f3-dc7725b34fa3" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE86E62FC8", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:28 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "1f177355-101f-002d-7bc7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:27 GMT", + "x-ms-client-request-id" : "604b0d97-ecc5-447c-92f3-dc7725b34fa3" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey002763e89d20/javapathsasimplutilstringtosignuserdelegationkey1299055263?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "a244512a-8747-48b3-953a-78f59caf3a98", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177356-101f-002d-7cc7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:27 GMT", + "x-ms-client-request-id" : "a244512a-8747-48b3-953a-78f59caf3a98" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey002763e89d20/javapathsasimplutilstringtosignuserdelegationkey1299055263?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "90d09ce6-2735-4cd5-bf4d-b260ce660729" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE86F6BC56", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:28 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177359-101f-002d-7fc7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:27 GMT", + "x-ms-client-request-id" : "90d09ce6-2735-4cd5-bf4d-b260ce660729" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfssasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "d565ba10-3204-4b84-81b1-a166cb6964c2" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "a37b2efe-501e-00cf-5dc7-ae29c8000000", + "Body" : "jtfssasimplutilstringtosignuserdelegationkeyjtfssasimplutilstringtosignuserdelegationkey002763e89d20Mon, 09 Dec 2019 19:32:28 GMT\"0x8D77CDE86DBE97E\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 19:32:28 GMT", + "x-ms-client-request-id" : "d565ba10-3204-4b84-81b1-a166cb6964c2", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey002763e89d20?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ac0d0371-29cf-4c76-9eb1-fbda17045f3c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "a37b2f19-501e-00cf-74c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:28 GMT", + "x-ms-client-request-id" : "ac0d0371-29cf-4c76-9eb1-fbda17045f3c" + }, + "Exception" : null + } ], + "variables" : [ "jtfssasimplutilstringtosignuserdelegationkey002763e89d20", "javapathsasimplutilstringtosignuserdelegationkey1299055263" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[12].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[12].json new file mode 100644 index 000000000000..fa506aea0c4c --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[12].json @@ -0,0 +1,129 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey00592227ea2a?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "6c796719-a0b9-4159-a258-1a83ea4d53dd" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE870FCAFD", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:28 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "a37b2f2f-501e-00cf-09c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:28 GMT", + "x-ms-client-request-id" : "6c796719-a0b9-4159-a258-1a83ea4d53dd" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey00592227ea2a/javapathsasimplutilstringtosignuserdelegationkey163907d1e2?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "1ba8deac-4788-4a63-86cd-ec459bd500e6" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE871C627F", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:28 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "1f17735f-101f-002d-05c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:27 GMT", + "x-ms-client-request-id" : "1ba8deac-4788-4a63-86cd-ec459bd500e6" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey00592227ea2a/javapathsasimplutilstringtosignuserdelegationkey163907d1e2?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e5cc9ac7-af1c-45e2-b1b4-f30783575fd7", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177362-101f-002d-08c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:27 GMT", + "x-ms-client-request-id" : "e5cc9ac7-af1c-45e2-b1b4-f30783575fd7" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey00592227ea2a/javapathsasimplutilstringtosignuserdelegationkey163907d1e2?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f453bf49-96d0-4db5-87b4-b45b3d7a27c5" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE873A7E9D", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:28 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177367-101f-002d-0dc7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:27 GMT", + "x-ms-client-request-id" : "f453bf49-96d0-4db5-87b4-b45b3d7a27c5" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfssasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "62d2fa5d-80c2-47f8-a84f-5a98b939bb32" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "a37b2fcc-501e-00cf-14c7-ae29c8000000", + "Body" : "jtfssasimplutilstringtosignuserdelegationkeyjtfssasimplutilstringtosignuserdelegationkey00592227ea2aMon, 09 Dec 2019 19:32:28 GMT\"0x8D77CDE870FCAFD\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 19:32:28 GMT", + "x-ms-client-request-id" : "62d2fa5d-80c2-47f8-a84f-5a98b939bb32", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey00592227ea2a?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "659ca1d7-803b-4a2b-b993-b18922d552c4" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "a37b2fdb-501e-00cf-21c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:28 GMT", + "x-ms-client-request-id" : "659ca1d7-803b-4a2b-b993-b18922d552c4" + }, + "Exception" : null + } ], + "variables" : [ "jtfssasimplutilstringtosignuserdelegationkey00592227ea2a", "javapathsasimplutilstringtosignuserdelegationkey163907d1e2" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[13].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[13].json new file mode 100644 index 000000000000..b32c3134148a --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[13].json @@ -0,0 +1,129 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey019260c97253?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "0ac43557-da14-4e6f-a920-c0cc9baf8be0" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE8752C7EE", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:29 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "a37b2ffb-501e-00cf-40c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:28 GMT", + "x-ms-client-request-id" : "0ac43557-da14-4e6f-a920-c0cc9baf8be0" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey019260c97253/javapathsasimplutilstringtosignuserdelegationkey1588850c48?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "84e88f06-6178-457c-b6b7-bfa45f57775e" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE8761771F", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:29 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "1f17736a-101f-002d-10c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:28 GMT", + "x-ms-client-request-id" : "84e88f06-6178-457c-b6b7-bfa45f57775e" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey019260c97253/javapathsasimplutilstringtosignuserdelegationkey1588850c48?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "a7a29829-ea8d-4d23-9acd-135065765330", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f17736d-101f-002d-13c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:28 GMT", + "x-ms-client-request-id" : "a7a29829-ea8d-4d23-9acd-135065765330" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey019260c97253/javapathsasimplutilstringtosignuserdelegationkey1588850c48?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e0b1b230-aad3-4767-b052-175e913d0445" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE8779F31B", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:29 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177370-101f-002d-16c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:28 GMT", + "x-ms-client-request-id" : "e0b1b230-aad3-4767-b052-175e913d0445" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfssasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b8a68c6e-ba04-4c6f-8218-19b3a7a3aeb7" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "a37b3080-501e-00cf-2ec7-ae29c8000000", + "Body" : "jtfssasimplutilstringtosignuserdelegationkeyjtfssasimplutilstringtosignuserdelegationkey019260c97253Mon, 09 Dec 2019 19:32:29 GMT\"0x8D77CDE8752C7EE\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 19:32:29 GMT", + "x-ms-client-request-id" : "b8a68c6e-ba04-4c6f-8218-19b3a7a3aeb7", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey019260c97253?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b369e750-63d9-4ffd-9300-7f213d44e49d" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "a37b30a7-501e-00cf-50c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:29 GMT", + "x-ms-client-request-id" : "b369e750-63d9-4ffd-9300-7f213d44e49d" + }, + "Exception" : null + } ], + "variables" : [ "jtfssasimplutilstringtosignuserdelegationkey019260c97253", "javapathsasimplutilstringtosignuserdelegationkey1588850c48" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[1].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[1].json new file mode 100644 index 000000000000..4e922f123528 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[1].json @@ -0,0 +1,129 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey000813265647?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "df6b852b-65c7-4eb3-bae7-629992093671" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE8475E1EC", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:24 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "a37b265d-501e-00cf-7ec7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:24 GMT", + "x-ms-client-request-id" : "df6b852b-65c7-4eb3-bae7-629992093671" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey000813265647/javapathsasimplutilstringtosignuserdelegationkey189497d5b6?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "5f5160fd-6c46-4ea5-a28f-b9e8ed0aae37" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE8488570D", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:24 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "1f177326-101f-002d-4ec7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:23 GMT", + "x-ms-client-request-id" : "5f5160fd-6c46-4ea5-a28f-b9e8ed0aae37" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey000813265647/javapathsasimplutilstringtosignuserdelegationkey189497d5b6?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e78b0286-a39b-4e9b-b5b4-82220dd31c82", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177327-101f-002d-4fc7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:23 GMT", + "x-ms-client-request-id" : "e78b0286-a39b-4e9b-b5b4-82220dd31c82" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey000813265647/javapathsasimplutilstringtosignuserdelegationkey189497d5b6?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "828fdf17-9046-48b5-92d9-ffe20c68471c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE84A4412D", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:24 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177328-101f-002d-50c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:23 GMT", + "x-ms-client-request-id" : "828fdf17-9046-48b5-92d9-ffe20c68471c" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfssasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "3eee81ec-9717-4fc3-8b93-3f2d703a1c5d" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "a37b2733-501e-00cf-48c7-ae29c8000000", + "Body" : "jtfssasimplutilstringtosignuserdelegationkeyjtfssasimplutilstringtosignuserdelegationkey000813265647Mon, 09 Dec 2019 19:32:24 GMT\"0x8D77CDE8475E1EC\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 19:32:24 GMT", + "x-ms-client-request-id" : "3eee81ec-9717-4fc3-8b93-3f2d703a1c5d", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey000813265647?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "cb0fe14f-35bb-4ef5-8579-88807edac86f" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "a37b2745-501e-00cf-5ac7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:24 GMT", + "x-ms-client-request-id" : "cb0fe14f-35bb-4ef5-8579-88807edac86f" + }, + "Exception" : null + } ], + "variables" : [ "jtfssasimplutilstringtosignuserdelegationkey000813265647", "javapathsasimplutilstringtosignuserdelegationkey189497d5b6" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[2].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[2].json new file mode 100644 index 000000000000..4567e8357fe5 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[2].json @@ -0,0 +1,129 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey057444cd1ebe?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "a4969d23-cc5c-4bb2-a8a0-d26bba67d3fe" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE84BD4BA1", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:24 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "a37b2760-501e-00cf-71c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:24 GMT", + "x-ms-client-request-id" : "a4969d23-cc5c-4bb2-a8a0-d26bba67d3fe" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey057444cd1ebe/javapathsasimplutilstringtosignuserdelegationkey1660943dce?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "40c868e6-4951-4476-b834-824ebe34f7c6" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE84D42E7A", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:24 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "1f177329-101f-002d-51c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:23 GMT", + "x-ms-client-request-id" : "40c868e6-4951-4476-b834-824ebe34f7c6" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey057444cd1ebe/javapathsasimplutilstringtosignuserdelegationkey1660943dce?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "892e2ef8-43b4-42ac-9367-04c8b44f6503", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f17732a-101f-002d-52c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:24 GMT", + "x-ms-client-request-id" : "892e2ef8-43b4-42ac-9367-04c8b44f6503" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey057444cd1ebe/javapathsasimplutilstringtosignuserdelegationkey1660943dce?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "baa0bd08-42fd-4996-acb0-11cbb1ba21b5" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE84E5C9C2", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:25 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f17732b-101f-002d-53c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:24 GMT", + "x-ms-client-request-id" : "baa0bd08-42fd-4996-acb0-11cbb1ba21b5" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfssasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "74fbd6d7-bc14-4574-8432-dafd353b2b11" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "a37b27f4-501e-00cf-74c7-ae29c8000000", + "Body" : "jtfssasimplutilstringtosignuserdelegationkeyjtfssasimplutilstringtosignuserdelegationkey057444cd1ebeMon, 09 Dec 2019 19:32:24 GMT\"0x8D77CDE84BD4BA1\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 19:32:24 GMT", + "x-ms-client-request-id" : "74fbd6d7-bc14-4574-8432-dafd353b2b11", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey057444cd1ebe?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "5017b1b3-01a7-4824-9a32-0d534f46ab6d" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "a37b2812-501e-00cf-0cc7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:24 GMT", + "x-ms-client-request-id" : "5017b1b3-01a7-4824-9a32-0d534f46ab6d" + }, + "Exception" : null + } ], + "variables" : [ "jtfssasimplutilstringtosignuserdelegationkey057444cd1ebe", "javapathsasimplutilstringtosignuserdelegationkey1660943dce" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[3].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[3].json new file mode 100644 index 000000000000..0451fbadd0c1 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[3].json @@ -0,0 +1,129 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey093103c12524?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b625cdc0-0719-4e3f-beec-a840a17cc1b9" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE85085F17", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:25 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "a37b2850-501e-00cf-40c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:24 GMT", + "x-ms-client-request-id" : "b625cdc0-0719-4e3f-beec-a840a17cc1b9" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey093103c12524/javapathsasimplutilstringtosignuserdelegationkey103805fa6c?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "8a4e0fab-68ef-415d-8d44-eff9b46f63ff" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE8514B3AE", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:25 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "1f17732c-101f-002d-54c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:24 GMT", + "x-ms-client-request-id" : "8a4e0fab-68ef-415d-8d44-eff9b46f63ff" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey093103c12524/javapathsasimplutilstringtosignuserdelegationkey103805fa6c?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "a68a4084-f184-4d68-a072-cc0f56954268", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f17732d-101f-002d-55c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:24 GMT", + "x-ms-client-request-id" : "a68a4084-f184-4d68-a072-cc0f56954268" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey093103c12524/javapathsasimplutilstringtosignuserdelegationkey103805fa6c?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "a6cef289-60df-4fef-9934-665144c4000a" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE852D2BC1", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:25 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f17732e-101f-002d-56c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:24 GMT", + "x-ms-client-request-id" : "a6cef289-60df-4fef-9934-665144c4000a" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfssasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "a7aded6e-f697-4c5a-a125-e7523aa309a8" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "a37b28e4-501e-00cf-49c7-ae29c8000000", + "Body" : "jtfssasimplutilstringtosignuserdelegationkeyjtfssasimplutilstringtosignuserdelegationkey093103c12524Mon, 09 Dec 2019 19:32:25 GMT\"0x8D77CDE85085F17\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 19:32:25 GMT", + "x-ms-client-request-id" : "a7aded6e-f697-4c5a-a125-e7523aa309a8", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey093103c12524?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "0f77e294-7c0c-4c5c-872a-001d4f398794" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "a37b28fc-501e-00cf-5dc7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:25 GMT", + "x-ms-client-request-id" : "0f77e294-7c0c-4c5c-872a-001d4f398794" + }, + "Exception" : null + } ], + "variables" : [ "jtfssasimplutilstringtosignuserdelegationkey093103c12524", "javapathsasimplutilstringtosignuserdelegationkey103805fa6c" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[4].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[4].json new file mode 100644 index 000000000000..6fc05f6d61f2 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[4].json @@ -0,0 +1,129 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey039266d53907?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f6f44abe-c06c-48e9-94c1-1d967c033300" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE8546A0AE", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:25 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "a37b2919-501e-00cf-78c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:25 GMT", + "x-ms-client-request-id" : "f6f44abe-c06c-48e9-94c1-1d967c033300" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey039266d53907/javapathsasimplutilstringtosignuserdelegationkey1447705779?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "c3bf8774-133b-403c-b53d-0abb08eac820" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE855101BF", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:25 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "1f177330-101f-002d-57c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:24 GMT", + "x-ms-client-request-id" : "c3bf8774-133b-403c-b53d-0abb08eac820" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey039266d53907/javapathsasimplutilstringtosignuserdelegationkey1447705779?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "368b8428-bd80-43e2-a5dd-cd9c0e5984d8", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177331-101f-002d-58c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:24 GMT", + "x-ms-client-request-id" : "368b8428-bd80-43e2-a5dd-cd9c0e5984d8" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey039266d53907/javapathsasimplutilstringtosignuserdelegationkey1447705779?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b38572ef-e5d6-4cd7-a1bd-b712e0489f52" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE856210B8", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:25 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177332-101f-002d-59c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:24 GMT", + "x-ms-client-request-id" : "b38572ef-e5d6-4cd7-a1bd-b712e0489f52" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfssasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "2eaf1d63-4024-4c52-87c9-8c38fd8c3270" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "a37b2970-501e-00cf-4ac7-ae29c8000000", + "Body" : "jtfssasimplutilstringtosignuserdelegationkeyjtfssasimplutilstringtosignuserdelegationkey039266d53907Mon, 09 Dec 2019 19:32:25 GMT\"0x8D77CDE8546A0AE\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 19:32:25 GMT", + "x-ms-client-request-id" : "2eaf1d63-4024-4c52-87c9-8c38fd8c3270", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey039266d53907?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "2979ac2e-7cf6-4658-8079-5aecf48d20ba" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "a37b2983-501e-00cf-5dc7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:25 GMT", + "x-ms-client-request-id" : "2979ac2e-7cf6-4658-8079-5aecf48d20ba" + }, + "Exception" : null + } ], + "variables" : [ "jtfssasimplutilstringtosignuserdelegationkey039266d53907", "javapathsasimplutilstringtosignuserdelegationkey1447705779" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[5].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[5].json new file mode 100644 index 000000000000..88dd679a031b --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[5].json @@ -0,0 +1,129 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey0414625c08a6?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "46725365-bb2a-4a19-970f-bcfaa311411c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE857CF35B", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:26 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "a37b29b3-501e-00cf-08c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:25 GMT", + "x-ms-client-request-id" : "46725365-bb2a-4a19-970f-bcfaa311411c" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey0414625c08a6/javapathsasimplutilstringtosignuserdelegationkey1004752d77?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "676cf927-9add-4ac5-9cfa-c71ca5e3e50e" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE8588E6AD", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:26 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "1f177334-101f-002d-5ac7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:25 GMT", + "x-ms-client-request-id" : "676cf927-9add-4ac5-9cfa-c71ca5e3e50e" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey0414625c08a6/javapathsasimplutilstringtosignuserdelegationkey1004752d77?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ed7c48df-3803-4684-a3ca-a6f6192f37b0", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177335-101f-002d-5bc7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:25 GMT", + "x-ms-client-request-id" : "ed7c48df-3803-4684-a3ca-a6f6192f37b0" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey0414625c08a6/javapathsasimplutilstringtosignuserdelegationkey1004752d77?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "9d4bf9c3-eb68-413d-a1f4-607d454cc56d" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE85998C7E", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:26 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177336-101f-002d-5cc7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:25 GMT", + "x-ms-client-request-id" : "9d4bf9c3-eb68-413d-a1f4-607d454cc56d" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfssasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b9f039ee-7551-412d-8593-8206047a01de" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "a37b2a70-501e-00cf-37c7-ae29c8000000", + "Body" : "jtfssasimplutilstringtosignuserdelegationkeyjtfssasimplutilstringtosignuserdelegationkey0414625c08a6Mon, 09 Dec 2019 19:32:26 GMT\"0x8D77CDE857CF35B\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 19:32:25 GMT", + "x-ms-client-request-id" : "b9f039ee-7551-412d-8593-8206047a01de", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey0414625c08a6?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "56cc4bd0-04f2-4dbb-a1fb-535bceae4245" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "a37b2a8b-501e-00cf-4fc7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:26 GMT", + "x-ms-client-request-id" : "56cc4bd0-04f2-4dbb-a1fb-535bceae4245" + }, + "Exception" : null + } ], + "variables" : [ "jtfssasimplutilstringtosignuserdelegationkey0414625c08a6", "javapathsasimplutilstringtosignuserdelegationkey1004752d77" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[6].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[6].json new file mode 100644 index 000000000000..eba169b7e9bd --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[6].json @@ -0,0 +1,129 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey099554c9a26a?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "112ec9d0-98ea-4ca8-8463-a290087c4283" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE85B62C1E", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:26 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "a37b2ab4-501e-00cf-73c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:26 GMT", + "x-ms-client-request-id" : "112ec9d0-98ea-4ca8-8463-a290087c4283" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey099554c9a26a/javapathsasimplutilstringtosignuserdelegationkey158315d159?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "9f466fdb-a887-48c2-8e20-61d0d78570eb" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE85C038A4", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:26 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "1f177338-101f-002d-5ec7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:25 GMT", + "x-ms-client-request-id" : "9f466fdb-a887-48c2-8e20-61d0d78570eb" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey099554c9a26a/javapathsasimplutilstringtosignuserdelegationkey158315d159?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "5afb1089-8fd4-4786-897e-cf8fee31086f", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177339-101f-002d-5fc7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:25 GMT", + "x-ms-client-request-id" : "5afb1089-8fd4-4786-897e-cf8fee31086f" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey099554c9a26a/javapathsasimplutilstringtosignuserdelegationkey158315d159?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "ccc9e9a0-ba7a-4714-a9cf-b43bf784161d" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE85D0609D", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:26 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f17733a-101f-002d-60c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:25 GMT", + "x-ms-client-request-id" : "ccc9e9a0-ba7a-4714-a9cf-b43bf784161d" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfssasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "67a37187-3c6c-4915-a47e-8cd13ae548c6" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "a37b2af9-501e-00cf-31c7-ae29c8000000", + "Body" : "jtfssasimplutilstringtosignuserdelegationkeyjtfssasimplutilstringtosignuserdelegationkey099554c9a26aMon, 09 Dec 2019 19:32:26 GMT\"0x8D77CDE85B62C1E\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 19:32:26 GMT", + "x-ms-client-request-id" : "67a37187-3c6c-4915-a47e-8cd13ae548c6", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey099554c9a26a?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "3df377d8-6660-4f05-9e25-02d7e763affd" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "a37b2b05-501e-00cf-3dc7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:26 GMT", + "x-ms-client-request-id" : "3df377d8-6660-4f05-9e25-02d7e763affd" + }, + "Exception" : null + } ], + "variables" : [ "jtfssasimplutilstringtosignuserdelegationkey099554c9a26a", "javapathsasimplutilstringtosignuserdelegationkey158315d159" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[7].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[7].json new file mode 100644 index 000000000000..0d39eef25832 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[7].json @@ -0,0 +1,129 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey048296f9bcde?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "72238fc7-67ca-4467-9dc9-d4fff48a86c3" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE85ECF401", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:26 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "a37b2b21-501e-00cf-57c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:26 GMT", + "x-ms-client-request-id" : "72238fc7-67ca-4467-9dc9-d4fff48a86c3" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey048296f9bcde/javapathsasimplutilstringtosignuserdelegationkey1888397be2?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b998e1e1-4a90-4ead-934a-7604a40ba379" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE85FE923F", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:26 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "1f17733b-101f-002d-61c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:25 GMT", + "x-ms-client-request-id" : "b998e1e1-4a90-4ead-934a-7604a40ba379" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey048296f9bcde/javapathsasimplutilstringtosignuserdelegationkey1888397be2?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "3115f601-f805-4a93-81b7-6128944e0c91", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f17733c-101f-002d-62c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:25 GMT", + "x-ms-client-request-id" : "3115f601-f805-4a93-81b7-6128944e0c91" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey048296f9bcde/javapathsasimplutilstringtosignuserdelegationkey1888397be2?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "24bc4083-8c3e-4caa-8b88-cc55d116e51c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE860F7925", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:26 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f17733d-101f-002d-63c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:26 GMT", + "x-ms-client-request-id" : "24bc4083-8c3e-4caa-8b88-cc55d116e51c" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfssasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "619f75f4-490a-4a39-ae18-bdc13fa45b78" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "a37b2bae-501e-00cf-53c7-ae29c8000000", + "Body" : "jtfssasimplutilstringtosignuserdelegationkeyjtfssasimplutilstringtosignuserdelegationkey048296f9bcdeMon, 09 Dec 2019 19:32:26 GMT\"0x8D77CDE85ECF401\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 19:32:26 GMT", + "x-ms-client-request-id" : "619f75f4-490a-4a39-ae18-bdc13fa45b78", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey048296f9bcde?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "1b476d74-714c-4045-8e9e-be0f7b397d98" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "a37b2bd1-501e-00cf-71c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:26 GMT", + "x-ms-client-request-id" : "1b476d74-714c-4045-8e9e-be0f7b397d98" + }, + "Exception" : null + } ], + "variables" : [ "jtfssasimplutilstringtosignuserdelegationkey048296f9bcde", "javapathsasimplutilstringtosignuserdelegationkey1888397be2" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[8].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[8].json new file mode 100644 index 000000000000..b24e830927fa --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[8].json @@ -0,0 +1,129 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey08893643eb1e?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "c7a5ecf9-3e02-4b49-ad94-8150e598c0ec" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE862A2463", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:27 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "a37b2be9-501e-00cf-08c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:26 GMT", + "x-ms-client-request-id" : "c7a5ecf9-3e02-4b49-ad94-8150e598c0ec" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey08893643eb1e/javapathsasimplutilstringtosignuserdelegationkey18467688ab?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "af9dd51c-b157-4407-8595-7fbb86d694a7" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE86365A5D", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:27 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "1f17733e-101f-002d-64c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:26 GMT", + "x-ms-client-request-id" : "af9dd51c-b157-4407-8595-7fbb86d694a7" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey08893643eb1e/javapathsasimplutilstringtosignuserdelegationkey18467688ab?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "f138f342-3b97-4847-a0b9-ea7fbb713ee6", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f17733f-101f-002d-65c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:26 GMT", + "x-ms-client-request-id" : "f138f342-3b97-4847-a0b9-ea7fbb713ee6" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey08893643eb1e/javapathsasimplutilstringtosignuserdelegationkey18467688ab?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "88daf7b7-7e9e-4501-8711-e9e500e0a4c1" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE86495AB2", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:27 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177340-101f-002d-66c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:26 GMT", + "x-ms-client-request-id" : "88daf7b7-7e9e-4501-8711-e9e500e0a4c1" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfssasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "90257725-01ae-42e3-9a79-66ac51c8f7f7" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "a37b2c93-501e-00cf-22c7-ae29c8000000", + "Body" : "jtfssasimplutilstringtosignuserdelegationkeyjtfssasimplutilstringtosignuserdelegationkey08893643eb1eMon, 09 Dec 2019 19:32:27 GMT\"0x8D77CDE862A2463\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 19:32:27 GMT", + "x-ms-client-request-id" : "90257725-01ae-42e3-9a79-66ac51c8f7f7", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey08893643eb1e?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "e6484993-d51e-4ac7-ab69-ffe4f1262d7c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "a37b2cb9-501e-00cf-44c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:27 GMT", + "x-ms-client-request-id" : "e6484993-d51e-4ac7-ab69-ffe4f1262d7c" + }, + "Exception" : null + } ], + "variables" : [ "jtfssasimplutilstringtosignuserdelegationkey08893643eb1e", "javapathsasimplutilstringtosignuserdelegationkey18467688ab" ] +} \ No newline at end of file diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[9].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[9].json new file mode 100644 index 000000000000..3c5fbb93bb6a --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosignuserdelegationkey[9].json @@ -0,0 +1,129 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey070163165d11?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "c25f20f8-b3f0-413f-ac58-6d27e354a1d1" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE8661D696", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:27 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "a37b2cdb-501e-00cf-64c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:27 GMT", + "x-ms-client-request-id" : "c25f20f8-b3f0-413f-ac58-6d27e354a1d1" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey070163165d11/javapathsasimplutilstringtosignuserdelegationkey160877c200?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "b131f167-efa5-447e-b431-a830647cd989" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE86713570", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:27 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "1f177344-101f-002d-6ac7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:26 GMT", + "x-ms-client-request-id" : "b131f167-efa5-447e-b431-a830647cd989" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey070163165d11/javapathsasimplutilstringtosignuserdelegationkey160877c200?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "86b40324-86d8-4051-8def-9cfc2de6c9d8", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177346-101f-002d-6cc7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:26 GMT", + "x-ms-client-request-id" : "86b40324-86d8-4051-8def-9cfc2de6c9d8" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey070163165d11/javapathsasimplutilstringtosignuserdelegationkey160877c200?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "bf203466-4497-475f-a3c5-c0ec4aa2e30d" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE8683D72C", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:27 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f17734a-101f-002d-70c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:26 GMT", + "x-ms-client-request-id" : "bf203466-4497-475f-a3c5-c0ec4aa2e30d" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfssasimplutilstringtosignuserdelegationkey&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "bcc5e967-1291-4de0-a394-f741424c618e" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "a37b2d5a-501e-00cf-53c7-ae29c8000000", + "Body" : "jtfssasimplutilstringtosignuserdelegationkeyjtfssasimplutilstringtosignuserdelegationkey070163165d11Mon, 09 Dec 2019 19:32:27 GMT\"0x8D77CDE8661D696\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 19:32:27 GMT", + "x-ms-client-request-id" : "bcc5e967-1291-4de0-a394-f741424c618e", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosignuserdelegationkey070163165d11?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "48d20e91-fd54-4b44-9042-05011a1f67ab" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "a37b2d6c-501e-00cf-63c7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:27 GMT", + "x-ms-client-request-id" : "48d20e91-fd54-4b44-9042-05011a1f67ab" + }, + "Exception" : null + } ], + "variables" : [ "jtfssasimplutilstringtosignuserdelegationkey070163165d11", "javapathsasimplutilstringtosignuserdelegationkey160877c200" ] +} \ No newline at end of file From 936b9321774fbfea179f48e02f2eeebc79b95805 Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Mon, 9 Dec 2019 12:26:20 -0800 Subject: [PATCH 22/23] added missed recording --- .../SASTestsasimplutilstringtosign[0].json | 129 ++++++++++++++++++ 1 file changed, 129 insertions(+) create mode 100644 sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[0].json diff --git a/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[0].json b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[0].json new file mode 100644 index 000000000000..09afc88c99d5 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/src/test/resources/session-records/SASTestsasimplutilstringtosign[0].json @@ -0,0 +1,129 @@ +{ + "networkCallRecords" : [ { + "Method" : "PUT", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosign03901525986b39a0af44b?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "34f0151a-c992-48a3-ba23-bebfffc2d91e" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE822536FD", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:20 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "a37b1e27-501e-00cf-2dc7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:20 GMT", + "x-ms-client-request-id" : "34f0151a-c992-48a3-ba23-bebfffc2d91e" + }, + "Exception" : null + }, { + "Method" : "PUT", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign03901525986b39a0af44b/javapathsasimplutilstringtosign168874abc944fed5cf4?resource=file", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "a049e601-e0aa-4447-b788-d20949559862" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE8233318A", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:20 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "201", + "x-ms-request-id" : "1f177306-101f-002d-2ec7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:19 GMT", + "x-ms-client-request-id" : "a049e601-e0aa-4447-b788-d20949559862" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign03901525986b39a0af44b/javapathsasimplutilstringtosign168874abc944fed5cf4?position=0&action=append", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "838e5fd5-4eec-48a4-a228-aa44159dea95", + "Content-Type" : "application/octet-stream" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177308-101f-002d-30c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:19 GMT", + "x-ms-client-request-id" : "838e5fd5-4eec-48a4-a228-aa44159dea95" + }, + "Exception" : null + }, { + "Method" : "PATCH", + "Uri" : "https://gaprahns.dfs.core.windows.net/jtfssasimplutilstringtosign03901525986b39a0af44b/javapathsasimplutilstringtosign168874abc944fed5cf4?position=7&retainUncommittedData=false&close=false&action=flush", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-file-datalake/12.0.0-preview.7 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "21e1ccfd-b6df-4f73-b9f3-84b3306f3a0c" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0", + "ETag" : "0x8D77CDE824519BB", + "Last-Modified" : "Mon, 09 Dec 2019 19:32:20 GMT", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "200", + "x-ms-request-server-encrypted" : "true", + "x-ms-request-id" : "1f177309-101f-002d-31c7-aecdba000000", + "Date" : "Mon, 09 Dec 2019 19:32:19 GMT", + "x-ms-client-request-id" : "21e1ccfd-b6df-4f73-b9f3-84b3306f3a0c" + }, + "Exception" : null + }, { + "Method" : "GET", + "Uri" : "https://gaprahns.blob.core.windows.net?prefix=jtfssasimplutilstringtosign&comp=list", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "548c1803-ca96-4cc5-9c89-3808079e4363" + }, + "Response" : { + "Transfer-Encoding" : "chunked", + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "StatusCode" : "200", + "x-ms-request-id" : "a37b1e8e-501e-00cf-09c7-ae29c8000000", + "Body" : "jtfssasimplutilstringtosignjtfssasimplutilstringtosign03901525986b39a0af44bMon, 09 Dec 2019 19:32:20 GMT\"0x8D77CDE822536FD\"unlockedavailable$account-encryption-keyfalsefalsefalse", + "Date" : "Mon, 09 Dec 2019 19:32:20 GMT", + "x-ms-client-request-id" : "548c1803-ca96-4cc5-9c89-3808079e4363", + "Content-Type" : "application/xml" + }, + "Exception" : null + }, { + "Method" : "DELETE", + "Uri" : "https://gaprahns.blob.core.windows.net/jtfssasimplutilstringtosign03901525986b39a0af44b?restype=container", + "Headers" : { + "x-ms-version" : "2019-02-02", + "User-Agent" : "azsdk-java-azure-storage-blob/12.2.0-beta.1 (11.0.4; Windows 10 10.0)", + "x-ms-client-request-id" : "aa3907d7-81d2-40b6-b9c9-d5306a4e58d0" + }, + "Response" : { + "x-ms-version" : "2019-02-02", + "Server" : "Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0", + "retry-after" : "0", + "Content-Length" : "0", + "StatusCode" : "202", + "x-ms-request-id" : "a37b1ea6-501e-00cf-1ec7-ae29c8000000", + "Date" : "Mon, 09 Dec 2019 19:32:20 GMT", + "x-ms-client-request-id" : "aa3907d7-81d2-40b6-b9c9-d5306a4e58d0" + }, + "Exception" : null + } ], + "variables" : [ "jtfssasimplutilstringtosign03901525986b39a0af44b", "javapathsasimplutilstringtosign168874abc944fed5cf4" ] +} \ No newline at end of file From f108539985dcc6c1a99ef5998531e2c3c4dae2b6 Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Mon, 9 Dec 2019 13:00:11 -0800 Subject: [PATCH 23/23] Added java doc comment about storagesharedkeycredential --- .../storage/file/datalake/DataLakeFileSystemAsyncClient.java | 2 ++ .../azure/storage/file/datalake/DataLakeFileSystemClient.java | 2 ++ .../azure/storage/file/datalake/DataLakePathAsyncClient.java | 2 ++ .../com/azure/storage/file/datalake/DataLakePathClient.java | 2 ++ .../azure/storage/file/datalake/DataLakeServiceAsyncClient.java | 2 ++ .../com/azure/storage/file/datalake/DataLakeServiceClient.java | 2 ++ .../java/com/azure/storage/file/share/ShareAsyncClient.java | 1 + .../src/main/java/com/azure/storage/file/share/ShareClient.java | 1 + .../com/azure/storage/file/share/ShareDirectoryAsyncClient.java | 1 + .../java/com/azure/storage/file/share/ShareDirectoryClient.java | 1 + .../java/com/azure/storage/file/share/ShareFileAsyncClient.java | 1 + .../main/java/com/azure/storage/file/share/ShareFileClient.java | 1 + .../com/azure/storage/file/share/ShareServiceAsyncClient.java | 1 + .../java/com/azure/storage/file/share/ShareServiceClient.java | 1 + .../src/test/java/com/azure/storage/file/share/APISpec.groovy | 2 +- .../src/main/java/com/azure/storage/queue/QueueAsyncClient.java | 1 + .../src/main/java/com/azure/storage/queue/QueueClient.java | 1 + .../java/com/azure/storage/queue/QueueServiceAsyncClient.java | 1 + .../main/java/com/azure/storage/queue/QueueServiceClient.java | 1 + 19 files changed, 25 insertions(+), 1 deletion(-) diff --git a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeFileSystemAsyncClient.java b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeFileSystemAsyncClient.java index 7b2ccdcc0c82..03085cd85008 100644 --- a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeFileSystemAsyncClient.java +++ b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeFileSystemAsyncClient.java @@ -15,6 +15,7 @@ import com.azure.core.util.logging.ClientLogger; import com.azure.storage.blob.BlobContainerAsyncClient; import com.azure.storage.blob.specialized.BlockBlobAsyncClient; +import com.azure.storage.common.StorageSharedKeyCredential; import com.azure.storage.common.Utility; import com.azure.storage.common.implementation.StorageImplUtils; import com.azure.storage.file.datalake.implementation.DataLakeStorageClientBuilder; @@ -740,6 +741,7 @@ public String generateUserDelegationSas(DataLakeServiceSasSignatureValues dataLa /** * Generates a service SAS for the file system using the specified {@link DataLakeServiceSasSignatureValues} + * Note : The client must be authenticated via {@link StorageSharedKeyCredential} *

See {@link DataLakeServiceSasSignatureValues} for more information on how to construct a service SAS.

* *

Code Samples

diff --git a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeFileSystemClient.java b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeFileSystemClient.java index ca75801162db..42a4c478c66f 100644 --- a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeFileSystemClient.java +++ b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeFileSystemClient.java @@ -13,6 +13,7 @@ import com.azure.storage.blob.BlobContainerClient; import com.azure.storage.blob.models.BlobContainerAccessPolicies; import com.azure.storage.blob.models.BlobContainerProperties; +import com.azure.storage.common.StorageSharedKeyCredential; import com.azure.storage.file.datalake.models.DataLakeRequestConditions; import com.azure.storage.file.datalake.models.DataLakeSignedIdentifier; import com.azure.storage.file.datalake.models.FileSystemAccessPolicies; @@ -609,6 +610,7 @@ public String generateUserDelegationSas(DataLakeServiceSasSignatureValues dataLa /** * Generates a service SAS for the file system using the specified {@link DataLakeServiceSasSignatureValues} + * Note : The client must be authenticated via {@link StorageSharedKeyCredential} *

See {@link DataLakeServiceSasSignatureValues} for more information on how to construct a service SAS.

* *

Code Samples

diff --git a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakePathAsyncClient.java b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakePathAsyncClient.java index 0260093d5fb1..cf6b35526e04 100644 --- a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakePathAsyncClient.java +++ b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakePathAsyncClient.java @@ -15,6 +15,7 @@ import com.azure.storage.blob.BlobUrlParts; import com.azure.storage.blob.specialized.BlockBlobAsyncClient; import com.azure.storage.blob.specialized.SpecializedBlobClientBuilder; +import com.azure.storage.common.StorageSharedKeyCredential; import com.azure.storage.common.Utility; import com.azure.storage.file.datalake.implementation.DataLakeStorageClientBuilder; import com.azure.storage.file.datalake.implementation.DataLakeStorageClientImpl; @@ -715,6 +716,7 @@ public String generateUserDelegationSas(DataLakeServiceSasSignatureValues dataLa /** * Generates a service SAS for the path using the specified {@link DataLakeServiceSasSignatureValues} + * Note : The client must be authenticated via {@link StorageSharedKeyCredential} *

See {@link DataLakeServiceSasSignatureValues} for more information on how to construct a service SAS.

* *

Code Samples

diff --git a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakePathClient.java b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakePathClient.java index 1806f831566a..29c1d6890053 100644 --- a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakePathClient.java +++ b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakePathClient.java @@ -10,6 +10,7 @@ import com.azure.core.util.logging.ClientLogger; import com.azure.storage.blob.models.BlobProperties; import com.azure.storage.blob.specialized.BlockBlobClient; +import com.azure.storage.common.StorageSharedKeyCredential; import com.azure.storage.common.implementation.StorageImplUtils; import com.azure.storage.file.datalake.implementation.models.LeaseAccessConditions; import com.azure.storage.file.datalake.implementation.models.ModifiedAccessConditions; @@ -482,6 +483,7 @@ public String generateUserDelegationSas(DataLakeServiceSasSignatureValues dataLa /** * Generates a service SAS for the path using the specified {@link DataLakeServiceSasSignatureValues} + * Note : The client must be authenticated via {@link StorageSharedKeyCredential} *

See {@link DataLakeServiceSasSignatureValues} for more information on how to construct a service SAS.

* *

Code Samples

diff --git a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeServiceAsyncClient.java b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeServiceAsyncClient.java index ef73624b05e2..0ec038cdeacf 100644 --- a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeServiceAsyncClient.java +++ b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeServiceAsyncClient.java @@ -13,6 +13,7 @@ import com.azure.core.util.FluxUtil; import com.azure.core.util.logging.ClientLogger; import com.azure.storage.blob.BlobServiceAsyncClient; +import com.azure.storage.common.StorageSharedKeyCredential; import com.azure.storage.common.Utility; import com.azure.storage.common.implementation.StorageImplUtils; import com.azure.storage.common.sas.AccountSasSignatureValues; @@ -320,6 +321,7 @@ public String getAccountName() { /** * Generates an account SAS for the Azure Storage account using the specified {@link AccountSasSignatureValues}. + * Note : The client must be authenticated via {@link StorageSharedKeyCredential} *

See {@link AccountSasSignatureValues} for more information on how to construct an account SAS.

* *

The snippet below generates a SAS that lasts for two days and gives the user read and list access to file diff --git a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeServiceClient.java b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeServiceClient.java index 4825d04d1a1e..e07192712210 100644 --- a/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeServiceClient.java +++ b/sdk/storage/azure-storage-file-datalake/src/main/java/com/azure/storage/file/datalake/DataLakeServiceClient.java @@ -11,6 +11,7 @@ import com.azure.core.http.rest.SimpleResponse; import com.azure.core.util.Context; import com.azure.storage.blob.BlobServiceClient; +import com.azure.storage.common.StorageSharedKeyCredential; import com.azure.storage.common.sas.AccountSasSignatureValues; import com.azure.storage.file.datalake.models.DataLakeRequestConditions; import com.azure.storage.file.datalake.models.FileSystemItem; @@ -250,6 +251,7 @@ public String getAccountName() { /** * Generates an account SAS for the Azure Storage account using the specified {@link AccountSasSignatureValues}. + * Note : The client must be authenticated via {@link StorageSharedKeyCredential} *

See {@link AccountSasSignatureValues} for more information on how to construct an account SAS.

* *

The snippet below generates a SAS that lasts for two days and gives the user read and list access to file diff --git a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareAsyncClient.java b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareAsyncClient.java index f7c91980a56c..7e34cd73e150 100644 --- a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareAsyncClient.java +++ b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareAsyncClient.java @@ -1042,6 +1042,7 @@ public HttpPipeline getHttpPipeline() { /** * Generates a service sas for the queue using the specified {@link ShareServiceSasSignatureValues} + * Note : The client must be authenticated via {@link StorageSharedKeyCredential} *

See {@link ShareServiceSasSignatureValues} for more information on how to construct a service SAS.

* *

Code Samples

diff --git a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareClient.java b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareClient.java index 534b74c061af..3ebba6485a73 100644 --- a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareClient.java +++ b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareClient.java @@ -826,6 +826,7 @@ public HttpPipeline getHttpPipeline() { /** * Generates a service sas for the queue using the specified {@link ShareServiceSasSignatureValues} + * Note : The client must be authenticated via {@link StorageSharedKeyCredential} *

See {@link ShareServiceSasSignatureValues} for more information on how to construct a service SAS.

* *

Code Samples

diff --git a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareDirectoryAsyncClient.java b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareDirectoryAsyncClient.java index 9258ac35437b..71fcc1568e91 100644 --- a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareDirectoryAsyncClient.java +++ b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareDirectoryAsyncClient.java @@ -986,6 +986,7 @@ public HttpPipeline getHttpPipeline() { /** * Generates a service SAS for the directory using the specified {@link ShareServiceSasSignatureValues} + * Note : The client must be authenticated via {@link StorageSharedKeyCredential} *

See {@link ShareServiceSasSignatureValues} for more information on how to construct a service SAS.

* *

Code Samples

diff --git a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareDirectoryClient.java b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareDirectoryClient.java index c05d559274e6..8f2d79416559 100644 --- a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareDirectoryClient.java +++ b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareDirectoryClient.java @@ -762,6 +762,7 @@ public HttpPipeline getHttpPipeline() { /** * Generates a service SAS for the directory using the specified {@link ShareServiceSasSignatureValues} + * Note : The client must be authenticated via {@link StorageSharedKeyCredential} *

See {@link ShareServiceSasSignatureValues} for more information on how to construct a service SAS.

* *

Code Samples

diff --git a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareFileAsyncClient.java b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareFileAsyncClient.java index 5c118b4af3c1..a29b09c34917 100644 --- a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareFileAsyncClient.java +++ b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareFileAsyncClient.java @@ -1343,6 +1343,7 @@ public HttpPipeline getHttpPipeline() { /** * Generates a service SAS for the file using the specified {@link ShareServiceSasSignatureValues} + * Note : The client must be authenticated via {@link StorageSharedKeyCredential} *

See {@link ShareServiceSasSignatureValues} for more information on how to construct a service SAS.

* *

Code Samples

diff --git a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareFileClient.java b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareFileClient.java index 10454255284a..267498305c92 100644 --- a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareFileClient.java +++ b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareFileClient.java @@ -972,6 +972,7 @@ public HttpPipeline getHttpPipeline() { /** * Generates a service SAS for the file using the specified {@link ShareServiceSasSignatureValues} + * Note : The client must be authenticated via {@link StorageSharedKeyCredential} *

See {@link ShareServiceSasSignatureValues} for more information on how to construct a service SAS.

* *

Code Samples

diff --git a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareServiceAsyncClient.java b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareServiceAsyncClient.java index d410c5aadb8f..36c797e1bc53 100644 --- a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareServiceAsyncClient.java +++ b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareServiceAsyncClient.java @@ -510,6 +510,7 @@ public HttpPipeline getHttpPipeline() { /** * Generates an account SAS for the Azure Storage account using the specified {@link AccountSasSignatureValues}. + * Note : The client must be authenticated via {@link StorageSharedKeyCredential} *

See {@link AccountSasSignatureValues} for more information on how to construct an account SAS.

* *

The snippet below generates a SAS that lasts for two days and gives the user read and list access to blob diff --git a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareServiceClient.java b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareServiceClient.java index 8c5ee65f885a..455860367406 100644 --- a/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareServiceClient.java +++ b/sdk/storage/azure-storage-file-share/src/main/java/com/azure/storage/file/share/ShareServiceClient.java @@ -391,6 +391,7 @@ public HttpPipeline getHttpPipeline() { /** * Generates an account SAS for the Azure Storage account using the specified {@link AccountSasSignatureValues}. + * Note : The client must be authenticated via {@link StorageSharedKeyCredential} *

See {@link AccountSasSignatureValues} for more information on how to construct an account SAS.

* *

Generating an account SAS

diff --git a/sdk/storage/azure-storage-file-share/src/test/java/com/azure/storage/file/share/APISpec.groovy b/sdk/storage/azure-storage-file-share/src/test/java/com/azure/storage/file/share/APISpec.groovy index 3b0a73c860d8..8b273a96def7 100644 --- a/sdk/storage/azure-storage-file-share/src/test/java/com/azure/storage/file/share/APISpec.groovy +++ b/sdk/storage/azure-storage-file-share/src/test/java/com/azure/storage/file/share/APISpec.groovy @@ -43,7 +43,7 @@ class APISpec extends Specification { String connectionString // If debugging is enabled, recordings cannot run as there can only be one proxy at a time. - static boolean enableDebugging = true + static boolean enableDebugging = false /** * Setup the File service clients commonly used for the API tests. diff --git a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueAsyncClient.java b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueAsyncClient.java index 0bc6b8b9e15a..40d2a6bc4881 100644 --- a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueAsyncClient.java +++ b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueAsyncClient.java @@ -904,6 +904,7 @@ public String getAccountName() { /** * Generates a service sas for the queue using the specified {@link QueueServiceSasSignatureValues} + * Note : The client must be authenticated via {@link StorageSharedKeyCredential} *

See {@link QueueServiceSasSignatureValues} for more information on how to construct a service SAS.

* *

Code Samples

diff --git a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueClient.java b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueClient.java index 86f4c89fed3c..fc98c2fb8386 100644 --- a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueClient.java +++ b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueClient.java @@ -704,6 +704,7 @@ public String getAccountName() { /** * Generates a service sas for the queue using the specified {@link QueueServiceSasSignatureValues} + * Note : The client must be authenticated via {@link StorageSharedKeyCredential} *

See {@link QueueServiceSasSignatureValues} for more information on how to construct a service SAS.

* *

Code Samples

diff --git a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueServiceAsyncClient.java b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueServiceAsyncClient.java index 27dc13d90ccd..009c68e4b67e 100644 --- a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueServiceAsyncClient.java +++ b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueServiceAsyncClient.java @@ -505,6 +505,7 @@ public HttpPipeline getHttpPipeline() { /** * Generates an account SAS for the Azure Storage account using the specified {@link AccountSasSignatureValues}. + * Note : The client must be authenticated via {@link StorageSharedKeyCredential} *

See {@link AccountSasSignatureValues} for more information on how to construct an account SAS.

* *

The snippet below generates a SAS that lasts for two days and gives the user read and list access to diff --git a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueServiceClient.java b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueServiceClient.java index 9f52f4111ebc..7c3e2c9bf876 100644 --- a/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueServiceClient.java +++ b/sdk/storage/azure-storage-queue/src/main/java/com/azure/storage/queue/QueueServiceClient.java @@ -419,6 +419,7 @@ public HttpPipeline getHttpPipeline() { /** * Generates an account SAS for the Azure Storage account using the specified {@link AccountSasSignatureValues}. + * Note : The client must be authenticated via {@link StorageSharedKeyCredential} *

See {@link AccountSasSignatureValues} for more information on how to construct an account SAS.

* *

Generating an account SAS