diff --git a/sdk/storage/Azure.Storage.Blobs/perf/Azure.Storage.Blobs.Perf/Options/PartitionedTransferOptions.cs b/sdk/storage/Azure.Storage.Blobs/perf/Azure.Storage.Blobs.Perf/Options/PartitionedTransferOptions.cs index 7059044ebcbe7..b7f411cb74a78 100644 --- a/sdk/storage/Azure.Storage.Blobs/perf/Azure.Storage.Blobs.Perf/Options/PartitionedTransferOptions.cs +++ b/sdk/storage/Azure.Storage.Blobs/perf/Azure.Storage.Blobs.Perf/Options/PartitionedTransferOptions.cs @@ -65,9 +65,11 @@ static bool TryParseEncryptionVersion( case "2.0": version = ClientSideEncryptionVersion.V2_0; return true; +#pragma warning disable CS0618 // obsolete case "1.0": version = ClientSideEncryptionVersion.V1_0; return true; +#pragma warning restore CS0618 // obsolete default: version = 0; return false; diff --git a/sdk/storage/Azure.Storage.Blobs/src/BlobClientSideDecryptor.cs b/sdk/storage/Azure.Storage.Blobs/src/BlobClientSideDecryptor.cs index b305b6e4dfeb2..b9967bb403173 100644 --- a/sdk/storage/Azure.Storage.Blobs/src/BlobClientSideDecryptor.cs +++ b/sdk/storage/Azure.Storage.Blobs/src/BlobClientSideDecryptor.cs @@ -57,7 +57,9 @@ public async Task DecryptInternal( int v2StartRegion0Indexed = (int)((contentRange?.Start / encryptionData.EncryptedRegionInfo?.GetTotalRegionLength()) ?? 0); int alreadyTrimmedOffset = encryptionData.EncryptionAgent.EncryptionVersion switch { +#pragma warning disable CS0618 // obsolete ClientSideEncryptionVersion.V1_0 => ivInStream ? Constants.ClientSideEncryption.EncryptionBlockSize : 0, +#pragma warning restore CS0618 // obsolete // first block is special case where we don't want to communicate a trim. Otherwise communicate nonce length * 1-indexed start region + tag length * 0-indexed region ClientSideEncryptionVersion.V2_0 => contentRange?.Start > 0 ? (-encryptionData.EncryptedRegionInfo.NonceLength * (v2StartRegion0Indexed)) - (Constants.ClientSideEncryption.V2.TagSize * v2StartRegion0Indexed) @@ -137,10 +139,12 @@ internal static EncryptionData GetAndValidateEncryptionDataOrDefault(Metadata me switch (encryptionData.EncryptionAgent.EncryptionVersion) { +#pragma warning disable CS0618 // obsolete case ClientSideEncryptionVersion.V1_0: _ = encryptionData.ContentEncryptionIV ?? throw Errors.ClientSideEncryption.MissingEncryptionMetadata( nameof(EncryptionData.ContentEncryptionIV)); break; +#pragma warning restore CS0618 // obsolete case ClientSideEncryptionVersion.V2_0: _ = encryptionData.EncryptedRegionInfo ?? throw Errors.ClientSideEncryption.MissingEncryptionMetadata( nameof(EncryptionData.EncryptedRegionInfo)); @@ -205,8 +209,10 @@ internal static HttpRange GetEncryptedBlobRange(HttpRange originalRange, Encrypt switch (encryptionData.EncryptionAgent.EncryptionVersion) { +#pragma warning disable CS0618 // obsolete case ClientSideEncryptionVersion.V1_0: return GetEncryptedBlobRangeV1_0(originalRange); +#pragma warning restore CS0618 // obsolete case ClientSideEncryptionVersion.V2_0: return GetEncryptedBlobRangeV2_0(originalRange, encryptionData); default: diff --git a/sdk/storage/Azure.Storage.Blobs/tests/ClientSideEncryptedBlobClientOpenWriteTests.cs b/sdk/storage/Azure.Storage.Blobs/tests/ClientSideEncryptedBlobClientOpenWriteTests.cs index b0070d1f459cd..b2693e7886657 100644 --- a/sdk/storage/Azure.Storage.Blobs/tests/ClientSideEncryptedBlobClientOpenWriteTests.cs +++ b/sdk/storage/Azure.Storage.Blobs/tests/ClientSideEncryptedBlobClientOpenWriteTests.cs @@ -18,11 +18,21 @@ namespace Azure.Storage.Blobs.Tests /// difficult to add onto only one test fixture parameter value and not others. /// [LiveOnly] +#pragma warning disable CS0618 // obsolete + [TestFixture(ClientSideEncryptionVersion.V1_0)] + [TestFixture(ClientSideEncryptionVersion.V2_0)] +#pragma warning restore CS0618 // obsolete public class ClientSideEncryptedBlobClientOpenWriteTests : BlobClientOpenWriteTests { - public ClientSideEncryptedBlobClientOpenWriteTests(bool async, BlobClientOptions.ServiceVersion serviceVersion) + private readonly ClientSideEncryptionVersion _version; + + public ClientSideEncryptedBlobClientOpenWriteTests( + ClientSideEncryptionVersion version, + bool async, + BlobClientOptions.ServiceVersion serviceVersion) : base(async, serviceVersion, null /* RecordedTestMode.Record /* to re-record */) { + _version = version; // Validate every test actually used client-side encryption when writing a blob. AdditionalAssertions += async (client) => { @@ -34,7 +44,7 @@ public ClientSideEncryptedBlobClientOpenWriteTests(bool async, BlobClientOptions protected override BlobClient GetResourceClient(BlobContainerClient container, string resourceName = null, BlobClientOptions options = null) { options ??= ClientBuilder.GetOptions(); - options._clientSideEncryptionOptions = new ClientSideEncryptionOptions(ClientSideEncryptionVersion.V1_0) + options._clientSideEncryptionOptions = new ClientSideEncryptionOptions(_version) { KeyEncryptionKey = this.GetIKeyEncryptionKey(expectedCancellationToken: default).Object, KeyWrapAlgorithm = ClientSideEncryptionTestExtensions.s_algorithmName diff --git a/sdk/storage/Azure.Storage.Blobs/tests/ClientSideEncryptionTests.cs b/sdk/storage/Azure.Storage.Blobs/tests/ClientSideEncryptionTests.cs index 7f52b6580daa1..5217c7ab15c41 100644 --- a/sdk/storage/Azure.Storage.Blobs/tests/ClientSideEncryptionTests.cs +++ b/sdk/storage/Azure.Storage.Blobs/tests/ClientSideEncryptionTests.cs @@ -159,8 +159,10 @@ private async Task ReplicateEncryption(byte[] plaintext, BlobProperties EncryptionData encryptionMetadata = EncryptionDataSerializer.Deserialize(serialEncryptionData); switch (encryptionMetadata.EncryptionAgent.EncryptionVersion) { +#pragma warning disable CS0618 // obsolete case ClientSideEncryptionVersion.V1_0: return await ReplicateEncryptionV1_0(plaintext, encryptionMetadata, keyEncryptionKey); +#pragma warning restore CS0618 // obsolete case ClientSideEncryptionVersion.V2_0: return await ReplicateEncryptionV2_0(plaintext, encryptionMetadata, keyEncryptionKey); default: @@ -170,6 +172,7 @@ private async Task ReplicateEncryption(byte[] plaintext, BlobProperties throw new NotImplementedException(); } +#pragma warning disable CS0618 // obsolete private async Task ReplicateEncryptionV1_0(byte[] plaintext, EncryptionData encryptionMetadata, IKeyEncryptionKey keyEncryptionKey) { Assert.NotNull(encryptionMetadata, "Never encrypted data."); @@ -184,6 +187,7 @@ private async Task ReplicateEncryptionV1_0(byte[] plaintext, EncryptionD explicitlyUnwrappedKey, encryptionMetadata.ContentEncryptionIV); } +#pragma warning restore CS0618 // obsolete private async Task ReplicateEncryptionV2_0(byte[] plaintext, EncryptionData encryptionMetadata, IKeyEncryptionKey keyEncryptionKey) { @@ -230,20 +234,26 @@ private async Task GetMockEncryptionDataAsync(byte[] cek, IKeyEn Algorithm = s_algorithmName, KeyId = kek.KeyId }, - ContentEncryptionIV = GetRandomBuffer(32), + EncryptedRegionInfo = new EncryptedRegionInfo + { + DataLength = 4 * Constants.MB, + NonceLength = 12 + }, EncryptionAgent = new EncryptionAgent() { EncryptionAlgorithm = "foo", - EncryptionVersion = ClientSideEncryptionVersion.V1_0 + EncryptionVersion = ClientSideEncryptionVersion.V2_0 }, EncryptionMode = "bar", KeyWrappingMetadata = new Dictionary { { "fizz", "buzz" } } }; } +#pragma warning disable CS0618 // obsolete [TestCase(ClientSideEncryptionVersion.V1_0)] [TestCase(ClientSideEncryptionVersion.V2_0)] [LiveOnly] +#pragma warning restore CS0618 // obsolete public void CanSwapKey(ClientSideEncryptionVersion version) { var options1 = new ClientSideEncryptionOptions(version) @@ -275,6 +285,7 @@ public void CanSwapKey(ClientSideEncryptionVersion version) Assert.AreEqual(options2.KeyWrapAlgorithm, client.ClientSideEncryption.KeyWrapAlgorithm); } +#pragma warning disable CS0618 // obsolete [TestCase(ClientSideEncryptionVersion.V1_0, 16)] // a single cipher block [TestCase(ClientSideEncryptionVersion.V1_0, 14)] // a single unalligned cipher block [TestCase(ClientSideEncryptionVersion.V1_0, Constants.KB)] // multiple blocks @@ -286,6 +297,7 @@ public void CanSwapKey(ClientSideEncryptionVersion version) [TestCase(ClientSideEncryptionVersion.V2_0, 2 * V2.EncryptionRegionDataSize)] // multiple blocks [TestCase(ClientSideEncryptionVersion.V2_0, 2 * V2.EncryptionRegionDataSize - 1000000)] // multiple unalligned blocks [LiveOnly] // cannot seed content encryption key +#pragma warning restore CS0618 // obsolete public async Task UploadAsync(ClientSideEncryptionVersion version, long dataSize) { var plaintext = GetRandomBuffer(dataSize); @@ -311,6 +323,7 @@ public async Task UploadAsync(ClientSideEncryptionVersion version, long dataSize } } +#pragma warning disable CS0618 // obsolete [TestCase(ClientSideEncryptionVersion.V1_0, 16, 16)] [TestCase(ClientSideEncryptionVersion.V1_0, Constants.KB, 1000)] // unaligned write buffer [TestCase(ClientSideEncryptionVersion.V1_0, Constants.KB - 4, 1000)] // unalligned wite buffer and data @@ -320,6 +333,7 @@ public async Task UploadAsync(ClientSideEncryptionVersion version, long dataSize [TestCase(ClientSideEncryptionVersion.V2_0, V2.EncryptionRegionDataSize - 1000000, Constants.MB)] [TestCase(ClientSideEncryptionVersion.V2_0, 2 * V2.EncryptionRegionDataSize, 1000000)] // multiple blocks w/ unallignment [LiveOnly] // cannot seed content encryption key +#pragma warning restore CS0618 // obsolete public async Task OpenWriteAsync(ClientSideEncryptionVersion version, long dataSize, int bufferSize) { var plaintext = GetRandomBuffer(dataSize); @@ -359,9 +373,11 @@ public async Task OpenWriteAsync(ClientSideEncryptionVersion version, long dataS } } +#pragma warning disable CS0618 // obsolete [TestCase(ClientSideEncryptionVersion.V1_0)] [TestCase(ClientSideEncryptionVersion.V2_0)] [LiveOnly] // cannot seed content encryption key +#pragma warning restore CS0618 // obsolete public async Task OpenWriteAsyncNoOpenWriteOptions(ClientSideEncryptionVersion version) { var plaintext = GetRandomBuffer(Constants.KB); @@ -398,9 +414,11 @@ public async Task OpenWriteAsyncNoOpenWriteOptions(ClientSideEncryptionVersion v } } +#pragma warning disable CS0618 // obsolete [TestCase(ClientSideEncryptionVersion.V1_0)] [TestCase(ClientSideEncryptionVersion.V2_0)] [LiveOnly] // cannot seed content encryption key +#pragma warning restore CS0618 // obsolete public async Task UploadAsync_OverwritesDeliberately_BinaryData(ClientSideEncryptionVersion version) { var plaintext = GetRandomBuffer(Constants.KB); @@ -473,6 +491,7 @@ await blob.UploadAsync( } } +#pragma warning disable CS0618 // obsolete [TestCase(ClientSideEncryptionVersion.V1_0, 16, null)] // a single cipher block [TestCase(ClientSideEncryptionVersion.V1_0, 14, null)] // a single unalligned cipher block [TestCase(ClientSideEncryptionVersion.V1_0, Constants.KB, null)] // multiple blocks @@ -484,6 +503,7 @@ await blob.UploadAsync( [TestCase(ClientSideEncryptionVersion.V2_0, 2 * V2.EncryptionRegionDataSize, null)] // multiple blocks [TestCase(ClientSideEncryptionVersion.V2_0, 2 * V2.EncryptionRegionDataSize - 1000000, null)] // multiple unalligned blocks [LiveOnly] // cannot seed content encryption key +#pragma warning restore CS0618 // obsolete public async Task RoundtripAsync(ClientSideEncryptionVersion version, long dataSize, long? initialDownloadRequestSize) { var data = GetRandomBuffer(dataSize); @@ -566,6 +586,7 @@ await blob.DownloadToAsync(stream, } } +#pragma warning disable CS0618 // obsolete [TestCase(ClientSideEncryptionVersion.V1_0, Constants.MB, 64 * Constants.KB)] [TestCase(ClientSideEncryptionVersion.V1_0, Constants.MB, Constants.MB)] [TestCase(ClientSideEncryptionVersion.V1_0, Constants.MB, 4 * Constants.MB)] @@ -573,6 +594,7 @@ await blob.DownloadToAsync(stream, [TestCase(ClientSideEncryptionVersion.V2_0, 2 * V2.EncryptionRegionDataSize, Constants.MB)] [TestCase(ClientSideEncryptionVersion.V2_0, 2 * V2.EncryptionRegionDataSize + 1000, Constants.MB + 15)] [LiveOnly] // cannot seed content encryption key +#pragma warning restore CS0618 // obsolete public async Task RoundtripAsyncWithOpenRead(ClientSideEncryptionVersion version, long dataSize, int bufferSize) { var data = GetRandomBuffer(dataSize); @@ -698,6 +720,7 @@ public async Task KeyResolverKicksIn([ValueSource("GetEncryptionVersions")] Clie } } +#pragma warning disable CS0618 // obsolete [TestCase(ClientSideEncryptionVersion.V1_0, 0, 16)] // first block [TestCase(ClientSideEncryptionVersion.V1_0, 16, 16)] // not first block [TestCase(ClientSideEncryptionVersion.V1_0, 32, 32)] // multiple blocks; IV not at blob start @@ -719,11 +742,14 @@ public async Task KeyResolverKicksIn([ValueSource("GetEncryptionVersions")] Clie [TestCase(ClientSideEncryptionVersion.V2_0, V2.EncryptionRegionDataSize + 1024, 30)] // small range inside non-first region [TestCase(ClientSideEncryptionVersion.V2_0, V2.EncryptionRegionDataSize, null)] // second region to end [LiveOnly] // cannot seed content encryption key +#pragma warning restore CS0618 // obsolete public async Task PartialDownloadAsync(ClientSideEncryptionVersion version, int offset, int? count) { int countDefault = version switch { +#pragma warning disable CS0618 // obsolete ClientSideEncryptionVersion.V1_0 => 16, +#pragma warning restore CS0618 // obsolete ClientSideEncryptionVersion.V2_0 => V2.EncryptionRegionDataSize, _ => throw new ArgumentException() }; @@ -778,11 +804,13 @@ public async Task Track2DownloadTrack1Blob() var mockKey = this.GetTrackOneIKey(keyEncryptionKeyBytes, keyId).Object; var mockKeyResolver = this.GetIKeyEncryptionKeyResolver(s_cancellationToken, this.GetIKeyEncryptionKey(s_cancellationToken, keyEncryptionKeyBytes, keyId).Object).Object; +#pragma warning disable CS0618 // obsolete await using (var disposable = await GetTestContainerEncryptionAsync(new ClientSideEncryptionOptions(ClientSideEncryptionVersion.V1_0) { KeyResolver = mockKeyResolver, KeyWrapAlgorithm = s_algorithmName })) +#pragma warning restore CS0618 // obsolete { var track2Blob = InstrumentClient(disposable.Container.GetBlobClient(GetNewBlobName())); @@ -825,11 +853,13 @@ public async Task Track1DownloadTrack2Blob() var mockKey = this.GetIKeyEncryptionKey(s_cancellationToken, keyEncryptionKeyBytes, keyId).Object; var mockKeyResolver = this.GetTrackOneIKeyResolver(this.GetTrackOneIKey(keyEncryptionKeyBytes, keyId).Object).Object; await using (var disposable = await GetTestContainerEncryptionAsync( +#pragma warning disable CS0618 // obsolete new ClientSideEncryptionOptions(ClientSideEncryptionVersion.V1_0) { KeyEncryptionKey = mockKey, KeyWrapAlgorithm = s_algorithmName })) +#pragma warning restore CS0618 // obsolete { var track2Blob = InstrumentClient(disposable.Container.GetBlobClient(GetNewBlobName())); @@ -884,9 +914,11 @@ public async Task RoundtripWithKeyvaultProvider([ValueSource("GetEncryptionVersi } } +#pragma warning disable CS0618 // obsolete [TestCase(ClientSideEncryptionVersion.V1_0, Constants.MB, 64*Constants.KB)] [TestCase(ClientSideEncryptionVersion.V2_0, Constants.MB, 64 * Constants.KB)] [LiveOnly] // need access to keyvault service && cannot seed content encryption key +#pragma warning restore CS0618 // obsolete public async Task RoundtripWithKeyvaultProviderOpenRead(ClientSideEncryptionVersion version, long dataSize, int bufferSize) { var data = GetRandomBuffer(dataSize); @@ -981,7 +1013,7 @@ public async Task AppropriateRangeDownloadOnPlaintext(int rangeOffset, int? rang // download plaintext range with encrypted client var cryptoClient = InstrumentClient(new BlobClient(blob.Uri, Tenants.GetNewSharedKeyCredentials(), new SpecializedBlobClientOptions() { - ClientSideEncryption = new ClientSideEncryptionOptions(ClientSideEncryptionVersion.V1_0) + ClientSideEncryption = new ClientSideEncryptionOptions(ClientSideEncryptionVersion.V2_0) { KeyResolver = mockKeyResolver } @@ -1202,7 +1234,8 @@ await blob.UploadAsync( } [RecordedTest] - public void CanGenerateSas_WithClientSideEncryptionOptions_True() + public void CanGenerateSas_WithClientSideEncryptionOptions_True( + [ValueSource("GetEncryptionVersions")] ClientSideEncryptionVersion version) { // Arrange var constants = TestConstants.Create(this); @@ -1211,7 +1244,7 @@ public void CanGenerateSas_WithClientSideEncryptionOptions_True() var storageConnectionString = new StorageConnectionString(constants.Sas.SharedKeyCredential, blobStorageUri: (blobEndpoint, blobSecondaryEndpoint)); string connectionString = storageConnectionString.ToString(true); - var options = new ClientSideEncryptionOptions(ClientSideEncryptionVersion.V1_0) + var options = new ClientSideEncryptionOptions(version) { KeyEncryptionKey = this.GetIKeyEncryptionKey(s_cancellationToken).Object, KeyResolver = this.GetIKeyEncryptionKeyResolver(s_cancellationToken, default).Object, @@ -1233,13 +1266,14 @@ public void CanGenerateSas_WithClientSideEncryptionOptions_True() } [RecordedTest] - public void CanGenerateSas_WithClientSideEncryptionOptions_False() + public void CanGenerateSas_WithClientSideEncryptionOptions_False( + [ValueSource("GetEncryptionVersions")] ClientSideEncryptionVersion version) { // Arrange var constants = TestConstants.Create(this); var blobEndpoint = new Uri("https://127.0.0.1/" + constants.Sas.Account); - var options = new ClientSideEncryptionOptions(ClientSideEncryptionVersion.V1_0) + var options = new ClientSideEncryptionOptions(version) { KeyEncryptionKey = this.GetIKeyEncryptionKey(s_cancellationToken).Object, KeyResolver = this.GetIKeyEncryptionKeyResolver(s_cancellationToken, default).Object, @@ -1268,9 +1302,11 @@ public void CanParseLargeContentRange() Assert.AreEqual((long)Int32.MaxValue + 1, contentRange.End); } - [TestCase(true)] - [TestCase(false)] - public async Task UpdateKey(bool useOverrides) + [RecordedTest] + [Combinatorial] + public async Task UpdateKey( + [Values(true, false)] bool useOverrides, + [ValueSource("GetEncryptionVersions")] ClientSideEncryptionVersion version) { /* Test does not actually upload encrypted data, only simulates it by setting specific * metadata. This allows the test to be recordable and to hopefully catch breaks in playback CI. @@ -1295,7 +1331,7 @@ public async Task UpdateKey(bool useOverrides) await AssertKeyAsync(blob, mockKey1.Object); // Act - await CallCorrectKeyUpdateAsync(blob, useOverrides, mockKey2.Object, mockKeyResolver); + await CallCorrectKeyUpdateAsync(blob, useOverrides, mockKey2.Object, mockKeyResolver, version); // Assert await AssertKeyAsync(blob, mockKey2.Object, cek); @@ -1335,7 +1371,7 @@ public async Task DoesETagLockOnKeyUpdate() if (IsAsync) { updateResult = blob.UpdateClientSideKeyEncryptionKeyAsync( - encryptionOptionsOverride: new ClientSideEncryptionOptions(ClientSideEncryptionVersion.V1_0) + encryptionOptionsOverride: new ClientSideEncryptionOptions(ClientSideEncryptionVersion.V2_0) { KeyEncryptionKey = mockKey2.Object, KeyResolver = mockKeyResolver, @@ -1346,7 +1382,7 @@ public async Task DoesETagLockOnKeyUpdate() else { updateResult = Task.Run(() => blob.UpdateClientSideKeyEncryptionKey( - encryptionOptionsOverride: new ClientSideEncryptionOptions(ClientSideEncryptionVersion.V1_0) + encryptionOptionsOverride: new ClientSideEncryptionOptions(ClientSideEncryptionVersion.V2_0) { KeyEncryptionKey = mockKey2.Object, KeyResolver = mockKeyResolver, @@ -1400,7 +1436,7 @@ public async Task CanRoundtripWithKeyUpdate( await AssertKeyAsync(blob, mockKey1.Object); // Act - await CallCorrectKeyUpdateAsync(blob, useOverrides, mockKey2.Object, mockKeyResolver); + await CallCorrectKeyUpdateAsync(blob, useOverrides, mockKey2.Object, mockKeyResolver, version); // Assert await AssertKeyAsync(blob, mockKey2.Object); @@ -1464,7 +1500,12 @@ static byte[] GetRandomBytes(int length) /// New KEK for encryption data. /// Key resolver for unwraping the old key. /// - private async Task CallCorrectKeyUpdateAsync(BlobClient blob, bool useOverrides, IKeyEncryptionKey newKey, IKeyEncryptionKeyResolver keyResolver) + private async Task CallCorrectKeyUpdateAsync( + BlobClient blob, + bool useOverrides, + IKeyEncryptionKey newKey, + IKeyEncryptionKeyResolver keyResolver, + ClientSideEncryptionVersion version) { if (useOverrides) { @@ -1475,7 +1516,7 @@ private async Task CallCorrectKeyUpdateAsync(BlobClient blob, bool useOverrides, if (IsAsync) { await blob.UpdateClientSideKeyEncryptionKeyAsync( - encryptionOptionsOverride: new ClientSideEncryptionOptions(ClientSideEncryptionVersion.V1_0) + encryptionOptionsOverride: new ClientSideEncryptionOptions(version) { KeyEncryptionKey = newKey, KeyResolver = keyResolver, @@ -1486,7 +1527,7 @@ await blob.UpdateClientSideKeyEncryptionKeyAsync( else { blob.UpdateClientSideKeyEncryptionKey( - encryptionOptionsOverride: new ClientSideEncryptionOptions(ClientSideEncryptionVersion.V1_0) + encryptionOptionsOverride: new ClientSideEncryptionOptions(version) { KeyEncryptionKey = newKey, KeyResolver = keyResolver, @@ -1498,7 +1539,7 @@ await blob.UpdateClientSideKeyEncryptionKeyAsync( else { // switch over to a client with clientside encryption options configured and use them - blob = BlobsClientBuilder.RotateBlobClientSharedKey(blob, options => options._clientSideEncryptionOptions = new ClientSideEncryptionOptions(ClientSideEncryptionVersion.V1_0) + blob = BlobsClientBuilder.RotateBlobClientSharedKey(blob, options => options._clientSideEncryptionOptions = new ClientSideEncryptionOptions(version) { KeyEncryptionKey = newKey, KeyResolver = keyResolver, diff --git a/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_False(V1_0).json b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_False(V1_0).json new file mode 100644 index 0000000000000..509f5ddf9a17c --- /dev/null +++ b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_False(V1_0).json @@ -0,0 +1,7 @@ +{ + "Entries": [], + "Variables": { + "DateTimeOffsetNow": "2022-06-30T14:48:13.3148715-04:00", + "RandomSeed": "1227368565" + } +} diff --git a/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_False(V1_0)Async.json b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_False(V1_0)Async.json new file mode 100644 index 0000000000000..afe6f965dcc84 --- /dev/null +++ b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_False(V1_0)Async.json @@ -0,0 +1,7 @@ +{ + "Entries": [], + "Variables": { + "DateTimeOffsetNow": "2022-06-30T14:48:13.6173028-04:00", + "RandomSeed": "303249191" + } +} diff --git a/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_False(V2_0).json b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_False(V2_0).json new file mode 100644 index 0000000000000..e39ebed882e04 --- /dev/null +++ b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_False(V2_0).json @@ -0,0 +1,7 @@ +{ + "Entries": [], + "Variables": { + "DateTimeOffsetNow": "2022-06-30T14:48:13.5609513-04:00", + "RandomSeed": "2054236840" + } +} diff --git a/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_False(V2_0)Async.json b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_False(V2_0)Async.json new file mode 100644 index 0000000000000..8d9d4d0655b73 --- /dev/null +++ b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_False(V2_0)Async.json @@ -0,0 +1,7 @@ +{ + "Entries": [], + "Variables": { + "DateTimeOffsetNow": "2022-06-30T14:48:13.6283678-04:00", + "RandomSeed": "863266484" + } +} diff --git a/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_True(V1_0).json b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_True(V1_0).json new file mode 100644 index 0000000000000..e0f402c8fd4bf --- /dev/null +++ b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_True(V1_0).json @@ -0,0 +1,7 @@ +{ + "Entries": [], + "Variables": { + "DateTimeOffsetNow": "2022-06-30T14:48:13.5724998-04:00", + "RandomSeed": "730442429" + } +} diff --git a/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_True(V1_0)Async.json b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_True(V1_0)Async.json new file mode 100644 index 0000000000000..35cc2838bc418 --- /dev/null +++ b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_True(V1_0)Async.json @@ -0,0 +1,7 @@ +{ + "Entries": [], + "Variables": { + "DateTimeOffsetNow": "2022-06-30T14:48:13.6378097-04:00", + "RandomSeed": "2081346867" + } +} diff --git a/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_True(V2_0).json b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_True(V2_0).json new file mode 100644 index 0000000000000..f8505da2ddcca --- /dev/null +++ b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_True(V2_0).json @@ -0,0 +1,7 @@ +{ + "Entries": [], + "Variables": { + "DateTimeOffsetNow": "2022-06-30T14:48:13.5963434-04:00", + "RandomSeed": "1754536337" + } +} diff --git a/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_True(V2_0)Async.json b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_True(V2_0)Async.json new file mode 100644 index 0000000000000..44e30afa2672b --- /dev/null +++ b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/CanGenerateSas_WithClientSideEncryptionOptions_True(V2_0)Async.json @@ -0,0 +1,7 @@ +{ + "Entries": [], + "Variables": { + "DateTimeOffsetNow": "2022-06-30T14:48:13.6479940-04:00", + "RandomSeed": "2003200681" + } +} diff --git a/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/DoesETagLockOnKeyUpdate.json b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/DoesETagLockOnKeyUpdate.json index f4add90ef0c3c..d360dc5b6ad86 100644 --- a/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/DoesETagLockOnKeyUpdate.json +++ b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/DoesETagLockOnKeyUpdate.json @@ -1,17 +1,17 @@ { "Entries": [ { - "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-f26d01f6-8ece-8833-c354-e632ff388af0?restype=container", + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-cd023261-36cc-6b7b-f2ee-431e091eaae8?restype=container", "RequestMethod": "PUT", "RequestHeaders": { "Accept": "application/xml", "Authorization": "Sanitized", "Content-Length": "0", - "traceparent": "00-208575cf2971f029df2264379513592e-887ac61ac074f8e6-00", - "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220624.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "traceparent": "00-e74d9db3e1f21f05bce12eba09088896-7125f2185907ff0a-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", "x-ms-blob-public-access": "container", - "x-ms-client-request-id": "b2336398-7158-efd6-7bb5-649378808256", - "x-ms-date": "Fri, 24 Jun 2022 13:34:25 GMT", + "x-ms-client-request-id": "6ca4dba2-0f81-0552-7701-ee301ee4c80a", + "x-ms-date": "Thu, 30 Jun 2022 18:44:12 GMT", "x-ms-return-client-request-id": "true", "x-ms-version": "2021-08-06" }, @@ -19,67 +19,67 @@ "StatusCode": 201, "ResponseHeaders": { "Content-Length": "0", - "Date": "Fri, 24 Jun 2022 13:34:25 GMT", - "ETag": "\u00220x8DA55E641F6F51C\u0022", - "Last-Modified": "Fri, 24 Jun 2022 13:34:26 GMT", + "Date": "Thu, 30 Jun 2022 18:44:12 GMT", + "ETag": "\u00220x8DA5AC886A08492\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:44:12 GMT", "Server": [ "Windows-Azure-Blob/1.0", "Microsoft-HTTPAPI/2.0" ], - "x-ms-client-request-id": "b2336398-7158-efd6-7bb5-649378808256", - "x-ms-request-id": "05ee9cf5-301e-0060-55cf-87a589000000", + "x-ms-client-request-id": "6ca4dba2-0f81-0552-7701-ee301ee4c80a", + "x-ms-request-id": "681b0d5f-001e-000e-75b1-8c0ca0000000", "x-ms-version": "2021-08-06" }, "ResponseBody": null }, { - "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-f26d01f6-8ece-8833-c354-e632ff388af0/test-blob-b4d3eba8-0263-12f4-f42f-ecdc7d281ec6", + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-cd023261-36cc-6b7b-f2ee-431e091eaae8/test-blob-517e5f8d-5f60-5f72-6373-b2b216cca3b8", "RequestMethod": "PUT", "RequestHeaders": { "Accept": "application/xml", "Authorization": "Sanitized", "Content-Length": "1024", "Content-Type": "application/octet-stream", - "traceparent": "00-6c1311d457c1304071147596af221f14-6138309771e5baf4-00", - "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220624.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "traceparent": "00-bd3fceac2388dafadf5da3653afddffc-4d93de83ac696af3-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", "x-ms-blob-type": "BlockBlob", - "x-ms-client-request-id": "7e62b96f-ae29-969a-6e21-be2984f97153", - "x-ms-date": "Fri, 24 Jun 2022 13:34:26 GMT", - "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022406bae40-59bb-949b-1ccc-825a1aac8c45\u0022,\u0022EncryptedKey\u0022:\u00228A6PbMfi97Nf/An1VL3Rji9rsaTlcp3BSZt4bwOK8wo=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00221.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022ContentEncryptionIV\u0022:\u0022nLh0nz1H0Pl16I4qtMVkpX2vPifnXrKCjzLc05Z3Tys=\u0022,\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-client-request-id": "69201650-48bc-43a7-6945-080d5d9fefaa", + "x-ms-date": "Thu, 30 Jun 2022 18:44:12 GMT", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022c789e309-c5ee-53c0-b8f5-c1809768c5be\u0022,\u0022EncryptedKey\u0022:\u0022DuITthnuZEKifkj5YHwi4MMNkh7hnfwt18e3nt2qICQ=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", "x-ms-return-client-request-id": "true", "x-ms-version": "2021-08-06" }, - "RequestBody": "6A2dbFLbVjQoE6Yq/l5VjO/nK64NQ8tSz2ikydbPm19c/WGVNAdbp1Zby/CpfJV8/y0jMQgS6aVBS5zqNoxdWXhHzgD9v1foi4NXsnfbqVLSKMqoq2pWShS8VOlqcXDK/XJ3Ya6Ufz/WO6WEuzYtZaFKFw7Bta0O8IPsQWttfhoSjLUFZEejPamL0nDE0o7eju5IIFlhCEfFaXAqqD7TaLyLci6AJwFZptllNuM8SR70DbJ9JV3AsINuQPrXeJVqt2mzOGBgXWft7np//NJkiB9RNZqLVkNfysGqEucGgi1E\u002Bn55iRG\u002BlK9LkDfjQLSxCbfbhUL632ElVG2etkt/5mtNOwFT6v8OkqHrQMYMe4oM\u002BAgvKvzqShsdVDSjIN5ky6nLlgWyXh\u002B4zfOhD56bGdjjkb1DT7tvYvDlNZbKa3LChnQcQOWEWprpd10JSDt9gjtbv44hIXztXDMUzSiJ7WKA3ogpftjzXzciWddeZRq1aLNbb6vkoWX4L\u002BSxb41yYIn7iGqzVARiaGBW/sekjvYZX2R0Ln62nDwiME/0Qe\u002Bqr/lNY92wAhSv\u002BAZLjaKeU6DtmBAo/TILROwtkCO0biZwrE/OVisZaV1QxTV3ag\u002BZhNyvBqnfgrHHQh7xgnHw\u002Borg2\u002BBT0P101C6y2Df8k9rckwxGBWd8kSqdBhQMJ\u002BbrX8uql48uRrTfOjF7LKl5yq9EFO9lqvUjZEm2tsnpZ6xIxnhsUfxKrU1YZ8o1AWSAIzxlyBP3hrXWhzNFeI/q9tOEMmUxDXiy\u002BWaiDEMq7WLlNpONhJ\u002BZUEDDlsrJBTW9bXD2sM7\u002BTxXDss6sVHlxq5rQX0L8XXI06\u002BIlbXau6fQw5J/SMzyU5uZ9ytHQ7PzGUesw\u002BaXzwRD\u002BwsXs2eGfFMnafHDan3ddO3hbfpOgZP7lXhuLfu9PPSOP1HF3qA0F3rUI9nCL7LJz0r0smEJ9Xl7GBnrFE5bZij5MSssG5pNrVaDdl22NWXFpF6wyI6XgEnUSsKGSP8ofL2syP6HnbespwUKin8bwOKwJXPvppmeZbDhV8zby2BXVvWgCWxrPgarACGJiPXKvIXf1iePPNYgEmNJpknm1N\u002BgszeFd7tyROdpQKZ0FNi7GpdG//E4yBojg/sNHZu8xCtF5NXCQUjOaY1AJfgzq/mGkouyn9jqa\u002BsdZffAZSdLqHx7MiwC\u002BNVOeJZn\u002BKId89f9ho8MCiRSW3zuoNtVCgBl9Hl7tHnJh5WyZCNGhm9I/3YfxuKYO55UJNazFFv99W6SAgAkpjtaMAL5XaYFD9UNpaVlNUchybjfI4\u002BjGm89tG60sIRvIFk\u002BwZLjot34UxUBoXKymMArcDRHSYKrtxmTu6U3UFw==", + "RequestBody": "HJvNRDG\u002B1gm0\u002BEKawu6moVNyuM4o5xF/DPmg\u002BM3aLdGlfHbv/HhptepYtFsgaVzC0D5fT5mkGDWJTTc4Hd472spw9UZ3t6TbCALj0DK2XqOd3iePet44AGRBZa5BMZcMHNqQsHQWShiZhEaWwEcC0\u002B6Umz\u002B2rF/sOPThNlL1mddr1rRXJa4uh5MO9faXoT8cPpHArJZYVm97pHh/NBTGo\u002BpvK\u002BmTqq5AZROsp7ZoVZe0xfjANe1BE4BE24A2rlJ/SFEMKHVViJPjf0aCq664E0/hym4bBW78LRhpT84tCrbBLF9lWywhXzxk3bWmv2fSi8gxVOTjY0LjEPpc7DnEtXWPwX5OU7giv2sytye4VW6xlsQG/LXS3ckcgUsyxXIDnyg/Fv7ogzcPDpV4sasaKrqLq1V1vrnAvOO1MdJt7/r5Lxj/eD5wyROM9\u002B0gWisdAVaRphkcjeFvf1kaMlFloh\u002Baf4KTG7F7G\u002BJC6MbLn2K4lzB73Eng3KE3j/jlVpbBJ1TOhdqpiuakFYs32aUao\u002BD3YZoh6cbVuqPgXIu5lsVLgcBy/RqIDw1J1sa\u002BqAL7HesY7fT7nz2O\u002BMs3yC5a63/F61jkp6bFb1KN1xP/FxGg5T\u002BfoKjQUOGD4wRPUEbf7\u002BpG\u002BLypF3VFUn6hbsgqjuG5l\u002BPvukvX9Zt3YcShdh4LregouB5V9s3JWk0pLuIZWFUjlrlj8DWfbwMhMraxo9xflsDfAtXCY6AVJWD9rca4XghvfuBlqL2ziEkbNMQXGLZxyZgiOVV/YDIYTcvUosE8aNStQiX7\u002Bu0CLHmMpi/c/gypi\u002BMtliSz7x2tTFry3uaH38zvadaRds\u002BqHwzc87kCPE\u002B/KxbeDtGv\u002BlIHTa6TEE6TBMdj7JQ1GBUUg3YX1vxkqw8LM7PPqdD6P2\u002BEiSghFw\u002B\u002BSO7xn0\u002B6iRIByotbmCNVo6Keh9ybxFv3aa0ksI/t8mtmWI4OcgvAUKmgzd5Fn6dMLuaFg48yI4SS\u002BjaildiDFNcf9D\u002BVRzCX3jcz\u002BvZ8ssoF2IKoZ2/cNDUJe3fVHbrQHLkHJapnt\u002Be17qRY/ymNFkhsnL1W2q1nQ8AKi8u5wsB8Yt08dIwfnSGa83jKhDQLe2UvaID9ekIMoOLqXSsb/Czk251LUaG7TP6bu\u002Bc0nL6L/g9miVlAfuebMNSqNUD1f/dM5qiWwCrEdBuBYb5a1wMjXl8ctXLTo121ryDMERe\u002Bpjzw6LYW9T3koRU9vhwpQFjRhtbg2MmEeUJL4RAK\u002BGIEwruBau9MDGkhOBNdleVAjG7I\u002BopB3s1ybG90yxMt2qmyOfthp9ZohXptv6C2JuNdClWhQv7YwuTtD/2A2EFV9F1pqlzp3uSYXw==", "StatusCode": 201, "ResponseHeaders": { "Content-Length": "0", - "Content-MD5": "wZ8J\u002BsPVX\u002BvJtSs568yXig==", - "Date": "Fri, 24 Jun 2022 13:34:25 GMT", - "ETag": "\u00220x8DA55E6421CD734\u0022", - "Last-Modified": "Fri, 24 Jun 2022 13:34:26 GMT", + "Content-MD5": "CXxJK/eppmLRu\u002Bo9im86/Q==", + "Date": "Thu, 30 Jun 2022 18:44:12 GMT", + "ETag": "\u00220x8DA5AC886B51B96\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:44:12 GMT", "Server": [ "Windows-Azure-Blob/1.0", "Microsoft-HTTPAPI/2.0" ], - "x-ms-client-request-id": "7e62b96f-ae29-969a-6e21-be2984f97153", - "x-ms-content-crc64": "FUe3x9hUq8U=", - "x-ms-request-id": "05ee9d5f-301e-0060-34cf-87a589000000", + "x-ms-client-request-id": "69201650-48bc-43a7-6945-080d5d9fefaa", + "x-ms-content-crc64": "/jnc\u002BCmoyCk=", + "x-ms-request-id": "681b0dba-001e-000e-49b1-8c0ca0000000", "x-ms-request-server-encrypted": "true", "x-ms-version": "2021-08-06", - "x-ms-version-id": "2022-06-24T13:34:26.6371892Z" + "x-ms-version-id": "2022-06-30T18:44:12.6321558Z" }, "ResponseBody": null }, { - "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-f26d01f6-8ece-8833-c354-e632ff388af0/test-blob-b4d3eba8-0263-12f4-f42f-ecdc7d281ec6", + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-cd023261-36cc-6b7b-f2ee-431e091eaae8/test-blob-517e5f8d-5f60-5f72-6373-b2b216cca3b8", "RequestMethod": "HEAD", "RequestHeaders": { "Accept": "application/xml", "Authorization": "Sanitized", - "traceparent": "00-960185cb18c9e8b0cff8aa9d1a54994e-f270112683e573ce-00", - "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220624.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", - "x-ms-client-request-id": "c36d6769-9fc5-439c-4e03-2de3186e0912", - "x-ms-date": "Fri, 24 Jun 2022 13:34:26 GMT", + "traceparent": "00-83be3b6b6e2fec78873be67dfb5ec69c-32c4b7cbbfab81f7-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "ff627c04-39ab-0afb-9438-c434365976de", + "x-ms-date": "Thu, 30 Jun 2022 18:44:12 GMT", "x-ms-return-client-request-id": "true", "x-ms-version": "2021-08-06" }, @@ -88,11 +88,11 @@ "ResponseHeaders": { "Accept-Ranges": "bytes", "Content-Length": "1024", - "Content-MD5": "wZ8J\u002BsPVX\u002BvJtSs568yXig==", + "Content-MD5": "CXxJK/eppmLRu\u002Bo9im86/Q==", "Content-Type": "application/octet-stream", - "Date": "Fri, 24 Jun 2022 13:34:25 GMT", - "ETag": "\u00220x8DA55E6421CD734\u0022", - "Last-Modified": "Fri, 24 Jun 2022 13:34:26 GMT", + "Date": "Thu, 30 Jun 2022 18:44:12 GMT", + "ETag": "\u00220x8DA5AC886B51B96\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:44:12 GMT", "Server": [ "Windows-Azure-Blob/1.0", "Microsoft-HTTPAPI/2.0" @@ -100,28 +100,28 @@ "x-ms-access-tier": "Hot", "x-ms-access-tier-inferred": "true", "x-ms-blob-type": "BlockBlob", - "x-ms-client-request-id": "c36d6769-9fc5-439c-4e03-2de3186e0912", - "x-ms-creation-time": "Fri, 24 Jun 2022 13:34:26 GMT", + "x-ms-client-request-id": "ff627c04-39ab-0afb-9438-c434365976de", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:44:12 GMT", "x-ms-is-current-version": "true", "x-ms-lease-state": "available", "x-ms-lease-status": "unlocked", - "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022406bae40-59bb-949b-1ccc-825a1aac8c45\u0022,\u0022EncryptedKey\u0022:\u00228A6PbMfi97Nf/An1VL3Rji9rsaTlcp3BSZt4bwOK8wo=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00221.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022ContentEncryptionIV\u0022:\u0022nLh0nz1H0Pl16I4qtMVkpX2vPifnXrKCjzLc05Z3Tys=\u0022,\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", - "x-ms-request-id": "05ee9d7d-301e-0060-4dcf-87a589000000", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022c789e309-c5ee-53c0-b8f5-c1809768c5be\u0022,\u0022EncryptedKey\u0022:\u0022DuITthnuZEKifkj5YHwi4MMNkh7hnfwt18e3nt2qICQ=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "681b0dd7-001e-000e-62b1-8c0ca0000000", "x-ms-server-encrypted": "true", "x-ms-version": "2021-08-06", - "x-ms-version-id": "2022-06-24T13:34:26.6371892Z" + "x-ms-version-id": "2022-06-30T18:44:12.6321558Z" }, "ResponseBody": null }, { - "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-f26d01f6-8ece-8833-c354-e632ff388af0/test-blob-b4d3eba8-0263-12f4-f42f-ecdc7d281ec6", + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-cd023261-36cc-6b7b-f2ee-431e091eaae8/test-blob-517e5f8d-5f60-5f72-6373-b2b216cca3b8", "RequestMethod": "HEAD", "RequestHeaders": { "Accept": "application/xml", "Authorization": "Sanitized", - "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220624.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", - "x-ms-client-request-id": "1dc0448f-ad8b-f88d-015e-41e2b96eb7e4", - "x-ms-date": "Fri, 24 Jun 2022 13:34:26 GMT", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "e00942f9-ef3d-24ff-3ad2-4e30d65b189e", + "x-ms-date": "Thu, 30 Jun 2022 18:44:12 GMT", "x-ms-return-client-request-id": "true", "x-ms-version": "2021-08-06" }, @@ -130,11 +130,11 @@ "ResponseHeaders": { "Accept-Ranges": "bytes", "Content-Length": "1024", - "Content-MD5": "wZ8J\u002BsPVX\u002BvJtSs568yXig==", + "Content-MD5": "CXxJK/eppmLRu\u002Bo9im86/Q==", "Content-Type": "application/octet-stream", - "Date": "Fri, 24 Jun 2022 13:34:25 GMT", - "ETag": "\u00220x8DA55E6421CD734\u0022", - "Last-Modified": "Fri, 24 Jun 2022 13:34:26 GMT", + "Date": "Thu, 30 Jun 2022 18:44:12 GMT", + "ETag": "\u00220x8DA5AC886B51B96\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:44:12 GMT", "Server": [ "Windows-Azure-Blob/1.0", "Microsoft-HTTPAPI/2.0" @@ -142,31 +142,31 @@ "x-ms-access-tier": "Hot", "x-ms-access-tier-inferred": "true", "x-ms-blob-type": "BlockBlob", - "x-ms-client-request-id": "1dc0448f-ad8b-f88d-015e-41e2b96eb7e4", - "x-ms-creation-time": "Fri, 24 Jun 2022 13:34:26 GMT", + "x-ms-client-request-id": "e00942f9-ef3d-24ff-3ad2-4e30d65b189e", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:44:12 GMT", "x-ms-is-current-version": "true", "x-ms-lease-state": "available", "x-ms-lease-status": "unlocked", - "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022406bae40-59bb-949b-1ccc-825a1aac8c45\u0022,\u0022EncryptedKey\u0022:\u00228A6PbMfi97Nf/An1VL3Rji9rsaTlcp3BSZt4bwOK8wo=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00221.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022ContentEncryptionIV\u0022:\u0022nLh0nz1H0Pl16I4qtMVkpX2vPifnXrKCjzLc05Z3Tys=\u0022,\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", - "x-ms-request-id": "05ee9d9a-301e-0060-67cf-87a589000000", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022c789e309-c5ee-53c0-b8f5-c1809768c5be\u0022,\u0022EncryptedKey\u0022:\u0022DuITthnuZEKifkj5YHwi4MMNkh7hnfwt18e3nt2qICQ=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "681b0dfa-001e-000e-80b1-8c0ca0000000", "x-ms-server-encrypted": "true", "x-ms-version": "2021-08-06", - "x-ms-version-id": "2022-06-24T13:34:26.6371892Z" + "x-ms-version-id": "2022-06-30T18:44:12.6321558Z" }, "ResponseBody": null }, { - "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-f26d01f6-8ece-8833-c354-e632ff388af0/test-blob-b4d3eba8-0263-12f4-f42f-ecdc7d281ec6?comp=properties", + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-cd023261-36cc-6b7b-f2ee-431e091eaae8/test-blob-517e5f8d-5f60-5f72-6373-b2b216cca3b8?comp=properties", "RequestMethod": "PUT", "RequestHeaders": { "Accept": "application/xml", "Authorization": "Sanitized", "Content-Length": "0", - "traceparent": "00-44b7ee8864f933a00127682dd4343179-868da802e6cb7e39-00", - "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220624.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "traceparent": "00-94d6878a33ccc3c94723e1262e2db87e-4f7807fe50b4c7d9-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", "x-ms-blob-content-language": "foo", - "x-ms-client-request-id": "d354339e-ebae-0586-f0f0-e07af4bccff9", - "x-ms-date": "Fri, 24 Jun 2022 13:34:26 GMT", + "x-ms-client-request-id": "f43b634b-954f-10a1-5ee6-a2ee3d9bde2a", + "x-ms-date": "Thu, 30 Jun 2022 18:44:13 GMT", "x-ms-return-client-request-id": "true", "x-ms-version": "2021-08-06" }, @@ -174,31 +174,31 @@ "StatusCode": 200, "ResponseHeaders": { "Content-Length": "0", - "Date": "Fri, 24 Jun 2022 13:34:26 GMT", - "ETag": "\u00220x8DA55E642796890\u0022", - "Last-Modified": "Fri, 24 Jun 2022 13:34:27 GMT", + "Date": "Thu, 30 Jun 2022 18:44:13 GMT", + "ETag": "\u00220x8DA5AC887104D86\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:44:13 GMT", "Server": [ "Windows-Azure-Blob/1.0", "Microsoft-HTTPAPI/2.0" ], - "x-ms-client-request-id": "d354339e-ebae-0586-f0f0-e07af4bccff9", - "x-ms-request-id": "05ee9e60-301e-0060-19cf-87a589000000", + "x-ms-client-request-id": "f43b634b-954f-10a1-5ee6-a2ee3d9bde2a", + "x-ms-request-id": "681b0f8c-001e-000e-55b1-8c0ca0000000", "x-ms-version": "2021-08-06" }, "ResponseBody": null }, { - "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-f26d01f6-8ece-8833-c354-e632ff388af0/test-blob-b4d3eba8-0263-12f4-f42f-ecdc7d281ec6?comp=metadata", + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-cd023261-36cc-6b7b-f2ee-431e091eaae8/test-blob-517e5f8d-5f60-5f72-6373-b2b216cca3b8?comp=metadata", "RequestMethod": "PUT", "RequestHeaders": { "Accept": "application/xml", "Authorization": "Sanitized", "Content-Length": "0", - "If-Match": "\u00220x8DA55E6421CD734\u0022", - "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220624.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", - "x-ms-client-request-id": "86444d20-e319-4f36-0f87-c29acf263f0b", - "x-ms-date": "Fri, 24 Jun 2022 13:34:27 GMT", - "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u00222e347d17-ab2d-0fd0-e7ab-200fbc36bacd\u0022,\u0022EncryptedKey\u0022:\u00228A6PbMfi97Nf/An1VL3Rji9rsaTlcp3BSZt4bwOK8wo=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00221.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022ContentEncryptionIV\u0022:\u0022nLh0nz1H0Pl16I4qtMVkpX2vPifnXrKCjzLc05Z3Tys=\u0022,\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "If-Match": "\u00220x8DA5AC886B51B96\u0022", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "72e5f13c-241f-9e4f-5460-9a17cc163a13", + "x-ms-date": "Thu, 30 Jun 2022 18:44:13 GMT", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022a1ab8e7c-c1a0-4924-6cc0-f03171d6e3ed\u0022,\u0022EncryptedKey\u0022:\u0022DuITthnuZEKifkj5YHwi4MMNkh7hnfwt18e3nt2qICQ=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", "x-ms-return-client-request-id": "true", "x-ms-version": "2021-08-06" }, @@ -207,32 +207,32 @@ "ResponseHeaders": { "Content-Length": "252", "Content-Type": "application/xml", - "Date": "Fri, 24 Jun 2022 13:34:27 GMT", + "Date": "Thu, 30 Jun 2022 18:44:13 GMT", "Server": [ "Windows-Azure-Blob/1.0", "Microsoft-HTTPAPI/2.0" ], - "x-ms-client-request-id": "86444d20-e319-4f36-0f87-c29acf263f0b", + "x-ms-client-request-id": "72e5f13c-241f-9e4f-5460-9a17cc163a13", "x-ms-error-code": "ConditionNotMet", - "x-ms-request-id": "05ee9f47-301e-0060-72cf-87a589000000", + "x-ms-request-id": "681b10e1-001e-000e-08b1-8c0ca0000000", "x-ms-version": "2021-08-06" }, "ResponseBody": [ "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CError\u003E\u003CCode\u003EConditionNotMet\u003C/Code\u003E\u003CMessage\u003EThe condition specified using HTTP conditional header(s) is not met.\n", - "RequestId:05ee9f47-301e-0060-72cf-87a589000000\n", - "Time:2022-06-24T13:34:27.7831142Z\u003C/Message\u003E\u003C/Error\u003E" + "RequestId:681b10e1-001e-000e-08b1-8c0ca0000000\n", + "Time:2022-06-30T18:44:13.7664975Z\u003C/Message\u003E\u003C/Error\u003E" ] }, { - "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-f26d01f6-8ece-8833-c354-e632ff388af0?restype=container", + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-cd023261-36cc-6b7b-f2ee-431e091eaae8?restype=container", "RequestMethod": "DELETE", "RequestHeaders": { "Accept": "application/xml", "Authorization": "Sanitized", - "traceparent": "00-9c3721117d90c6cdc5cfe8a83e7f5532-1cbc846f32db97d1-00", - "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220624.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", - "x-ms-client-request-id": "a65a976b-4977-f6df-105a-5e45efd4107c", - "x-ms-date": "Fri, 24 Jun 2022 13:34:27 GMT", + "traceparent": "00-a64d9f40f0d90c09af914e12ffdacedd-89d2631995e8a63e-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "4cb1518b-6bb6-940a-833e-2b64594abe27", + "x-ms-date": "Thu, 30 Jun 2022 18:44:13 GMT", "x-ms-return-client-request-id": "true", "x-ms-version": "2021-08-06" }, @@ -240,20 +240,20 @@ "StatusCode": 202, "ResponseHeaders": { "Content-Length": "0", - "Date": "Fri, 24 Jun 2022 13:34:27 GMT", + "Date": "Thu, 30 Jun 2022 18:44:14 GMT", "Server": [ "Windows-Azure-Blob/1.0", "Microsoft-HTTPAPI/2.0" ], - "x-ms-client-request-id": "a65a976b-4977-f6df-105a-5e45efd4107c", - "x-ms-request-id": "05ee9f58-301e-0060-02cf-87a589000000", + "x-ms-client-request-id": "4cb1518b-6bb6-940a-833e-2b64594abe27", + "x-ms-request-id": "681b10fb-001e-000e-1db1-8c0ca0000000", "x-ms-version": "2021-08-06" }, "ResponseBody": null } ], "Variables": { - "RandomSeed": "1622621184", + "RandomSeed": "1001334644", "Storage_TestConfigDefault": "ProductionTenant\njaschrepragrs\nU2FuaXRpemVk\nhttps://jaschrepragrs.blob.core.windows.net\nhttps://jaschrepragrs.file.core.windows.net\nhttps://jaschrepragrs.queue.core.windows.net\nhttps://jaschrepragrs.table.core.windows.net\n\n\n\n\nhttps://jaschrepragrs-secondary.blob.core.windows.net\nhttps://jaschrepragrs-secondary.file.core.windows.net\nhttps://jaschrepragrs-secondary.queue.core.windows.net\nhttps://jaschrepragrs-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://jaschrepragrs.blob.core.windows.net/;QueueEndpoint=https://jaschrepragrs.queue.core.windows.net/;FileEndpoint=https://jaschrepragrs.file.core.windows.net/;BlobSecondaryEndpoint=https://jaschrepragrs-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://jaschrepragrs-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://jaschrepragrs-secondary.file.core.windows.net/;AccountName=jaschrepragrs;AccountKey=Sanitized\n[encryption scope]\n\n" } } diff --git a/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/DoesETagLockOnKeyUpdateAsync.json b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/DoesETagLockOnKeyUpdateAsync.json index 4e6f29c659708..22b57adeb0aa7 100644 --- a/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/DoesETagLockOnKeyUpdateAsync.json +++ b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/DoesETagLockOnKeyUpdateAsync.json @@ -1,17 +1,17 @@ { "Entries": [ { - "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-196bd558-3554-f494-52c6-fb4324fefb46?restype=container", + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-b699d8db-d553-1bd1-f24c-e7fbe5d8a9fd?restype=container", "RequestMethod": "PUT", "RequestHeaders": { "Accept": "application/xml", "Authorization": "Sanitized", "Content-Length": "0", - "traceparent": "00-9ed90d316c6cc1d41d4edf95f38a7956-34492c34c32da912-00", - "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220624.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "traceparent": "00-fc228ab3dedc89ac902aa85bc12c074e-c646f4b898d5f984-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", "x-ms-blob-public-access": "container", - "x-ms-client-request-id": "230b2259-beb7-66b5-7136-8b71c98c5207", - "x-ms-date": "Fri, 24 Jun 2022 13:34:28 GMT", + "x-ms-client-request-id": "70ad0471-56ed-7ab9-9637-851ca10047fd", + "x-ms-date": "Thu, 30 Jun 2022 18:44:14 GMT", "x-ms-return-client-request-id": "true", "x-ms-version": "2021-08-06" }, @@ -19,67 +19,67 @@ "StatusCode": 201, "ResponseHeaders": { "Content-Length": "0", - "Date": "Fri, 24 Jun 2022 13:34:27 GMT", - "ETag": "\u00220x8DA55E643305834\u0022", - "Last-Modified": "Fri, 24 Jun 2022 13:34:28 GMT", + "Date": "Thu, 30 Jun 2022 18:44:14 GMT", + "ETag": "\u00220x8DA5AC887BF5F7E\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:44:14 GMT", "Server": [ "Windows-Azure-Blob/1.0", "Microsoft-HTTPAPI/2.0" ], - "x-ms-client-request-id": "230b2259-beb7-66b5-7136-8b71c98c5207", - "x-ms-request-id": "05eea077-301e-0060-07cf-87a589000000", + "x-ms-client-request-id": "70ad0471-56ed-7ab9-9637-851ca10047fd", + "x-ms-request-id": "681b1290-001e-000e-09b1-8c0ca0000000", "x-ms-version": "2021-08-06" }, "ResponseBody": null }, { - "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-196bd558-3554-f494-52c6-fb4324fefb46/test-blob-9880937c-904e-b991-aa17-422c43967763", + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-b699d8db-d553-1bd1-f24c-e7fbe5d8a9fd/test-blob-96e6216c-5fbb-931d-5db0-7bcd86d26d18", "RequestMethod": "PUT", "RequestHeaders": { "Accept": "application/xml", "Authorization": "Sanitized", "Content-Length": "1024", "Content-Type": "application/octet-stream", - "traceparent": "00-b0e8c4723cfb6cbe546a80fc7d320209-de07e819175eae7a-00", - "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220624.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "traceparent": "00-84058d524fcd5b1f1a44159a15420d2f-58af071860d773ce-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", "x-ms-blob-type": "BlockBlob", - "x-ms-client-request-id": "e981ead6-7d6e-c844-9151-789f7c8923da", - "x-ms-date": "Fri, 24 Jun 2022 13:34:28 GMT", - "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022f6596e00-0e5b-e1dd-b459-0592571fb6de\u0022,\u0022EncryptedKey\u0022:\u0022I5eUuxgADGUpKsZ7PwvS97V33J7Qmp0LlWBH3/hIgpw=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00221.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022ContentEncryptionIV\u0022:\u0022Gaef\\u002BHRWNl1l60Bk\\u002BSPXCpwFKt43xNB3BnfZR0fSkh4=\u0022,\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-client-request-id": "8c92503e-2ef3-12c7-e61a-133cdbecf4c3", + "x-ms-date": "Thu, 30 Jun 2022 18:44:14 GMT", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u00221b3d17f6-167a-1d7b-f004-60d55b1d6f4d\u0022,\u0022EncryptedKey\u0022:\u0022jcdM2\\u002BozDKjfz/B3t3jy87CXrIeXdgPSKurh5m1iQfU=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", "x-ms-return-client-request-id": "true", "x-ms-version": "2021-08-06" }, - "RequestBody": "dzekqgxPbf3heCqfF1mVLMVgQpa/DzDpkfVdSyufaN9mywGQM2v8PQmI0qN5N8JTUTez1dy6BGgHuhkX8SLSQRBLOUtXBPlZYwSNNj2NcFozCvnz65ICrMeZiXlS5UzntZCSLv52\u002B0w\u002BWXHYLc0qekm\u002B5OYo31V\u002BSYyEvXp/B363pYGs\u002BkFcvA6ttJIgKX/6bw8vkwBlv9Y6FOVx8j7SvlLzIIdLfn8IYifYeirDXR8Nik5rUHN9UuWrceZc6snQ2/U/LQj3rvGQJzHYjUSrd7bFY2jwZm7edc6hoAyZq3deB581gy8WFtxd2ilCpMWh//ovlodh4HSHYLg6VQ3k93u5eoWkdfOGr02LkotEnNAIAKARaRXw/CcrriJ33MDOeOOuiSpA/IoHqOc61U3oQsToMVRs041lyX5deMfQD9OMvBqolhOlyAQWCsAutSbZQ2tejqpsYqRWSMCs4oPCNpkTrhgzP6yxQmlQVcnMNxNXgzRccoApIFp1UU1T\u002BeWAVNMnGgYNpgO\u002BrUxAGwzbiRGsVF5OZcQY6o6\u002Bve5fXkiDzwH1pB0MSd0xnsQ06AROmcg8pqWHMe8ODy94T\u002BkVXk8DvEsL5uT0nwqBHcf/5AKKbyMlI7ej/J0S5pXtlPrzGz91MCu4Q7PkSAeaBRQnDyss7t/F8DuYYMCt\u002BP9OBgsQjQKHibPW0SxvQduvCPaJ6tdqwKUaLSoD3c9qCkq0lUH7iXgRn4V3VhyyVq9g6FfKJA4n5EVl9V/XhKzjbMfiu6yZtH5\u002Bd0pR8mqIZ9d7o/V4oOY7jLD8lZQYOhvZk\u002BpV0JoDxzPYTKzD1vLa3Y6IW\u002BC2a8vgpy/7nB7qZT0veF\u002BAM5c9eNzBn1M6d7a\u002BIbgGj946IycedChrByoV7uZulF2SWqr2S\u002BIE9Mx4pi94PXtl5NZe9FU3Yr5u0XGxrLBty\u002BJYK8cOD0T7NS5aps758sqvsAkQD6AIW/frh3lxUkgbCttMHxGzVtWRYr4n3Lzvdd6mAvynXbtCUNDPIojLiuPmP5vyrdK5\u002B1k0f6zi4H47\u002BxKbylBMdK0fCs9A5DNMxdjbQJ0g/cgL7Qeic90OYG9SkyZ1ML\u002BSmcvu06IDeBYl57nUBp/gG/5Kj91IqQHPEKpf7lAN1pUZSKfSMiklB3TwfYskOlnPcXgnK6DhSvDJHsL4pIrGGBAjur74DujVJIdoVyx1q9ZRj33X5av1N/62CBRnLGPqKmR6AYCa1mOQUgYZefLEVHPspxQM7jNlLoLAQgXUbfcjfSzH\u002B6lVtrgaR5Kk274L8rSheoVP3jwxFNL92pRdu\u002BUO9fvF/FnJlvBc8qahwVLEtE9RM/Jy1J/wlebXWNwjvIusleXDRg==", + "RequestBody": "rUVjC/s75HdMFr3\u002BIvUCRRVmCFw3p8Rmxu0uy6hP8fyVLjPcrTQKffP8KDMBkKJK1a2Lx8NG6AWA/EQNDRnO/CXAaPPBJZjgW4tpOn6RZDZK5Pb7wyk5T0UtXLHw/XDaLiwNQSeuiLAVq2s43a6G7pcNwiki0zn8hxmulMjm8F4bjgxShCMPnFtG5Re9AHKWpm4Z4jpGt1ryELkOAPTnLrsNHU6iNGlz/ibN3O0hPoamF\u002B1azQ4k1NaxX3NpAJxnX7dcsOMk9HIEpeMTedtt0dIzZ\u002BgGjGGs6Uh38NT1Cv2KZn01xI6jgiJ7VicqEFv7RI6hNpmzYNJWsMearASeDpvliRJdNwxDkOXFizU5gdjte6xFVNNk1gaq3xTHCNUe3EiMRYZIng2BXqa07tSdHC7urDFXWLrHgLMMslf4fIcPpq7srTxSpdyfxPYtr\u002BcxDcLm2Fujx4OOxMTSO\u002Bu1ieEepEclsG/ynAdUuJTDmtHL26WUEqMsa98qXul3f2nx6TsUDgugC1xT9DxUTg7vyinzB2BFIHY98jho\u002BlKGehydY85Zr4zFK9BJQR5n1xzRO5O/hHgJq8nE1xvSOBAKzHkftus/lhudLduQ/N5Y1hoblr\u002B\u002Bx/aklLgFlNhw8/PAPnWkRyExkaV4Ilacea7qbAABtqFQTAWDeiEyOQFDLTno0L1ps4746gUaRaSgCBsJGijXbj1Sb/JwIcwA/lejNfQcs6nxgbhyCMybNgZg4nIGKR7Za778lmDL\u002BZHB\u002BOutdxCvg1RxGJlwZWZxtjnrDz5a\u002BdU4ysk2Hx1IJogmsA/g7r72sF8dlBGFaQZXi98n3\u002BlTZ/8WdKxHeWM2KfIQSbRWkMh69V7fPGXEs2HC3pQ\u002BIUef00kQynkRrjf75msedB9SAPsXrOmKcyqZUsFLhJrP\u002BAeqcXVrRsVOaEYn41b5pT5BcN2ZJnRdFF8fdni4xSqcLO1jcwOp5ro1yUOiY4/ToKyDChS8NtKTTV0VTM9NlqIci7doljE7l4kjY10wu7HQS9bLNbsV3/Yb0CallJrq5zKghdjYawl7R3KKmdJ1YpGsRQD5gmHnB6vBTcUKlQPvOHwqjzbY9\u002BDMT\u002B1Ii0Ujpm6V\u002BU6Z8WXRuX4sFx1DcbJvm2FVStJb004gLDJznntlnadXdJu0VUYXWNa3rODCiN062O/kzlucOSYAecQyXRsCx3p27PwWu0YbPvL7pCdtXaRUOcWMgc9Muzt1tNyB5Pq7teRmTJzhIx2pyI9poJX\u002Bkhsg3SRVdkarKjHBoQZpmVr3QO5CBxEIcxWn4rg/4xqldiLAYQfVZT6euyJqIIIXPy81cV\u002BmvIoKGGoOrZONa0cWGyrkqThTIduwpA==", "StatusCode": 201, "ResponseHeaders": { "Content-Length": "0", - "Content-MD5": "vhY7CINKIfcc3nJLLPkZuA==", - "Date": "Fri, 24 Jun 2022 13:34:27 GMT", - "ETag": "\u00220x8DA55E6433808C7\u0022", - "Last-Modified": "Fri, 24 Jun 2022 13:34:28 GMT", + "Content-MD5": "XokKpTTWO6/EmEFZrPsBOQ==", + "Date": "Thu, 30 Jun 2022 18:44:14 GMT", + "ETag": "\u00220x8DA5AC887C4B5F1\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:44:14 GMT", "Server": [ "Windows-Azure-Blob/1.0", "Microsoft-HTTPAPI/2.0" ], - "x-ms-client-request-id": "e981ead6-7d6e-c844-9151-789f7c8923da", - "x-ms-content-crc64": "QgA9xcNIKV8=", - "x-ms-request-id": "05eea08e-301e-0060-1dcf-87a589000000", + "x-ms-client-request-id": "8c92503e-2ef3-12c7-e61a-133cdbecf4c3", + "x-ms-content-crc64": "0jS/nqKjIQA=", + "x-ms-request-id": "681b12b8-001e-000e-2eb1-8c0ca0000000", "x-ms-request-server-encrypted": "true", "x-ms-version": "2021-08-06", - "x-ms-version-id": "2022-06-24T13:34:28.4931271Z" + "x-ms-version-id": "2022-06-30T18:44:14.4121329Z" }, "ResponseBody": null }, { - "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-196bd558-3554-f494-52c6-fb4324fefb46/test-blob-9880937c-904e-b991-aa17-422c43967763", + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-b699d8db-d553-1bd1-f24c-e7fbe5d8a9fd/test-blob-96e6216c-5fbb-931d-5db0-7bcd86d26d18", "RequestMethod": "HEAD", "RequestHeaders": { "Accept": "application/xml", "Authorization": "Sanitized", - "traceparent": "00-f2e94b233b0dcb80144a909f9f94d9ec-4c3d63ff1a80e01b-00", - "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220624.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", - "x-ms-client-request-id": "5956f78c-8e15-32f5-2321-71a15eef8c6f", - "x-ms-date": "Fri, 24 Jun 2022 13:34:28 GMT", + "traceparent": "00-392dd336eb17e91cd62d69422b36bee7-aa0510b812d1668c-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "358e3f69-e140-5825-9d77-fa1025d3ff54", + "x-ms-date": "Thu, 30 Jun 2022 18:44:14 GMT", "x-ms-return-client-request-id": "true", "x-ms-version": "2021-08-06" }, @@ -88,11 +88,11 @@ "ResponseHeaders": { "Accept-Ranges": "bytes", "Content-Length": "1024", - "Content-MD5": "vhY7CINKIfcc3nJLLPkZuA==", + "Content-MD5": "XokKpTTWO6/EmEFZrPsBOQ==", "Content-Type": "application/octet-stream", - "Date": "Fri, 24 Jun 2022 13:34:27 GMT", - "ETag": "\u00220x8DA55E6433808C7\u0022", - "Last-Modified": "Fri, 24 Jun 2022 13:34:28 GMT", + "Date": "Thu, 30 Jun 2022 18:44:14 GMT", + "ETag": "\u00220x8DA5AC887C4B5F1\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:44:14 GMT", "Server": [ "Windows-Azure-Blob/1.0", "Microsoft-HTTPAPI/2.0" @@ -100,28 +100,28 @@ "x-ms-access-tier": "Hot", "x-ms-access-tier-inferred": "true", "x-ms-blob-type": "BlockBlob", - "x-ms-client-request-id": "5956f78c-8e15-32f5-2321-71a15eef8c6f", - "x-ms-creation-time": "Fri, 24 Jun 2022 13:34:28 GMT", + "x-ms-client-request-id": "358e3f69-e140-5825-9d77-fa1025d3ff54", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:44:14 GMT", "x-ms-is-current-version": "true", "x-ms-lease-state": "available", "x-ms-lease-status": "unlocked", - "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022f6596e00-0e5b-e1dd-b459-0592571fb6de\u0022,\u0022EncryptedKey\u0022:\u0022I5eUuxgADGUpKsZ7PwvS97V33J7Qmp0LlWBH3/hIgpw=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00221.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022ContentEncryptionIV\u0022:\u0022Gaef\\u002BHRWNl1l60Bk\\u002BSPXCpwFKt43xNB3BnfZR0fSkh4=\u0022,\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", - "x-ms-request-id": "05eea0a5-301e-0060-32cf-87a589000000", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u00221b3d17f6-167a-1d7b-f004-60d55b1d6f4d\u0022,\u0022EncryptedKey\u0022:\u0022jcdM2\\u002BozDKjfz/B3t3jy87CXrIeXdgPSKurh5m1iQfU=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "681b12e3-001e-000e-55b1-8c0ca0000000", "x-ms-server-encrypted": "true", "x-ms-version": "2021-08-06", - "x-ms-version-id": "2022-06-24T13:34:28.4931271Z" + "x-ms-version-id": "2022-06-30T18:44:14.4121329Z" }, "ResponseBody": null }, { - "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-196bd558-3554-f494-52c6-fb4324fefb46/test-blob-9880937c-904e-b991-aa17-422c43967763", + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-b699d8db-d553-1bd1-f24c-e7fbe5d8a9fd/test-blob-96e6216c-5fbb-931d-5db0-7bcd86d26d18", "RequestMethod": "HEAD", "RequestHeaders": { "Accept": "application/xml", "Authorization": "Sanitized", - "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220624.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", - "x-ms-client-request-id": "841388aa-c933-2fc5-328e-3c80de724515", - "x-ms-date": "Fri, 24 Jun 2022 13:34:28 GMT", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "9cd21348-be5e-e883-473d-9ffe6cc20e3e", + "x-ms-date": "Thu, 30 Jun 2022 18:44:14 GMT", "x-ms-return-client-request-id": "true", "x-ms-version": "2021-08-06" }, @@ -130,11 +130,11 @@ "ResponseHeaders": { "Accept-Ranges": "bytes", "Content-Length": "1024", - "Content-MD5": "vhY7CINKIfcc3nJLLPkZuA==", + "Content-MD5": "XokKpTTWO6/EmEFZrPsBOQ==", "Content-Type": "application/octet-stream", - "Date": "Fri, 24 Jun 2022 13:34:27 GMT", - "ETag": "\u00220x8DA55E6433808C7\u0022", - "Last-Modified": "Fri, 24 Jun 2022 13:34:28 GMT", + "Date": "Thu, 30 Jun 2022 18:44:14 GMT", + "ETag": "\u00220x8DA5AC887C4B5F1\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:44:14 GMT", "Server": [ "Windows-Azure-Blob/1.0", "Microsoft-HTTPAPI/2.0" @@ -142,31 +142,31 @@ "x-ms-access-tier": "Hot", "x-ms-access-tier-inferred": "true", "x-ms-blob-type": "BlockBlob", - "x-ms-client-request-id": "841388aa-c933-2fc5-328e-3c80de724515", - "x-ms-creation-time": "Fri, 24 Jun 2022 13:34:28 GMT", + "x-ms-client-request-id": "9cd21348-be5e-e883-473d-9ffe6cc20e3e", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:44:14 GMT", "x-ms-is-current-version": "true", "x-ms-lease-state": "available", "x-ms-lease-status": "unlocked", - "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022f6596e00-0e5b-e1dd-b459-0592571fb6de\u0022,\u0022EncryptedKey\u0022:\u0022I5eUuxgADGUpKsZ7PwvS97V33J7Qmp0LlWBH3/hIgpw=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00221.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022ContentEncryptionIV\u0022:\u0022Gaef\\u002BHRWNl1l60Bk\\u002BSPXCpwFKt43xNB3BnfZR0fSkh4=\u0022,\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", - "x-ms-request-id": "05eea0cc-301e-0060-58cf-87a589000000", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u00221b3d17f6-167a-1d7b-f004-60d55b1d6f4d\u0022,\u0022EncryptedKey\u0022:\u0022jcdM2\\u002BozDKjfz/B3t3jy87CXrIeXdgPSKurh5m1iQfU=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "681b1305-001e-000e-73b1-8c0ca0000000", "x-ms-server-encrypted": "true", "x-ms-version": "2021-08-06", - "x-ms-version-id": "2022-06-24T13:34:28.4931271Z" + "x-ms-version-id": "2022-06-30T18:44:14.4121329Z" }, "ResponseBody": null }, { - "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-196bd558-3554-f494-52c6-fb4324fefb46/test-blob-9880937c-904e-b991-aa17-422c43967763?comp=properties", + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-b699d8db-d553-1bd1-f24c-e7fbe5d8a9fd/test-blob-96e6216c-5fbb-931d-5db0-7bcd86d26d18?comp=properties", "RequestMethod": "PUT", "RequestHeaders": { "Accept": "application/xml", "Authorization": "Sanitized", "Content-Length": "0", - "traceparent": "00-c102653cee8f8a539d4d3b48b84d7f3d-757056b1cd8b9f11-00", - "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220624.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "traceparent": "00-75f49ea9b5029a1b0676e67da0d1e387-a101e1d2376c6820-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", "x-ms-blob-content-language": "foo", - "x-ms-client-request-id": "d5f71a58-07dc-2f3c-f068-b86aed27a762", - "x-ms-date": "Fri, 24 Jun 2022 13:34:28 GMT", + "x-ms-client-request-id": "11c77cfb-6300-b4f6-8202-0e8a6ac66bba", + "x-ms-date": "Thu, 30 Jun 2022 18:44:15 GMT", "x-ms-return-client-request-id": "true", "x-ms-version": "2021-08-06" }, @@ -174,31 +174,31 @@ "StatusCode": 200, "ResponseHeaders": { "Content-Length": "0", - "Date": "Fri, 24 Jun 2022 13:34:28 GMT", - "ETag": "\u00220x8DA55E64394C12F\u0022", - "Last-Modified": "Fri, 24 Jun 2022 13:34:29 GMT", + "Date": "Thu, 30 Jun 2022 18:44:14 GMT", + "ETag": "\u00220x8DA5AC888208407\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:44:15 GMT", "Server": [ "Windows-Azure-Blob/1.0", "Microsoft-HTTPAPI/2.0" ], - "x-ms-client-request-id": "d5f71a58-07dc-2f3c-f068-b86aed27a762", - "x-ms-request-id": "05eea1bc-301e-0060-2ccf-87a589000000", + "x-ms-client-request-id": "11c77cfb-6300-b4f6-8202-0e8a6ac66bba", + "x-ms-request-id": "681b149a-001e-000e-5bb1-8c0ca0000000", "x-ms-version": "2021-08-06" }, "ResponseBody": null }, { - "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-196bd558-3554-f494-52c6-fb4324fefb46/test-blob-9880937c-904e-b991-aa17-422c43967763?comp=metadata", + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-b699d8db-d553-1bd1-f24c-e7fbe5d8a9fd/test-blob-96e6216c-5fbb-931d-5db0-7bcd86d26d18?comp=metadata", "RequestMethod": "PUT", "RequestHeaders": { "Accept": "application/xml", "Authorization": "Sanitized", "Content-Length": "0", - "If-Match": "\u00220x8DA55E6433808C7\u0022", - "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220624.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", - "x-ms-client-request-id": "c4282d39-6f7b-e339-f407-5838048c7528", - "x-ms-date": "Fri, 24 Jun 2022 13:34:29 GMT", - "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u00221685595d-3239-98a8-feca-0d75675b26ff\u0022,\u0022EncryptedKey\u0022:\u0022I5eUuxgADGUpKsZ7PwvS97V33J7Qmp0LlWBH3/hIgpw=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00221.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022ContentEncryptionIV\u0022:\u0022Gaef\\u002BHRWNl1l60Bk\\u002BSPXCpwFKt43xNB3BnfZR0fSkh4=\u0022,\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "If-Match": "\u00220x8DA5AC887C4B5F1\u0022", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "ef0373be-fcfa-a73d-0a2e-0e7a6eacf5b4", + "x-ms-date": "Thu, 30 Jun 2022 18:44:15 GMT", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u002208a3e5e8-f42b-f261-8440-0831c740bfe3\u0022,\u0022EncryptedKey\u0022:\u0022jcdM2\\u002BozDKjfz/B3t3jy87CXrIeXdgPSKurh5m1iQfU=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", "x-ms-return-client-request-id": "true", "x-ms-version": "2021-08-06" }, @@ -207,32 +207,32 @@ "ResponseHeaders": { "Content-Length": "252", "Content-Type": "application/xml", - "Date": "Fri, 24 Jun 2022 13:34:28 GMT", + "Date": "Thu, 30 Jun 2022 18:44:15 GMT", "Server": [ "Windows-Azure-Blob/1.0", "Microsoft-HTTPAPI/2.0" ], - "x-ms-client-request-id": "c4282d39-6f7b-e339-f407-5838048c7528", + "x-ms-client-request-id": "ef0373be-fcfa-a73d-0a2e-0e7a6eacf5b4", "x-ms-error-code": "ConditionNotMet", - "x-ms-request-id": "05eea30d-301e-0060-67cf-87a589000000", + "x-ms-request-id": "681b1627-001e-000e-3bb1-8c0ca0000000", "x-ms-version": "2021-08-06" }, "ResponseBody": [ "\uFEFF\u003C?xml version=\u00221.0\u0022 encoding=\u0022utf-8\u0022?\u003E\u003CError\u003E\u003CCode\u003EConditionNotMet\u003C/Code\u003E\u003CMessage\u003EThe condition specified using HTTP conditional header(s) is not met.\n", - "RequestId:05eea30d-301e-0060-67cf-87a589000000\n", - "Time:2022-06-24T13:34:29.6830145Z\u003C/Message\u003E\u003C/Error\u003E" + "RequestId:681b1627-001e-000e-3bb1-8c0ca0000000\n", + "Time:2022-06-30T18:44:15.5344947Z\u003C/Message\u003E\u003C/Error\u003E" ] }, { - "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-196bd558-3554-f494-52c6-fb4324fefb46?restype=container", + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-b699d8db-d553-1bd1-f24c-e7fbe5d8a9fd?restype=container", "RequestMethod": "DELETE", "RequestHeaders": { "Accept": "application/xml", "Authorization": "Sanitized", - "traceparent": "00-f84f3c0ad873334539a57132556cbc05-46e01c875facb536-00", - "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220624.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", - "x-ms-client-request-id": "c03184e2-e2ff-27e7-9727-b8d5277de805", - "x-ms-date": "Fri, 24 Jun 2022 13:34:29 GMT", + "traceparent": "00-e2caec1321a7d35ddca3e063a6690905-8ce35a4552f1eba7-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "f6cb037f-7cc2-53c0-fe36-ce5fdd865e30", + "x-ms-date": "Thu, 30 Jun 2022 18:44:15 GMT", "x-ms-return-client-request-id": "true", "x-ms-version": "2021-08-06" }, @@ -240,20 +240,20 @@ "StatusCode": 202, "ResponseHeaders": { "Content-Length": "0", - "Date": "Fri, 24 Jun 2022 13:34:28 GMT", + "Date": "Thu, 30 Jun 2022 18:44:15 GMT", "Server": [ "Windows-Azure-Blob/1.0", "Microsoft-HTTPAPI/2.0" ], - "x-ms-client-request-id": "c03184e2-e2ff-27e7-9727-b8d5277de805", - "x-ms-request-id": "05eea32d-301e-0060-05cf-87a589000000", + "x-ms-client-request-id": "f6cb037f-7cc2-53c0-fe36-ce5fdd865e30", + "x-ms-request-id": "681b1640-001e-000e-51b1-8c0ca0000000", "x-ms-version": "2021-08-06" }, "ResponseBody": null } ], "Variables": { - "RandomSeed": "942733106", + "RandomSeed": "312155425", "Storage_TestConfigDefault": "ProductionTenant\njaschrepragrs\nU2FuaXRpemVk\nhttps://jaschrepragrs.blob.core.windows.net\nhttps://jaschrepragrs.file.core.windows.net\nhttps://jaschrepragrs.queue.core.windows.net\nhttps://jaschrepragrs.table.core.windows.net\n\n\n\n\nhttps://jaschrepragrs-secondary.blob.core.windows.net\nhttps://jaschrepragrs-secondary.file.core.windows.net\nhttps://jaschrepragrs-secondary.queue.core.windows.net\nhttps://jaschrepragrs-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://jaschrepragrs.blob.core.windows.net/;QueueEndpoint=https://jaschrepragrs.queue.core.windows.net/;FileEndpoint=https://jaschrepragrs.file.core.windows.net/;BlobSecondaryEndpoint=https://jaschrepragrs-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://jaschrepragrs-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://jaschrepragrs-secondary.file.core.windows.net/;AccountName=jaschrepragrs;AccountKey=Sanitized\n[encryption scope]\n\n" } } diff --git a/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(False,V1_0).json b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(False,V1_0).json new file mode 100644 index 0000000000000..27a0d85693c14 --- /dev/null +++ b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(False,V1_0).json @@ -0,0 +1,268 @@ +{ + "Entries": [ + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-7d582c44-af5f-8ff7-2b15-6921cac1356e?restype=container", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "0", + "traceparent": "00-599f0b6439c629412b7c13343d6a2958-df9d9addd37c0427-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-blob-public-access": "container", + "x-ms-client-request-id": "35ee9542-cd5e-3a0c-6852-a906993fda7a", + "x-ms-date": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:06 GMT", + "ETag": "\u00220x8DA5AC8CB27063C\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:07 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "35ee9542-cd5e-3a0c-6852-a906993fda7a", + "x-ms-request-id": "b12d550e-d01e-006a-5db1-8cbc00000000", + "x-ms-version": "2021-08-06" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-7d582c44-af5f-8ff7-2b15-6921cac1356e/test-blob-f8cfecc4-c676-f9fe-3a6c-bf014f3ba428", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "1024", + "Content-Type": "application/octet-stream", + "traceparent": "00-20e4b8e3ea2ec3dbd14c8431577517ad-3cd0a3e53e3c902b-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "fef8e582-5e33-7bb7-97f4-fbf20d0aea2d", + "x-ms-date": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u002204b02431-a1ba-727b-579e-dce8ca46c66a\u0022,\u0022EncryptedKey\u0022:\u0022EOH8ZEq5ruW\\u002BxIvNnkm1lBafHSrk/J9axAaksTzsBiE=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": "mr/rP2TPi2vbLGi6tmeecIQfaQmgBDd0rF4ee59j1UIlhWeWl\u002B0Og4K1WHLyThd88NySMEy7tZWHdpIGsRDLd1cmlTEAB9iXEeaH6qzFgl1GoYrD0aT2as/SDyBaB9Jx6uEay7jmfOgD\u002Bh9mM8vowvQ1wA\u002BFB6WzMCthLfi3PQkTFQDKqrakXySiv9eEjzYE6U0sJEfD7OI8Z5uNhU7wS70VUh3KHRc9kGDq40jNLqD0XESrixjCUCkdjkIbF9rVsXMZbjwZOcs17pTm2Amabjn6mCgKRMClUwL0rY/VIniGFTHUtL9j2yN4dpyE3HgfgyAJIH\u002Byy2yydBs6JIw8YMwbX8PYxbp5l70Fks4jIXeK1CpvywL51EnEIT\u002BkKbaWPBbQaHy1R71mj4jCrTmejlOjr1BizJTJIYt5E6N61G0GblW4U7j71Y1sCTt5NycQJpLsAXlmNG\u002BBBkbxOzMa7Lsbuz7j5TuaqNrD9cNZUOpjaO0QjdPzoDnmN01yCplZUh2AXnvoLUFXUlifoz6rKLVcjdNGCV7nJxsF/K7uKJ5AaaOm2PJuezqruTt7U/36Og6XFnzGEkm\u002BmTZg4zCSaSm6XzmbBU/D7RGYmlAja9MeCsKfVhIhelda5z\u002B7DpcJGU8RwPTDXzS\u002B0yhqLXf5my1jQthu8xIXmOXhQR4QCN95joEAEarfWquN4IPptkzgYUwRV8u/myU9\u002BigO4h4WrstJ8J71\u002BImChOgt4RKOLeKYAd/S/rATuvNbwheC0HeNdzK4oMWt6mjCj9PjkbkTrsxGduA\u002BQ68aNTarmTZx/7RwoGng1o0c6hZ3D2/dMCk5SBNLPFmWTjOCnWqPAlExUI8ecvBPM9c\u002BKYvKxzRAPQQMcVEiJsJa2VE2XTkjjOjFRb/fvr446hU7DRLOzIf/Ql9lg5H/DyrMw5ifGdWdG5yjBIF0YX9G04Y75hmwjAzJNhvavQlWxTaUEvolmdBAnvJ2K8gGiuDgHq8KxCgRHDeM1eK6w12TTD5L4E\u002BEITq2\u002B0gnOWBDw6w6\u002Bp5aSwENg/XDmcTuhdqU496KuqqRXP11VMnf6ePWSBE1f8m\u002BOAA9PVxawYd2x3VuklaBuQgCqJ6h5Pc4LZoS7FGyuAUR1qreTXxNN5p1/4xTcVeMVI4IM9crHFQJBBDCSNU2ww5vXLuso2yMtHEDK\u002BVq5LtChZfCqYQu5blW1Ehsi\u002B/FPzt94xSb37EhfH9lKPFuniBUf8I\u002BcxqKQHYCVs4kHyiCPeuq7ACmp6bloCwFyb3H5zUoGAwth8sg86OemIji/VxX4\u002BoFxLIfrdcbWNLthXe5Om6Y/AccVbUgifhdCA4dA6PQrebTwiODCGs0ES/5M24r5A==", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Content-MD5": "YoJebF8Ymf9X8qkk02TpTQ==", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "ETag": "\u00220x8DA5AC8CB2B8169\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:07 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "fef8e582-5e33-7bb7-97f4-fbf20d0aea2d", + "x-ms-content-crc64": "mZT4gcugWSU=", + "x-ms-request-id": "b12d552d-d01e-006a-7ab1-8cbc00000000", + "x-ms-request-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:07.4931561Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-7d582c44-af5f-8ff7-2b15-6921cac1356e/test-blob-f8cfecc4-c676-f9fe-3a6c-bf014f3ba428", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-809ecc2c9c3b86ea78b707c3f1c2ede1-088533c6d7e45584-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "697e4119-a542-5ff5-8463-9ede041da4b3", + "x-ms-date": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "YoJebF8Ymf9X8qkk02TpTQ==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "ETag": "\u00220x8DA5AC8CB2B8169\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:07 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "697e4119-a542-5ff5-8463-9ede041da4b3", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u002204b02431-a1ba-727b-579e-dce8ca46c66a\u0022,\u0022EncryptedKey\u0022:\u0022EOH8ZEq5ruW\\u002BxIvNnkm1lBafHSrk/J9axAaksTzsBiE=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d554d-d01e-006a-19b1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:07.4931561Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-7d582c44-af5f-8ff7-2b15-6921cac1356e/test-blob-f8cfecc4-c676-f9fe-3a6c-bf014f3ba428", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "cbd9ad9d-818c-09ea-8be8-d9fc07c9bfbf", + "x-ms-date": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "YoJebF8Ymf9X8qkk02TpTQ==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "ETag": "\u00220x8DA5AC8CB2B8169\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:07 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "cbd9ad9d-818c-09ea-8be8-d9fc07c9bfbf", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u002204b02431-a1ba-727b-579e-dce8ca46c66a\u0022,\u0022EncryptedKey\u0022:\u0022EOH8ZEq5ruW\\u002BxIvNnkm1lBafHSrk/J9axAaksTzsBiE=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d5568-d01e-006a-34b1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:07.4931561Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-7d582c44-af5f-8ff7-2b15-6921cac1356e/test-blob-f8cfecc4-c676-f9fe-3a6c-bf014f3ba428?comp=metadata", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "0", + "If-Match": "\u00220x8DA5AC8CB2B8169\u0022", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "574077e3-d844-f727-b2d5-95bb1b21d574", + "x-ms-date": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022ab2f7dd5-3f5d-96f3-25ca-358693c2200d\u0022,\u0022EncryptedKey\u0022:\u0022EOH8ZEq5ruW\\u002BxIvNnkm1lBafHSrk/J9axAaksTzsBiE=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "ETag": "\u00220x8DA5AC8CB3B3689\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:07 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "574077e3-d844-f727-b2d5-95bb1b21d574", + "x-ms-request-id": "b12d558c-d01e-006a-58b1-8cbc00000000", + "x-ms-request-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:07.5970964Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-7d582c44-af5f-8ff7-2b15-6921cac1356e/test-blob-f8cfecc4-c676-f9fe-3a6c-bf014f3ba428", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-9f6207e5231148d7b3032cecb916bee3-7260821e51db2110-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "8f19f9ab-6788-a07b-60a3-abbca1ee0802", + "x-ms-date": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "YoJebF8Ymf9X8qkk02TpTQ==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "ETag": "\u00220x8DA5AC8CB3B3689\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:07 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "8f19f9ab-6788-a07b-60a3-abbca1ee0802", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022ab2f7dd5-3f5d-96f3-25ca-358693c2200d\u0022,\u0022EncryptedKey\u0022:\u0022EOH8ZEq5ruW\\u002BxIvNnkm1lBafHSrk/J9axAaksTzsBiE=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d55ac-d01e-006a-75b1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:07.5970964Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-7d582c44-af5f-8ff7-2b15-6921cac1356e?restype=container", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-ca1c5546932fc23e59fe62ded44c4666-8ad5a36dff7203b0-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "2210e850-4608-0ceb-e5fb-3b6777d7c414", + "x-ms-date": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 202, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "2210e850-4608-0ceb-e5fb-3b6777d7c414", + "x-ms-request-id": "b12d55c8-d01e-006a-10b1-8cbc00000000", + "x-ms-version": "2021-08-06" + }, + "ResponseBody": null + } + ], + "Variables": { + "RandomSeed": "810822458", + "Storage_TestConfigDefault": "ProductionTenant\njaschrepragrs\nU2FuaXRpemVk\nhttps://jaschrepragrs.blob.core.windows.net\nhttps://jaschrepragrs.file.core.windows.net\nhttps://jaschrepragrs.queue.core.windows.net\nhttps://jaschrepragrs.table.core.windows.net\n\n\n\n\nhttps://jaschrepragrs-secondary.blob.core.windows.net\nhttps://jaschrepragrs-secondary.file.core.windows.net\nhttps://jaschrepragrs-secondary.queue.core.windows.net\nhttps://jaschrepragrs-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://jaschrepragrs.blob.core.windows.net/;QueueEndpoint=https://jaschrepragrs.queue.core.windows.net/;FileEndpoint=https://jaschrepragrs.file.core.windows.net/;BlobSecondaryEndpoint=https://jaschrepragrs-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://jaschrepragrs-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://jaschrepragrs-secondary.file.core.windows.net/;AccountName=jaschrepragrs;AccountKey=Sanitized\n[encryption scope]\n\n" + } +} diff --git a/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(False,V1_0)Async.json b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(False,V1_0)Async.json new file mode 100644 index 0000000000000..52cda14860d99 --- /dev/null +++ b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(False,V1_0)Async.json @@ -0,0 +1,268 @@ +{ + "Entries": [ + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-2146dcc9-3264-3907-9c80-565e42f67b7b?restype=container", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "0", + "traceparent": "00-c077397814490a515fce78823ebef078-4d6df2135eb2ed48-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-blob-public-access": "container", + "x-ms-client-request-id": "650d5c8f-26d6-59bc-922b-ed5390daa652", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:08 GMT", + "ETag": "\u00220x8DA5AC8CBC947C3\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "650d5c8f-26d6-59bc-922b-ed5390daa652", + "x-ms-request-id": "b12d59a7-d01e-006a-36b1-8cbc00000000", + "x-ms-version": "2021-08-06" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-2146dcc9-3264-3907-9c80-565e42f67b7b/test-blob-e96286ce-fdf3-b3ba-da26-684599178d7e", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "1024", + "Content-Type": "application/octet-stream", + "traceparent": "00-8e513d48750d66a9f5fc42b920dd61ec-f80ad49f02680c6e-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "25214578-02bc-913c-a15a-8bafbd76bf7a", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022fe2300b2-de81-cbfb-51bd-8096f84147b2\u0022,\u0022EncryptedKey\u0022:\u0022\\u002Bg73HsZS/NeECZ0oveO433Rmm3UsGcYWtrb\\u002BGsS0mPk=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": "1ZzdtU/RHR1QeyoprODBvJlzjlEbHIvapScP6jqzl9SVBUzUz2d6jxBTlAov9e6YaWdZzdmd9rkQAg8nwjLjnONVlKaU7O0y\u002Bf9Bx4iAq7A5d4DTWsn69w\u002BSxM1XUs3dcPcn2WFHA315J9TaXC4wj1Zf7kqxEEEaWpyWASgg2qYyY1eQWdFP8XMDWTP0IJvhYjR2\u002BGSCK1\u002B1DX7EsQJUWUwtqPjXoDaFEPzXrrcOJToBtZ/0quJCsDf32kxTikBxrgDmx3eiCcH98ehnqn2op\u002BhDwvxjYK9q6/jA4MbpMYW8Zv\u002B2J13CX6vd9rn52gW6TjNkD8hEDU5RfNx/4Sn7FL9iq0R\u002B8X\u002BKgWNQhWn1cBDyBpGThSK9d1iwZauBQ32C4uL5ly7AO12z2o5k9IjkWwvLjNqYaI6dpTTrzovTCD7mzaKH/NnhMcs036uTWIPQywqftbai6npTXPH61W3R39JQfiblXV8y6loPZIjjCU2wGwKBM1KHQ\u002BMoM5/n5lxeYv/YQ9lc6m2rbctbkobycFKjSrlqUKt/yDtDvSm/SgT\u002BsQGICsZ0UzCU1caHLLBcNsNNRJyj8xJUWXueGS1E7CPHXeGEaWWML/aI1Xrl95uK5odmcQZnWr7vNLFK1ToDUOiiwM/P2MxewRSlGh2XbmHfFDKm3XodXwIjlTW0QVm8hYWRQjfMug67B7DxwUCgV8VPa8EHXHJuhWDMrEKWqn\u002B66ZSYBSspElok69bJK53Bgj1vZNaYtSkSI7zW/w3MJF0xNtisCFGaJVhn4nGcpFrCCioEJkWpIjRqheJuUxNMWMZ4mPTFFXrs1T59MdK4dn9iE/Xjx/0YhxSjQYJvK9JFG4qqJAtl/fWvGFEGK/Fhsg9iDD8daJDJYBHgIdP3fKpsOBZHDlJz/Rb/M6\u002BsEVsiQo9zDB\u002BTJ7L64cP6hNsiuJynmvPbGaS87w4oHjThHE61vd9Eg2\u002BK2BBjTSyOeXg73XsTBXdoRyjqtx0Qagh9GMR0RMb83TUsHMHid8x3LnWW7UG5zhbXTXa3WcxSeW4I5jVoGTSxP/9G5um1hdBcc4inen3Gw0qunPdQRIRo2qJT2pGWDxRA5K5Cc\u002BctIsemWuZDqv/wQSLquXw9Yfp73QxGYqs\u002BxWN0ZpbPhFBjgHovqumdJTCjYplurFWXA4O0x5bb5r8cZ5WCzkNpIbzRhjkBDbYQ3bfco/8SzxgO3GMSG7y6iJm7E0NUGlbsOUHcnSUclfXMo\u002Bre/0O/Cpd8dPHfVgb/F/6fRvpzu8Jg72m\u002BNTLy8UdtRnfS24lW\u002Bwir16ZkDeM73IUnfU77Wecnfg/ZAdRkioKqchCOLDt1SEvxx\u002BQb\u002B\u002BGGg1msy3T4cQ==", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Content-MD5": "NM/19BekU40cMYVCTTjx6w==", + "Date": "Thu, 30 Jun 2022 18:46:08 GMT", + "ETag": "\u00220x8DA5AC8CBCEAE44\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "25214578-02bc-913c-a15a-8bafbd76bf7a", + "x-ms-content-crc64": "4/u1qMMokDg=", + "x-ms-request-id": "b12d59d0-d01e-006a-5db1-8cbc00000000", + "x-ms-request-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:08.5625412Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-2146dcc9-3264-3907-9c80-565e42f67b7b/test-blob-e96286ce-fdf3-b3ba-da26-684599178d7e", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-168fcefaf3a82b7419d4e12356443e48-f9163c09999b1eab-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "53cd8b97-68f6-91c2-e83d-448d8af59f1f", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "NM/19BekU40cMYVCTTjx6w==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:08 GMT", + "ETag": "\u00220x8DA5AC8CBCEAE44\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "53cd8b97-68f6-91c2-e83d-448d8af59f1f", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022fe2300b2-de81-cbfb-51bd-8096f84147b2\u0022,\u0022EncryptedKey\u0022:\u0022\\u002Bg73HsZS/NeECZ0oveO433Rmm3UsGcYWtrb\\u002BGsS0mPk=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d59ff-d01e-006a-08b1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:08.5625412Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-2146dcc9-3264-3907-9c80-565e42f67b7b/test-blob-e96286ce-fdf3-b3ba-da26-684599178d7e", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "31185fcf-6ca9-3584-ad2e-82cc7bdd2eec", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "NM/19BekU40cMYVCTTjx6w==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:08 GMT", + "ETag": "\u00220x8DA5AC8CBCEAE44\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "31185fcf-6ca9-3584-ad2e-82cc7bdd2eec", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022fe2300b2-de81-cbfb-51bd-8096f84147b2\u0022,\u0022EncryptedKey\u0022:\u0022\\u002Bg73HsZS/NeECZ0oveO433Rmm3UsGcYWtrb\\u002BGsS0mPk=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d5a23-d01e-006a-2bb1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:08.5625412Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-2146dcc9-3264-3907-9c80-565e42f67b7b/test-blob-e96286ce-fdf3-b3ba-da26-684599178d7e?comp=metadata", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "0", + "If-Match": "\u00220x8DA5AC8CBCEAE44\u0022", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "2abd3dd1-6edd-d175-d94c-0bc1a2053cfd", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022d2a8a0e6-a555-bdcd-98ca-72e203b0a0d5\u0022,\u0022EncryptedKey\u0022:\u0022\\u002Bg73HsZS/NeECZ0oveO433Rmm3UsGcYWtrb\\u002BGsS0mPk=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:08 GMT", + "ETag": "\u00220x8DA5AC8CBDDA030\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "2abd3dd1-6edd-d175-d94c-0bc1a2053cfd", + "x-ms-request-id": "b12d5a4d-d01e-006a-54b1-8cbc00000000", + "x-ms-request-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:08.6614848Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-2146dcc9-3264-3907-9c80-565e42f67b7b/test-blob-e96286ce-fdf3-b3ba-da26-684599178d7e", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-774364e3e703dd7046da933b74a73e3d-043b4bf403bd38aa-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "3efbe04b-041f-f70f-bee6-efcbc77ad0b2", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "NM/19BekU40cMYVCTTjx6w==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:08 GMT", + "ETag": "\u00220x8DA5AC8CBDDA030\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "3efbe04b-041f-f70f-bee6-efcbc77ad0b2", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022d2a8a0e6-a555-bdcd-98ca-72e203b0a0d5\u0022,\u0022EncryptedKey\u0022:\u0022\\u002Bg73HsZS/NeECZ0oveO433Rmm3UsGcYWtrb\\u002BGsS0mPk=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d5a82-d01e-006a-07b1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:08.6614848Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-2146dcc9-3264-3907-9c80-565e42f67b7b?restype=container", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-2df483dc5d8cc9b2efc24857edb59710-d2f6a05b64e28aa9-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "c175693c-fe0a-34dd-475a-bba8b42234a8", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 202, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "c175693c-fe0a-34dd-475a-bba8b42234a8", + "x-ms-request-id": "b12d5aa7-d01e-006a-2bb1-8cbc00000000", + "x-ms-version": "2021-08-06" + }, + "ResponseBody": null + } + ], + "Variables": { + "RandomSeed": "1795964541", + "Storage_TestConfigDefault": "ProductionTenant\njaschrepragrs\nU2FuaXRpemVk\nhttps://jaschrepragrs.blob.core.windows.net\nhttps://jaschrepragrs.file.core.windows.net\nhttps://jaschrepragrs.queue.core.windows.net\nhttps://jaschrepragrs.table.core.windows.net\n\n\n\n\nhttps://jaschrepragrs-secondary.blob.core.windows.net\nhttps://jaschrepragrs-secondary.file.core.windows.net\nhttps://jaschrepragrs-secondary.queue.core.windows.net\nhttps://jaschrepragrs-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://jaschrepragrs.blob.core.windows.net/;QueueEndpoint=https://jaschrepragrs.queue.core.windows.net/;FileEndpoint=https://jaschrepragrs.file.core.windows.net/;BlobSecondaryEndpoint=https://jaschrepragrs-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://jaschrepragrs-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://jaschrepragrs-secondary.file.core.windows.net/;AccountName=jaschrepragrs;AccountKey=Sanitized\n[encryption scope]\n\n" + } +} diff --git a/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(False,V2_0).json b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(False,V2_0).json new file mode 100644 index 0000000000000..542fafd3335dd --- /dev/null +++ b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(False,V2_0).json @@ -0,0 +1,268 @@ +{ + "Entries": [ + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-bef619d9-d062-926a-6d3a-70c6b0124aa8?restype=container", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "0", + "traceparent": "00-967bd66802ac831c0d9cccc5c712aeab-385996673072b486-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-blob-public-access": "container", + "x-ms-client-request-id": "271e649a-9b0f-8a0b-0d55-e33c08a4bd6b", + "x-ms-date": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "ETag": "\u00220x8DA5AC8CB4DE931\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:07 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "271e649a-9b0f-8a0b-0d55-e33c08a4bd6b", + "x-ms-request-id": "b12d55fc-d01e-006a-42b1-8cbc00000000", + "x-ms-version": "2021-08-06" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-bef619d9-d062-926a-6d3a-70c6b0124aa8/test-blob-1e7d946b-7b79-609b-ce92-3ef56e2c37d9", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "1024", + "Content-Type": "application/octet-stream", + "traceparent": "00-4fcb84062867caee7ab908d56ab37c12-f16c79d5534e14d8-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "c6d2f7af-8216-1eec-c8be-597d5d151ce0", + "x-ms-date": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022ed5d89a6-5776-9a60-04b4-3e5d683385e9\u0022,\u0022EncryptedKey\u0022:\u0022IhQkHwxm7m4R35wHv/mmkaSIF6\\u002BJhpSRgkrCgg94eQA=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": "0z5pYGyLf40NoiYugmmlk5\u002Bc5WvkqDtF\u002B6kHyW0GrZTFybgdPkKEaFbG0nH/a1PPJnCO53qtCSsDJGXDg7UfB/SRabmwh1RdGH0VHtXJRo9VOKL8d8UZF7\u002BNGRrcwOSgpst9bQKaHp4bMc/9l\u002BtVOd7VbksTI48ud1H5I206gVeYdXcKTNiNuhkD4Ub2HH/TOOA8B1KZjYM8TvWwofsw4a94ZSJ0S\u002B0FR7MyD0JIOFvSJeqN/noE/ujzzf3i3Rkd0gCWfbZcX\u002B3zNr\u002BfZ31B9Baa3XsQo\u002BI1c2Y6gX3vImqaFDxCsbuldcb9msi6ZZdqsdnnSP\u002BdDS8dYQlPIt1vAxNVBFNA/0Jb9Wi1Ewgaew7Oz8\u002BjCNpq/QYNJFCxVVLojpe0ZWBEKbGWjFKX5/omA\u002BX7gVINy/s46wdMM9vyqaAVzIVxZRatiqYeDXuH0hUM5yBqttT/28Kce3pZ\u002BPbWpOKyght1tJ7PTfas775/sRjyP0u6h/PMFfHC1embVJGvSGiZ1FD5lzKCmmjdU\u002BsDHcphZ7mqGxzv5mwpst60M/ll/adW5dzI\u002BKcZOO2K7sIFv7gfOuzYBS1Lqe7j0OVTzmdud1VErTfumG8RkeMvZPeqI/MmlfkMjPh5Cjzu5SfCxWqFG3dswRGBMKJ9xnNKHET2OKzyLThuYepdyqP6ALNHT8t4qUmAPWLhpWRXj8aEL\u002B3396x70JgxF7mMDvZuhjDuNneo0XL7dftKEIjUF9Ik2Zq1AwgGy34zR5GP9C5rcx40aFhO2157\u002B4GxMb8PXADnZzVbuIIn6Gr4dYngbIHM3pxpoK551v07OgeGVZq\u002BI\u002BqQqIz5D7ubDIDuVWbVmo//5FMjprxSbZE3IH56oJLQOVGeUMP1087hzZMui4CXZaB4h3BHm30uPjv6we89IGvtHhsVN0rLChGEQdgoI\u002BEQoLrdAhkiiJ7UbxGI\u002BhHepKwoQW1kgi5VrH1ewlqkBRtZ6SE1Xx5Ry5V9QMc4Qw8AppwrAOJzrB6Lh1acw8ZEL2r1LhHwqEWO1nXY50FmHGltXhu9eQU55j0DqdfItQjPORFdQhT\u002BEP1XnClsm8TcJGrsLmSqh7VlvEjT7P9uxiFtCK4vCdlUb04eZdzbzEp4JoRs24ajJbJb94bLKiP\u002B6dYI/pIWrBqQl78VjCHYifD\u002BWsZ6AeqayeP71BJTiEQrH3wG0s63Ynlq20PHjpiQgm2WzdBdhOfrbjSvGtgIPQ566myl0rchR/hMDyam0ztKa1Gkvbt0zZqUG2SZCEehYZ41TaQs6rC2dIbXEXTBRJr5ZK\u002BHZH9TBRzREbZSiD6xq66IcYWXHoCg7Uk0nbwm09fJoKOXGvwf4UeHWtn6Yw==", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Content-MD5": "prKf\u002B6FHjgmaN6RR0dN5uw==", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "ETag": "\u00220x8DA5AC8CB59DD97\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:07 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "c6d2f7af-8216-1eec-c8be-597d5d151ce0", + "x-ms-content-crc64": "SqjjuPQCjz4=", + "x-ms-request-id": "b12d5650-d01e-006a-0eb1-8cbc00000000", + "x-ms-request-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:07.7969815Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-bef619d9-d062-926a-6d3a-70c6b0124aa8/test-blob-1e7d946b-7b79-609b-ce92-3ef56e2c37d9", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-d9c1123d2b6a30ced4ec97aa6f23d36e-b640da0d2bfdf9fa-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "76466336-705a-17c2-1d0d-8335c91b07b0", + "x-ms-date": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "prKf\u002B6FHjgmaN6RR0dN5uw==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "ETag": "\u00220x8DA5AC8CB59DD97\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:07 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "76466336-705a-17c2-1d0d-8335c91b07b0", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022ed5d89a6-5776-9a60-04b4-3e5d683385e9\u0022,\u0022EncryptedKey\u0022:\u0022IhQkHwxm7m4R35wHv/mmkaSIF6\\u002BJhpSRgkrCgg94eQA=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d567e-d01e-006a-39b1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:07.7969815Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-bef619d9-d062-926a-6d3a-70c6b0124aa8/test-blob-1e7d946b-7b79-609b-ce92-3ef56e2c37d9", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "f94698f3-a5cf-ad86-478b-e16aed417fe0", + "x-ms-date": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "prKf\u002B6FHjgmaN6RR0dN5uw==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "ETag": "\u00220x8DA5AC8CB59DD97\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:07 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "f94698f3-a5cf-ad86-478b-e16aed417fe0", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022ed5d89a6-5776-9a60-04b4-3e5d683385e9\u0022,\u0022EncryptedKey\u0022:\u0022IhQkHwxm7m4R35wHv/mmkaSIF6\\u002BJhpSRgkrCgg94eQA=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d56a9-d01e-006a-62b1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:07.7969815Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-bef619d9-d062-926a-6d3a-70c6b0124aa8/test-blob-1e7d946b-7b79-609b-ce92-3ef56e2c37d9?comp=metadata", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "0", + "If-Match": "\u00220x8DA5AC8CB59DD97\u0022", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "3041486d-0ed5-c0e1-9542-44df7bf7513e", + "x-ms-date": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u00225ecc7f2b-14e6-8a0a-af5a-4069824bcac1\u0022,\u0022EncryptedKey\u0022:\u0022IhQkHwxm7m4R35wHv/mmkaSIF6\\u002BJhpSRgkrCgg94eQA=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "ETag": "\u00220x8DA5AC8CB6A2EDF\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:07 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "3041486d-0ed5-c0e1-9542-44df7bf7513e", + "x-ms-request-id": "b12d56cb-d01e-006a-80b1-8cbc00000000", + "x-ms-request-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:07.9049199Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-bef619d9-d062-926a-6d3a-70c6b0124aa8/test-blob-1e7d946b-7b79-609b-ce92-3ef56e2c37d9", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-aecc95e0c85b7d3584f0280d8a545009-dddfa2bc5e2a565b-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "a4fcb99f-4f00-020b-c5d0-cc5af9745f09", + "x-ms-date": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "prKf\u002B6FHjgmaN6RR0dN5uw==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "ETag": "\u00220x8DA5AC8CB6A2EDF\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:07 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "a4fcb99f-4f00-020b-c5d0-cc5af9745f09", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u00225ecc7f2b-14e6-8a0a-af5a-4069824bcac1\u0022,\u0022EncryptedKey\u0022:\u0022IhQkHwxm7m4R35wHv/mmkaSIF6\\u002BJhpSRgkrCgg94eQA=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d56eb-d01e-006a-20b1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:07.9049199Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-bef619d9-d062-926a-6d3a-70c6b0124aa8?restype=container", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-1601fe68deea5441039a01f4838df24c-1aa2f7967388f7f1-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "c140c13a-acfa-b93d-dfea-be947244bbcf", + "x-ms-date": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 202, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "c140c13a-acfa-b93d-dfea-be947244bbcf", + "x-ms-request-id": "b12d5705-d01e-006a-39b1-8cbc00000000", + "x-ms-version": "2021-08-06" + }, + "ResponseBody": null + } + ], + "Variables": { + "RandomSeed": "680929951", + "Storage_TestConfigDefault": "ProductionTenant\njaschrepragrs\nU2FuaXRpemVk\nhttps://jaschrepragrs.blob.core.windows.net\nhttps://jaschrepragrs.file.core.windows.net\nhttps://jaschrepragrs.queue.core.windows.net\nhttps://jaschrepragrs.table.core.windows.net\n\n\n\n\nhttps://jaschrepragrs-secondary.blob.core.windows.net\nhttps://jaschrepragrs-secondary.file.core.windows.net\nhttps://jaschrepragrs-secondary.queue.core.windows.net\nhttps://jaschrepragrs-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://jaschrepragrs.blob.core.windows.net/;QueueEndpoint=https://jaschrepragrs.queue.core.windows.net/;FileEndpoint=https://jaschrepragrs.file.core.windows.net/;BlobSecondaryEndpoint=https://jaschrepragrs-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://jaschrepragrs-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://jaschrepragrs-secondary.file.core.windows.net/;AccountName=jaschrepragrs;AccountKey=Sanitized\n[encryption scope]\n\n" + } +} diff --git a/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(False,V2_0)Async.json b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(False,V2_0)Async.json new file mode 100644 index 0000000000000..3d97927555a5a --- /dev/null +++ b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(False,V2_0)Async.json @@ -0,0 +1,268 @@ +{ + "Entries": [ + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-f4a1ac1b-e11a-c2f2-7974-5c1dd096da23?restype=container", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "0", + "traceparent": "00-dadf8c1ed4a195afa1e3eac8182a8653-010e4dc817accc12-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-blob-public-access": "container", + "x-ms-client-request-id": "7021a5f5-45d0-fad8-1bb5-929d3fd1c4da", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:08 GMT", + "ETag": "\u00220x8DA5AC8CBEFDCA7\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "7021a5f5-45d0-fad8-1bb5-929d3fd1c4da", + "x-ms-request-id": "b12d5ad5-d01e-006a-57b1-8cbc00000000", + "x-ms-version": "2021-08-06" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-f4a1ac1b-e11a-c2f2-7974-5c1dd096da23/test-blob-bad52e67-98f2-4c7e-1f7c-9c3f7713110a", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "1024", + "Content-Type": "application/octet-stream", + "traceparent": "00-0a851f252743ed4d826d652b1ef73b15-865528df7d54aeae-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "82768e16-bf99-5c5c-26d5-5053a9988207", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022aff66860-fbe1-ec52-9966-ae951f59e928\u0022,\u0022EncryptedKey\u0022:\u0022P7mQJN/8dItRpEDD4o7FDSTyh/PuZBFrjr2u4wSgmeU=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": "0F/mlBUyrQsUzjep1Sv2izZz0Op6wmh\u002BxlHxN0ajrshVgpKV9eePxzlhCbxyXEJcePxpBxZjCQ33aM7DQXXFcR9vVFOZYZZO5AmwGbmrDGkPlb9KOqey8XmEnYwYzIbDm5ecAgjvwhZlGiMNsu9US1xktKu2ezZ4vWPaFMMJNReD7X0hDwlhINKo5B\u002BEpD6JMFIwtBjaDCBhJEWkFK5SXOQLisVxMjxSA5PYDpYX8xgkUORx2IH/qOBdwOrDvAskVYc7eBp5GP4V3rCEAv6JSjEsgMTJ4YRiC\u002BLkE3FSjkaIs7gP23r\u002BqzjmW/rReqXi1Ha5lzxGWnQD2G04lASMw09q\u002B05Gem62LtSM44WKkZE8Aj/6mfcJQVlDCwMNxhc0WZeqZ35Xm1oIAmhnunfueEfb\u002B5HEkipXYLn1Am5rqGe9V4nt3yoS5Wfl8ZaOoYfhVZO7McqFb8dtUgbFYZnrnVoAqmLtAJgdyRYq36CUyL4yFK3br3acN\u002BjCgIwjTIPN\u002BVQ7jvcl81T6nme0W5Am2YpIkk3sEO7kY3J6KoAM\u002BXySXOVMWDrGDSBY4RAO6NtXnKcC2ro24ehmVyqEqsjU7qXqIv\u002Br2oBPgoUtky/d1XuXIo7YCR/CXHv85QEQQmJXhPJrI8XcrMEns1g1CE25iIKu7Yg6/OSFKMaDrvR\u002BPj8i1g88crG1unbMsVXGjVMtQ11/YlTaHIgO5fv/Wf3NqHQYEjI\u002BfBbQ\u002BDMRbUqPv5pyVWuX/9zqSLmHLoy2tWF4/wjhrXsg78ZGrmkhyK89fiZgjQOSNqiXLcp5t02JGkPRmW5CrREfUWakUFFzyH8KSa9mVShd5chfSX\u002Bwpzh4vZQmUC5A\u002BtEVQTuc7eZXJGRLb22eI8Qac7Ol4mSRb6ouLJO8TXhQyU/eUBTswfjiCCQbZTjL2pnPC9x7mxhsg9KRbsFTm9fr\u002BqYev9OwLrK7w9o/dglxYlH57EGc1S42csxCW1I2j21NL2uSrRvGH90pv9c9LA3IHwtwWa6VTiV3500GbdNghDNt8Uee37U2M8xkcxZW\u002BUW/eTtHxjW\u002BuOBGGsbNwLIKyTqj0DrGKj9VOSXhMdsPIe0HRvOXGb79rjlnWMXvaHMaWarbsigK\u002BE/78YwQ3YcEN/jYxXm\u002Bcq98pSEBX9J6ZdGyxtcwM2/F/U2jnCcx7dGyYiHNF6L6W\u002Bf6XwwHCZl9gYu7Xhav0wOJE8grG9aISrhQTv2wrU4uuGrvNtRjvfO0JhucdY\u002B6Ao4dQwTazkAQchRUt7uczNQ9jaWrv50vJlXUd/S769UolUtuk2lJVOkq38O/DgY4F1lHX\u002BjpDkLw7h2vBVZLVYc/KyFvLTlq8zi8geDZbxdOnA==", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Content-MD5": "cRi3purxsktdRqOa/kp9lg==", + "Date": "Thu, 30 Jun 2022 18:46:08 GMT", + "ETag": "\u00220x8DA5AC8CBF5917F\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "82768e16-bf99-5c5c-26d5-5053a9988207", + "x-ms-content-crc64": "EZjas0nqg5o=", + "x-ms-request-id": "b12d5afc-d01e-006a-7db1-8cbc00000000", + "x-ms-request-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:08.8173951Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-f4a1ac1b-e11a-c2f2-7974-5c1dd096da23/test-blob-bad52e67-98f2-4c7e-1f7c-9c3f7713110a", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-b11516071c2809ec2475be79b134a944-c1417b354f432549-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "e8291697-8e9d-3a71-b1cb-059f18fe57d0", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "cRi3purxsktdRqOa/kp9lg==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:08 GMT", + "ETag": "\u00220x8DA5AC8CBF5917F\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "e8291697-8e9d-3a71-b1cb-059f18fe57d0", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022aff66860-fbe1-ec52-9966-ae951f59e928\u0022,\u0022EncryptedKey\u0022:\u0022P7mQJN/8dItRpEDD4o7FDSTyh/PuZBFrjr2u4wSgmeU=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d5b50-d01e-006a-4db1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:08.8173951Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-f4a1ac1b-e11a-c2f2-7974-5c1dd096da23/test-blob-bad52e67-98f2-4c7e-1f7c-9c3f7713110a", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "93bc21c5-9a6f-1569-1768-7fde92c5e5dd", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "cRi3purxsktdRqOa/kp9lg==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:08 GMT", + "ETag": "\u00220x8DA5AC8CBF5917F\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "93bc21c5-9a6f-1569-1768-7fde92c5e5dd", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022aff66860-fbe1-ec52-9966-ae951f59e928\u0022,\u0022EncryptedKey\u0022:\u0022P7mQJN/8dItRpEDD4o7FDSTyh/PuZBFrjr2u4wSgmeU=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d5b73-d01e-006a-70b1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:08.8173951Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-f4a1ac1b-e11a-c2f2-7974-5c1dd096da23/test-blob-bad52e67-98f2-4c7e-1f7c-9c3f7713110a?comp=metadata", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "0", + "If-Match": "\u00220x8DA5AC8CBF5917F\u0022", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "f7da7655-c342-5661-402d-9ce534feeb63", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u00220ae905c5-9079-f7d3-9480-3348db14db9e\u0022,\u0022EncryptedKey\u0022:\u0022P7mQJN/8dItRpEDD4o7FDSTyh/PuZBFrjr2u4wSgmeU=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:08 GMT", + "ETag": "\u00220x8DA5AC8CC0B6039\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "f7da7655-c342-5661-402d-9ce534feeb63", + "x-ms-request-id": "b12d5b97-d01e-006a-14b1-8cbc00000000", + "x-ms-request-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:08.9613129Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-f4a1ac1b-e11a-c2f2-7974-5c1dd096da23/test-blob-bad52e67-98f2-4c7e-1f7c-9c3f7713110a", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-3e1671f440c4bdec946e123f49b5a1cc-8003112511912b5d-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "1c89aa9b-eeeb-ba9b-2039-fc28bffdae3b", + "x-ms-date": "Thu, 30 Jun 2022 18:46:09 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "cRi3purxsktdRqOa/kp9lg==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:08 GMT", + "ETag": "\u00220x8DA5AC8CC0B6039\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "1c89aa9b-eeeb-ba9b-2039-fc28bffdae3b", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u00220ae905c5-9079-f7d3-9480-3348db14db9e\u0022,\u0022EncryptedKey\u0022:\u0022P7mQJN/8dItRpEDD4o7FDSTyh/PuZBFrjr2u4wSgmeU=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d5bd0-d01e-006a-4cb1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:08.9613129Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-f4a1ac1b-e11a-c2f2-7974-5c1dd096da23?restype=container", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-5a886f685adc8b36c3a9f2f83b56af7f-9b6cde1dbffeabc8-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "89493200-cf74-a378-2d8b-cd143c11aa41", + "x-ms-date": "Thu, 30 Jun 2022 18:46:09 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 202, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "89493200-cf74-a378-2d8b-cd143c11aa41", + "x-ms-request-id": "b12d5bfe-d01e-006a-76b1-8cbc00000000", + "x-ms-version": "2021-08-06" + }, + "ResponseBody": null + } + ], + "Variables": { + "RandomSeed": "370221084", + "Storage_TestConfigDefault": "ProductionTenant\njaschrepragrs\nU2FuaXRpemVk\nhttps://jaschrepragrs.blob.core.windows.net\nhttps://jaschrepragrs.file.core.windows.net\nhttps://jaschrepragrs.queue.core.windows.net\nhttps://jaschrepragrs.table.core.windows.net\n\n\n\n\nhttps://jaschrepragrs-secondary.blob.core.windows.net\nhttps://jaschrepragrs-secondary.file.core.windows.net\nhttps://jaschrepragrs-secondary.queue.core.windows.net\nhttps://jaschrepragrs-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://jaschrepragrs.blob.core.windows.net/;QueueEndpoint=https://jaschrepragrs.queue.core.windows.net/;FileEndpoint=https://jaschrepragrs.file.core.windows.net/;BlobSecondaryEndpoint=https://jaschrepragrs-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://jaschrepragrs-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://jaschrepragrs-secondary.file.core.windows.net/;AccountName=jaschrepragrs;AccountKey=Sanitized\n[encryption scope]\n\n" + } +} diff --git a/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(True,V1_0).json b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(True,V1_0).json new file mode 100644 index 0000000000000..e37efd5dd369a --- /dev/null +++ b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(True,V1_0).json @@ -0,0 +1,268 @@ +{ + "Entries": [ + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-a9130b7c-39d8-6dff-4071-bcb3b6faf8c8?restype=container", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "0", + "traceparent": "00-87745aa6473266497777aef56cbfdb4b-54188455ec6016af-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-blob-public-access": "container", + "x-ms-client-request-id": "bc7a45b8-7fcf-04a4-52ab-bda57e1aafbf", + "x-ms-date": "Thu, 30 Jun 2022 18:46:06 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:05 GMT", + "ETag": "\u00220x8DA5AC8CA76960A\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:06 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "bc7a45b8-7fcf-04a4-52ab-bda57e1aafbf", + "x-ms-request-id": "b12d500a-d01e-006a-12b1-8cbc00000000", + "x-ms-version": "2021-08-06" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-a9130b7c-39d8-6dff-4071-bcb3b6faf8c8/test-blob-3e40e3ce-19b8-8dc5-802c-deabdd47460e", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "1024", + "Content-Type": "application/octet-stream", + "traceparent": "00-f712be598f73b1e50a8b91f212f0d7e2-ee9febc73b98fd5f-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "42e99c7d-58f2-9e95-80ec-3ba2a1f8260b", + "x-ms-date": "Thu, 30 Jun 2022 18:46:06 GMT", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u00223907c333-9322-10ac-d275-5df5c2082a30\u0022,\u0022EncryptedKey\u0022:\u002232Zt6X8tHFaivrkJOBzWg8Kt5wHpxTGaRThTTu3wdv8=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": "7wPe\u002B5S90UssY5PcswepNQDYBAMctzTajGosgcXubQPjdINZxXKbVuf4HnbXtyofQcceF2GldzfPBG4pkU\u002BGPfaP\u002BT\u002BET2\u002BNPK4bI5i9AtRADED9z1WiPv1MisEEccSYceGASL7rm/FYkNuziVOeEQKZ6YQPiG2g7bpCN8Wuicvpg7G3PboVVHFOpT967rSprXm/aodAielz31sEqWMsqQcPygai59RHg5USwOMuJv4FmIpL7x9DqPnIRF5eEasOIvw3aiSuB8Wld\u002BbyLcgFRLhc/hDZ4LrnzCEM2aN16XLpBJ7n9rzaV5HEpng4UXsxwv\u002BlAhOaNEFBUJ0Coi0iL450CCkqHk37gqd\u002BFDlCr3um2hakz\u002BZfT89cpaYe17RjonfpxElRB6SxqX9rHCAI/6AiXMcXfl\u002BnFblZzXmm3aryGnLCWOoxVNNy8iZn8zKvVKUF\u002B3vtTCMXQq\u002BP\u002BDkrCszVeQGtRae28AfzpYw5QCGGqnnToOEuBM1OqhU6olyaRudZkXowAg7\u002BTwp0\u002BqeX3gKNCU7AV2rqpnQzXpuRe06rWV6k366nVadq1FHWugomt8wTrJgN2e99buoF/KNzbNO8yKBJ8/5T5rOmVoMYFOxqDafOfs62nX9uJ3HDoVgE9md\u002BGvFp3MTNv8blZ4NsZFr\u002Bm\u002B/8pO4EBSsg2suNj0Vaol8bmvn7ADHjAb4I0Db8AsIWxQVpCFJ5eRTGSAH4QC\u002BAisQjUMpgApu9GKMv\u002BzT0JNcIdso/8ZkNoSDkNbcv6sCPh0Zx2bH4tsNqq\u002B\u002BvSX3f0SQp8MplQZgrFq\u002BpfM3jji3ioHPugkolD8AG1UWqXlijBGSTBfr2KUatRsICTzn2hx3BzKgK8U7ZA\u002BAJXmxTgLhWBndpUIgy63YtQDyIIsCGEE4o6JGvmBMVuQEa7MraWsUKrEjCjTeUj\u002BAx3LESUeAfg04eKpgmp21kU5aGGP6sUuV2fXZ4w4MXk1mwfbthA2gg\u002B2l8vDAt4wXbXjmgDXbhhYrLm9Nqpr/KB5Y\u002BdimxAlAuZRyVL5a1SJpxnWVKdoXiz/cxlWeUtlWqsrWZ7m3bKVzpcqdaTFbzFlM5\u002BAlagJAQXKYyf2zomq/H6n3hG1kslnMJYATeh4KhPX4UWr1LUDEkiJLGqanvANj4k2HZEvv5DWKVUB\u002BMMtQkkELt1D/xe5pLvJLHZu3KGmAs5fQgyCqDGk1btv8SmFa9oRhnASuYBhfHjVZoMqZ1yja\u002BYEzgBMgXarrylcWbOCQ8CcTUYxg0k97cWDrUG\u002Bim5uvIUzcJ3Z1PT5dxpXFSLFUxLCjioGceisxuA6uOQk7RS6/Z0uXsMismhBOBwu1tiSzlou6/xEWEqslrm9nywQ==", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Content-MD5": "M3vBCxvRDKls3P/RY6fFQw==", + "Date": "Thu, 30 Jun 2022 18:46:05 GMT", + "ETag": "\u00220x8DA5AC8CA86590A\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:06 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "42e99c7d-58f2-9e95-80ec-3ba2a1f8260b", + "x-ms-content-crc64": "fxL\u002BhN1eJvY=", + "x-ms-request-id": "b12d5079-d01e-006a-7bb1-8cbc00000000", + "x-ms-request-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:06.4117782Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-a9130b7c-39d8-6dff-4071-bcb3b6faf8c8/test-blob-3e40e3ce-19b8-8dc5-802c-deabdd47460e", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-74243235140a986580aa982da32a9486-6507276195944718-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "402d2dc4-045d-801c-d95d-ef9301555036", + "x-ms-date": "Thu, 30 Jun 2022 18:46:06 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "M3vBCxvRDKls3P/RY6fFQw==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:05 GMT", + "ETag": "\u00220x8DA5AC8CA86590A\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:06 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "402d2dc4-045d-801c-d95d-ef9301555036", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:06 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u00223907c333-9322-10ac-d275-5df5c2082a30\u0022,\u0022EncryptedKey\u0022:\u002232Zt6X8tHFaivrkJOBzWg8Kt5wHpxTGaRThTTu3wdv8=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d50b5-d01e-006a-37b1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:06.4117782Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-a9130b7c-39d8-6dff-4071-bcb3b6faf8c8/test-blob-3e40e3ce-19b8-8dc5-802c-deabdd47460e", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "73dea08f-e6cb-5fad-924a-36c24fab9195", + "x-ms-date": "Thu, 30 Jun 2022 18:46:06 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "M3vBCxvRDKls3P/RY6fFQw==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:06 GMT", + "ETag": "\u00220x8DA5AC8CA86590A\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:06 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "73dea08f-e6cb-5fad-924a-36c24fab9195", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:06 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u00223907c333-9322-10ac-d275-5df5c2082a30\u0022,\u0022EncryptedKey\u0022:\u002232Zt6X8tHFaivrkJOBzWg8Kt5wHpxTGaRThTTu3wdv8=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d50f8-d01e-006a-77b1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:06.4117782Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-a9130b7c-39d8-6dff-4071-bcb3b6faf8c8/test-blob-3e40e3ce-19b8-8dc5-802c-deabdd47460e?comp=metadata", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "0", + "If-Match": "\u00220x8DA5AC8CA86590A\u0022", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "6004a3bb-dc77-456b-64cb-eecf21ceeeb1", + "x-ms-date": "Thu, 30 Jun 2022 18:46:06 GMT", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022191b243f-fcf5-c0f1-ab9a-5194c154eda1\u0022,\u0022EncryptedKey\u0022:\u002232Zt6X8tHFaivrkJOBzWg8Kt5wHpxTGaRThTTu3wdv8=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:06 GMT", + "ETag": "\u00220x8DA5AC8CA9A052F\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:06 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "6004a3bb-dc77-456b-64cb-eecf21ceeeb1", + "x-ms-request-id": "b12d512c-d01e-006a-2ab1-8cbc00000000", + "x-ms-request-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:06.5417035Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-a9130b7c-39d8-6dff-4071-bcb3b6faf8c8/test-blob-3e40e3ce-19b8-8dc5-802c-deabdd47460e", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-ca429959046dd08731e3d92d6536271a-214d8958ccdb2371-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "ac068c13-30a7-211d-6bf4-873eedb04acd", + "x-ms-date": "Thu, 30 Jun 2022 18:46:06 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "M3vBCxvRDKls3P/RY6fFQw==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:06 GMT", + "ETag": "\u00220x8DA5AC8CA9A052F\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:06 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "ac068c13-30a7-211d-6bf4-873eedb04acd", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:06 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022191b243f-fcf5-c0f1-ab9a-5194c154eda1\u0022,\u0022EncryptedKey\u0022:\u002232Zt6X8tHFaivrkJOBzWg8Kt5wHpxTGaRThTTu3wdv8=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d5165-d01e-006a-60b1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:06.5417035Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-a9130b7c-39d8-6dff-4071-bcb3b6faf8c8?restype=container", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-39190c9bfab6e9394e45ac8784b77488-e10237a7ec031ad7-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "95bcd418-42c8-950a-a384-06ff2e03c46f", + "x-ms-date": "Thu, 30 Jun 2022 18:46:06 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 202, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:06 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "95bcd418-42c8-950a-a384-06ff2e03c46f", + "x-ms-request-id": "b12d519d-d01e-006a-17b1-8cbc00000000", + "x-ms-version": "2021-08-06" + }, + "ResponseBody": null + } + ], + "Variables": { + "RandomSeed": "1096356124", + "Storage_TestConfigDefault": "ProductionTenant\njaschrepragrs\nU2FuaXRpemVk\nhttps://jaschrepragrs.blob.core.windows.net\nhttps://jaschrepragrs.file.core.windows.net\nhttps://jaschrepragrs.queue.core.windows.net\nhttps://jaschrepragrs.table.core.windows.net\n\n\n\n\nhttps://jaschrepragrs-secondary.blob.core.windows.net\nhttps://jaschrepragrs-secondary.file.core.windows.net\nhttps://jaschrepragrs-secondary.queue.core.windows.net\nhttps://jaschrepragrs-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://jaschrepragrs.blob.core.windows.net/;QueueEndpoint=https://jaschrepragrs.queue.core.windows.net/;FileEndpoint=https://jaschrepragrs.file.core.windows.net/;BlobSecondaryEndpoint=https://jaschrepragrs-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://jaschrepragrs-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://jaschrepragrs-secondary.file.core.windows.net/;AccountName=jaschrepragrs;AccountKey=Sanitized\n[encryption scope]\n\n" + } +} diff --git a/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(True,V1_0)Async.json b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(True,V1_0)Async.json new file mode 100644 index 0000000000000..237667358048f --- /dev/null +++ b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(True,V1_0)Async.json @@ -0,0 +1,268 @@ +{ + "Entries": [ + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-954d4581-a8b0-c664-abd4-3a69fb440dac?restype=container", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "0", + "traceparent": "00-cfc79d237d1bf12f84246d0b7ea1ed3e-f68c98a2692be7cb-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-blob-public-access": "container", + "x-ms-client-request-id": "33e23194-2360-57d8-7caf-ba4a57ecbe45", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "ETag": "\u00220x8DA5AC8CB7D2F40\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "33e23194-2360-57d8-7caf-ba4a57ecbe45", + "x-ms-request-id": "b12d574f-d01e-006a-7eb1-8cbc00000000", + "x-ms-version": "2021-08-06" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-954d4581-a8b0-c664-abd4-3a69fb440dac/test-blob-c753874d-980b-f6d2-124d-740f2c08d249", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "1024", + "Content-Type": "application/octet-stream", + "traceparent": "00-0816b08309a4a76a5652bbafced520ab-5351d20d2a13a541-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "6c0e36e1-cc0e-fb59-5fec-2112afc82b73", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022aac7e698-b989-fec3-2ea8-44fd3896b595\u0022,\u0022EncryptedKey\u0022:\u0022boil\\u002BUrYBBe08xGchlJGdv8fipnhbqlGdaXMZasah0M=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": "3wrjrWVpotY2qnkQ7Xhr\u002Bdh4qLQl5EUXaDmcSofUgz8HhjIdkfu6S\u002BXT04LFErSZjeElOBuu4PrFy0UszFdOYSc5CWZFTmjcvVzOUhHCUlaEA72mr0okWaY3WMW2jn6OhHFbjAhNUz94SHu/343pA3jup8maqLLcFK\u002B/DvaiJi/dQM2fZsZNN69\u002BLWbOZXkYTVVNx\u002Ba089u/fndYjUVI1iFM4Z6/SpyyoHAaHHtLDq81psChVF9JKEzy3\u002BdP9alpNVZFgoPbWQO4miZ1mtdgc3DIIueFp4HCA7hSzWq0Y6vHseckBosrWk286Lo40451kWx3h9LC5I3Ug3/KiYuYAzd7renwO2zlnMeZyL/HiS8q3Dz9PdzYBcxZUIMMYNHCJOSCvCWlhFX/kuoKKRvNDPlPoKxOmsZboqgcluvp2Dv11qTaRcwJhVjn/avxztywi0OJvMAlc4keJhp9ie5pFrmvFFJ388YtRRtTZ50batTMawqnYBt60GIbvB\u002ByjPxqfefxQbmJOZh9XHel0QzsArxFsR3jwrWdNETvXDanerkf6eq1KSgaQjJyKgSk1f5WL7libNrehrsxUw11mdxh1eG9heciNtmTK2/rcJex\u002BV5GmS19RQ7eQGMug9YbpahVEFQi5lAWM/jgzkFr8xYjgFquLgCv5JDS30SE87MCeIXHlV9CjhIOL2U0nHbNck1MCgN8bHanpizEUAcLkUBF3VW7pF224fFHn/\u002BaekcaBWz3OOivhgwOH\u002B8zfj4LA54l778gEc7vlikRNcx3DSvlqkqaFFlXlVdJrYVugmOzO5xhdIqI\u002BfSeB6G/nVE/lxHDTtP0ce9Ezlln1mRIgBPGXvkwFpihXLBW\u002Bwy4mPcGChZzqzSPv8mtHKYxICKPVoaN\u002BD9XD4B4IvEinXbijDZhYcxN1dXfN58vg/nybzyNxqSFKp\u002B4rvqV\u002BolDbCFTypBvz75WQoGxrsGfKIuHhbK0lNfRXGGWqbPRuNpLnMp\u002B3LhpgqB\u002BN4Qj1HzeGIZuDnXXjtdKgW0u2SUKhImnZRH2IUvTHQMRNl1Srojlt5AtYqpldA3yM1pLO6l6c7P6fG9q5/c6m/Bxxld699PlSSGV3SHfQvEEBO3wh\u002BFZlsOpVzEYetCZ8se58661dzuHZvKH5ZWRGzp9ZuIJShQPGC\u002BU0aChzM5R\u002B\u002BtaJk9DTo2xaSHv0rAuFzv3mhPtj6iyqtp\u002BIaab5ZkjNuqqN/XrOhhVV\u002BHyH0V/ZrlkqjG7Y2xCp3t0xCznFoOIy5zGg\u002BBGDGD7lzjHwIqU/7vsNjtnaNJ\u002BaI95dnbrbkFdalSpuOLYHp7Rv8wzeufx38Vx\u002Bt9HIGLJSBtRzJXpECn3aVY260bYEw==", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Content-MD5": "R3nFFAOoHn4NDTUv9gZdtQ==", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "ETag": "\u00220x8DA5AC8CB83F4A7\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "6c0e36e1-cc0e-fb59-5fec-2112afc82b73", + "x-ms-content-crc64": "TnLAOIOY6zU=", + "x-ms-request-id": "b12d5793-d01e-006a-3ab1-8cbc00000000", + "x-ms-request-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:08.0728231Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-954d4581-a8b0-c664-abd4-3a69fb440dac/test-blob-c753874d-980b-f6d2-124d-740f2c08d249", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-a278f1447f9391a9098c626a61926de4-23fa6a4d830eaa03-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "f52d40a5-65fa-743b-7bd9-6a76b83973ec", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "R3nFFAOoHn4NDTUv9gZdtQ==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "ETag": "\u00220x8DA5AC8CB83F4A7\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "f52d40a5-65fa-743b-7bd9-6a76b83973ec", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022aac7e698-b989-fec3-2ea8-44fd3896b595\u0022,\u0022EncryptedKey\u0022:\u0022boil\\u002BUrYBBe08xGchlJGdv8fipnhbqlGdaXMZasah0M=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d57c5-d01e-006a-6bb1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:08.0728231Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-954d4581-a8b0-c664-abd4-3a69fb440dac/test-blob-c753874d-980b-f6d2-124d-740f2c08d249", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "6f6df7c5-359b-7778-3495-073d8a6dbb01", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "R3nFFAOoHn4NDTUv9gZdtQ==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "ETag": "\u00220x8DA5AC8CB83F4A7\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "6f6df7c5-359b-7778-3495-073d8a6dbb01", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022aac7e698-b989-fec3-2ea8-44fd3896b595\u0022,\u0022EncryptedKey\u0022:\u0022boil\\u002BUrYBBe08xGchlJGdv8fipnhbqlGdaXMZasah0M=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d57ee-d01e-006a-12b1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:08.0728231Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-954d4581-a8b0-c664-abd4-3a69fb440dac/test-blob-c753874d-980b-f6d2-124d-740f2c08d249?comp=metadata", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "0", + "If-Match": "\u00220x8DA5AC8CB83F4A7\u0022", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "c0b0a312-04cb-2250-77e5-2a491de061e5", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u002285bda7ed-e976-86a8-5a00-16dabf5ff052\u0022,\u0022EncryptedKey\u0022:\u0022boil\\u002BUrYBBe08xGchlJGdv8fipnhbqlGdaXMZasah0M=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "ETag": "\u00220x8DA5AC8CB92717B\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "c0b0a312-04cb-2250-77e5-2a491de061e5", + "x-ms-request-id": "b12d5810-d01e-006a-32b1-8cbc00000000", + "x-ms-request-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:08.1687691Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-954d4581-a8b0-c664-abd4-3a69fb440dac/test-blob-c753874d-980b-f6d2-124d-740f2c08d249", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-f0568ffb94db79474458d4b3b4db34ee-64aff0f9a64acdb6-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "e72a5edb-fbbd-b836-d50e-cd559c006241", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "R3nFFAOoHn4NDTUv9gZdtQ==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "ETag": "\u00220x8DA5AC8CB92717B\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "e72a5edb-fbbd-b836-d50e-cd559c006241", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u002285bda7ed-e976-86a8-5a00-16dabf5ff052\u0022,\u0022EncryptedKey\u0022:\u0022boil\\u002BUrYBBe08xGchlJGdv8fipnhbqlGdaXMZasah0M=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d5837-d01e-006a-57b1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:08.1687691Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-954d4581-a8b0-c664-abd4-3a69fb440dac?restype=container", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-55d7502b70e9cee5bfd3317c0ba7b53c-4ead7c921c08fcf2-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "bf6d54a1-79b5-e328-f967-be92b33762ad", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 202, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "bf6d54a1-79b5-e328-f967-be92b33762ad", + "x-ms-request-id": "b12d5850-d01e-006a-70b1-8cbc00000000", + "x-ms-version": "2021-08-06" + }, + "ResponseBody": null + } + ], + "Variables": { + "RandomSeed": "1449786598", + "Storage_TestConfigDefault": "ProductionTenant\njaschrepragrs\nU2FuaXRpemVk\nhttps://jaschrepragrs.blob.core.windows.net\nhttps://jaschrepragrs.file.core.windows.net\nhttps://jaschrepragrs.queue.core.windows.net\nhttps://jaschrepragrs.table.core.windows.net\n\n\n\n\nhttps://jaschrepragrs-secondary.blob.core.windows.net\nhttps://jaschrepragrs-secondary.file.core.windows.net\nhttps://jaschrepragrs-secondary.queue.core.windows.net\nhttps://jaschrepragrs-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://jaschrepragrs.blob.core.windows.net/;QueueEndpoint=https://jaschrepragrs.queue.core.windows.net/;FileEndpoint=https://jaschrepragrs.file.core.windows.net/;BlobSecondaryEndpoint=https://jaschrepragrs-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://jaschrepragrs-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://jaschrepragrs-secondary.file.core.windows.net/;AccountName=jaschrepragrs;AccountKey=Sanitized\n[encryption scope]\n\n" + } +} diff --git a/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(True,V2_0).json b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(True,V2_0).json new file mode 100644 index 0000000000000..4ed60d9b01566 --- /dev/null +++ b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(True,V2_0).json @@ -0,0 +1,268 @@ +{ + "Entries": [ + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-dd24010f-d215-f0d1-1b5e-6ebd85c7b9d2?restype=container", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "0", + "traceparent": "00-91bfa584160125ea11bd6567d21de0ac-f0cc1131d5672843-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-blob-public-access": "container", + "x-ms-client-request-id": "6c9f53ea-633b-3c7a-c37e-08cd391e3409", + "x-ms-date": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:06 GMT", + "ETag": "\u00220x8DA5AC8CB00E675\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:07 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "6c9f53ea-633b-3c7a-c37e-08cd391e3409", + "x-ms-request-id": "b12d53fc-d01e-006a-5db1-8cbc00000000", + "x-ms-version": "2021-08-06" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-dd24010f-d215-f0d1-1b5e-6ebd85c7b9d2/test-blob-45b13fc7-5c04-d1ef-6c50-085c7fd5adde", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "1024", + "Content-Type": "application/octet-stream", + "traceparent": "00-b402d54e6787e36923058031531499c3-98d8dc3ab0f3325e-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "02344a84-a38c-8e73-64ce-00ea5b1ebded", + "x-ms-date": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022b7ef3058-42d2-7246-8acb-5a186b25997f\u0022,\u0022EncryptedKey\u0022:\u0022hU\\u002BM24KqMcHF75pQkqC/b/FrkNvTWCNFL37tb6s92u0=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": "vWcS50SCYD5H3lkq0IqVXYB99oX3PPgcSTWYkQ1MyAtHvrs2jQ\u002Bad42MTDTnKVwIHuM\u002BY7GwOIBv9Z0P6c8x\u002BxVN4hLPX89w4n74au/DNSDZkHIpDmVal4U6xpdxi469W1EfmUZKOL8TzYAyuM2QrMB9NlhcCO2v80uMlJg3/lbwOg\u002BdpJvZjlezFUDlJ964qRrX9FQ1YVNkb6b7vqQn284pQn698gclo6cBqfKsysts1Op9YAoButi8OTX13tCzjDlxu\u002BVg\u002BrcSslCtNLhguKTajuq5qXvEJ4elAbnSL8XXTR24Ow/mDNkzaq65VIYgXIGQGlDm\u002BuK\u002BrZNeu/n9QIKL1eabp32V9IEQhT7MCtIAhKU4QhV08VM6\u002BY17h1DgNSosLX\u002BfhbQE\u002BybO1nSk8qLBXTdTxf5sF\u002BSTYK7vGmwxL1ATn9xTYf7wNEbvpRvflgfruioZjHAsvxaaDCUGFeC5naYjkFLFbfs4Y5G3fXHJs8qmA2BBGKLf59/GuFXZ6h9mNQh0uwW0Jkwv4CnfdUGl0VhaXxGAd4UERKlz/7WmX3hyUUhoVfjF8t0TEjd4AHGeIOf9fosN5b2DcHdcQSeXiICxbCT5PHxflWw0bWRNi0M31N7NqeDtZGuK5eSBabG1e4q3x5NNpORqneke2HdZNeQzJGxIyd\u002Bfwwe4b1eX3iy7fvHalsOv6jD6Ywz3z4vzMa//TUREbLKqFwOMlDWM0r\u002B9YlqGfp8ggzo8TmbTqPR7xD2nl5DndhI/L3/AI1X6bZBMOWwxbbIQ3soKCB5M128OEM/35Tsu1utIR04fYF/lQeHVhm6HSVeLl7jG3G7z81cQsROFAohVHmOB6SVk8H5qJcY8dlEAh8Z4bE2CaPl8VFT2D65MXz9YgGgKBmAxJqY6W7eot3wGDypNDZY607VqBJXRbeDPHcWH5PXp9oBmRkWnRwxC1J3X8ACE/1KoHq2yoAHKYLnFaj3xINKHHBip58ZQk4uoKC/4\u002Bn3fSx5y3sZINlZ/m\u002BWM4d3OULTKUNPo2heLV4oiCnjR0WY75h8ff0EMPubCKkvhxLGt2dd7Lqqp93EH5oY7Jizercl/UPu\u002Br9FyvRHtJa/MqpPYdDCgVqO8ke6tF5i60Ri55H2BYXO27ykGCXCZvNHBOzvzYrH7PlYmw74MEJg4t\u002Bz4M0EySkkgIoUHmU0yItUd7Nxcx25nvqUmWp20qt6RzlGEoIiPjvDy0kAs9KUJ9KDp7iO73O99kHWcC\u002B\u002BrbHemdcr7rYJMjV3ravUuOskAHWb9yru71vJiBhAT84IBRmXIhn7aDkYenGDFz3H5T1Wsm\u002B6JrqG86p/YmKZyOZra6iOPZrRKJg8f3i1a9QaAaA==", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Content-MD5": "hVrw1obv\u002BP/LFp0sCjjczQ==", + "Date": "Thu, 30 Jun 2022 18:46:06 GMT", + "ETag": "\u00220x8DA5AC8CB05FD8E\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:07 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "02344a84-a38c-8e73-64ce-00ea5b1ebded", + "x-ms-content-crc64": "7S3OfyGL\u002B8Y=", + "x-ms-request-id": "b12d542b-d01e-006a-08b1-8cbc00000000", + "x-ms-request-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:07.2472974Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-dd24010f-d215-f0d1-1b5e-6ebd85c7b9d2/test-blob-45b13fc7-5c04-d1ef-6c50-085c7fd5adde", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-a8ffc62fa16472751893842eb839ffc9-e372db6f3fe8e3ac-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "34d752b6-aaa1-d251-8344-cd594cad1f75", + "x-ms-date": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "hVrw1obv\u002BP/LFp0sCjjczQ==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:06 GMT", + "ETag": "\u00220x8DA5AC8CB05FD8E\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:07 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "34d752b6-aaa1-d251-8344-cd594cad1f75", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022b7ef3058-42d2-7246-8acb-5a186b25997f\u0022,\u0022EncryptedKey\u0022:\u0022hU\\u002BM24KqMcHF75pQkqC/b/FrkNvTWCNFL37tb6s92u0=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d5460-d01e-006a-38b1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:07.2472974Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-dd24010f-d215-f0d1-1b5e-6ebd85c7b9d2/test-blob-45b13fc7-5c04-d1ef-6c50-085c7fd5adde", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "09335c32-8847-254c-d885-be0635882dfb", + "x-ms-date": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "hVrw1obv\u002BP/LFp0sCjjczQ==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:06 GMT", + "ETag": "\u00220x8DA5AC8CB05FD8E\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:07 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "09335c32-8847-254c-d885-be0635882dfb", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022b7ef3058-42d2-7246-8acb-5a186b25997f\u0022,\u0022EncryptedKey\u0022:\u0022hU\\u002BM24KqMcHF75pQkqC/b/FrkNvTWCNFL37tb6s92u0=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d5482-d01e-006a-59b1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:07.2472974Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-dd24010f-d215-f0d1-1b5e-6ebd85c7b9d2/test-blob-45b13fc7-5c04-d1ef-6c50-085c7fd5adde?comp=metadata", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "0", + "If-Match": "\u00220x8DA5AC8CB05FD8E\u0022", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "f026b30c-1679-3c2e-ccad-32eb99634ce0", + "x-ms-date": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022a89cea45-ebcd-2776-3220-9fcd5e9263c1\u0022,\u0022EncryptedKey\u0022:\u0022hU\\u002BM24KqMcHF75pQkqC/b/FrkNvTWCNFL37tb6s92u0=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:06 GMT", + "ETag": "\u00220x8DA5AC8CB151685\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:07 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "f026b30c-1679-3c2e-ccad-32eb99634ce0", + "x-ms-request-id": "b12d54a4-d01e-006a-7ab1-8cbc00000000", + "x-ms-request-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:07.3502385Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-dd24010f-d215-f0d1-1b5e-6ebd85c7b9d2/test-blob-45b13fc7-5c04-d1ef-6c50-085c7fd5adde", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-60440947e0605ed9e6f294cd905c7481-c8c5149e9c955b0a-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "82fa2ba5-3d61-ff81-0c81-70c95e47c484", + "x-ms-date": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "hVrw1obv\u002BP/LFp0sCjjczQ==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:06 GMT", + "ETag": "\u00220x8DA5AC8CB151685\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:07 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "82fa2ba5-3d61-ff81-0c81-70c95e47c484", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u0022a89cea45-ebcd-2776-3220-9fcd5e9263c1\u0022,\u0022EncryptedKey\u0022:\u0022hU\\u002BM24KqMcHF75pQkqC/b/FrkNvTWCNFL37tb6s92u0=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d54bf-d01e-006a-11b1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:07.3502385Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-dd24010f-d215-f0d1-1b5e-6ebd85c7b9d2?restype=container", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-3291129a751869a7500fa3afc0433131-ae5eaf294acb68e6-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "6e4554d8-ca68-4e7e-dd40-abb28ad843e1", + "x-ms-date": "Thu, 30 Jun 2022 18:46:07 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 202, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:06 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "6e4554d8-ca68-4e7e-dd40-abb28ad843e1", + "x-ms-request-id": "b12d54db-d01e-006a-2cb1-8cbc00000000", + "x-ms-version": "2021-08-06" + }, + "ResponseBody": null + } + ], + "Variables": { + "RandomSeed": "1409914331", + "Storage_TestConfigDefault": "ProductionTenant\njaschrepragrs\nU2FuaXRpemVk\nhttps://jaschrepragrs.blob.core.windows.net\nhttps://jaschrepragrs.file.core.windows.net\nhttps://jaschrepragrs.queue.core.windows.net\nhttps://jaschrepragrs.table.core.windows.net\n\n\n\n\nhttps://jaschrepragrs-secondary.blob.core.windows.net\nhttps://jaschrepragrs-secondary.file.core.windows.net\nhttps://jaschrepragrs-secondary.queue.core.windows.net\nhttps://jaschrepragrs-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://jaschrepragrs.blob.core.windows.net/;QueueEndpoint=https://jaschrepragrs.queue.core.windows.net/;FileEndpoint=https://jaschrepragrs.file.core.windows.net/;BlobSecondaryEndpoint=https://jaschrepragrs-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://jaschrepragrs-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://jaschrepragrs-secondary.file.core.windows.net/;AccountName=jaschrepragrs;AccountKey=Sanitized\n[encryption scope]\n\n" + } +} diff --git a/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(True,V2_0)Async.json b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(True,V2_0)Async.json new file mode 100644 index 0000000000000..b50e091355fe1 --- /dev/null +++ b/sdk/storage/Azure.Storage.Blobs/tests/SessionRecords/ClientSideEncryptionTests/UpdateKey(True,V2_0)Async.json @@ -0,0 +1,268 @@ +{ + "Entries": [ + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-0bb92a1f-6dab-b04d-38d0-7cf47e23968c?restype=container", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "0", + "traceparent": "00-2a9f498079fd0bb2a8c960822aa678e5-86cc8b4cedbea99f-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-blob-public-access": "container", + "x-ms-client-request-id": "d2534a77-f28f-92ee-e644-ae479edc0111", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "ETag": "\u00220x8DA5AC8CBA327FE\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "d2534a77-f28f-92ee-e644-ae479edc0111", + "x-ms-request-id": "b12d587e-d01e-006a-1eb1-8cbc00000000", + "x-ms-version": "2021-08-06" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-0bb92a1f-6dab-b04d-38d0-7cf47e23968c/test-blob-20ada581-3579-d10b-1b0b-d42e23c8c265", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "1024", + "Content-Type": "application/octet-stream", + "traceparent": "00-f53d54dcd89fabde1fa08f76559f6873-aee08735a3cb9c24-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "4903377b-7d25-4173-3e81-b7841ebf6e1d", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u00229e6da2e3-de12-34ca-8ff0-076049482949\u0022,\u0022EncryptedKey\u0022:\u0022NvcCgmPeIH9wxpuNArYCZgDMChjo5C5/y\\u002BjN8xxdPeY=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": "8tGtvBDfb8\u002BSO8Mal2\u002BtdQtooo1/CCgTZeAkssxR8TweMjDoB8vDfn3\u002BfOgVlZ0xZiD0fJp6temomVcwu7wDQUqG/GQ/xG5ApSMQgYxA/dBD8kusXXWipHxHP210ksPB\u002Bzuejpk48qGxtNZ2ajRcaJuG7MhwVuPU5Ffn\u002BIUBzBJgT4ZRoW83CgCq\u002BqmeKzpI6tbR7aX6UKRXyapBUPocsOfDFhquC8YsTuLHxlw6Nrgdnw2uL95sZf7h\u002BtjE9rkFjknB2hQfmd8PpJ/DMopHHZLxI7HsbYEJVrAczBDuaFgowjgTeFuj/gUunos/qTN0mt1F0tMIGCDIt4NkA83OITtGm3BRNKQ3TSSsvs72yq19pzIzqJaFIKkXSsHXP/s3X31P\u002BA7CImU4DoSuW1pR0u3W51uam3mlwXrHOunjXw4pdF5Rp9KfuoTM\u002BpkR1sROxXjTAVifncQDqTaT\u002Buh7Va92hOf7/ysbNizXzaDglOq2eHRwD122iteaTv2bDMCbUaTpm1LcU8ZNuMsrx88kIxVM3IJ0CkZSv/oQYbEtfylsO3z79viY2SWuI1aRisIIdivoTzA\u002BJ0Zel9tXzPIUIDmhv4tSKCwcswJcxufvwDU3COqGRDD5LRQ2nV4dQAwzmQId8Mo2tU3\u002BzJst4WBebtelH8QHjtsIqJF2G4rO/nL1KS3k0tBrAVKciHiUzEy02C6HdyFILAsnFEc4v5rCMM0pN7gzeZwHOh5yagZidNtFwkNcRodRrf0hvb2IMkG42Vira5WUgF6Rfz0C1sEFxKBs8/1WZulG14m7EbvffwfduZCutwlGsULkysdJT9c7HPgcGz9EYXNuZZML2W\u002BisgA1JRwxVg2XJkG7cZwh/Iiyf/TCw2PHmVgdP1J1OtjSQhjHEyq6CsbrhPX\u002BiO/WTWgKWVl63\u002B\u002BcbovEExe6Iexp6C\u002BEWuhe93Uu1z5uyRBoRvHpauB\u002BWGIoK6We9vauMGMJlKDAUvKArGHkSwiwLqR7W80l0bYL6o/NWy9CvwF\u002BgKbbZDRvqPP/aL1/mgxZePwAI5ooiF\u002Bs/aoR8vfDPe1fZcti1clvDLPaJmn4jE\u002BCc\u002BMyQZxnVvdHL2eKXrX8OyrQHzRB96IzkRfmTmH1s3Fajn8UkftQ\u002BA/TG6Zi5a393us\u002BKGwaQXxA/rCFgAeWUXz1L88256kvgCclbdz80atp6G92t4sEP0wC1JNLyncHPckqbLXdx/ZBD6dF9dOfQywEHJeYIJnw8PCCMxMW5LWvHTAS0mX2iyF5NKjjv0l5YpFmRq7gbxwwOXzFW5PjKivxlteijXDHDpF2HuvwDTGmCdCCsJ0Hzq4U4pnpMTCNlQl98ihy1tUgnjcdalAxPw==", + "StatusCode": 201, + "ResponseHeaders": { + "Content-Length": "0", + "Content-MD5": "Ucb62J0LcHPN7x6SbOOXUQ==", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "ETag": "\u00220x8DA5AC8CBA81925\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "4903377b-7d25-4173-3e81-b7841ebf6e1d", + "x-ms-content-crc64": "3/QqX3XVa88=", + "x-ms-request-id": "b12d58ab-d01e-006a-48b1-8cbc00000000", + "x-ms-request-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:08.3096869Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-0bb92a1f-6dab-b04d-38d0-7cf47e23968c/test-blob-20ada581-3579-d10b-1b0b-d42e23c8c265", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-467590fbadf8a98a5581c6441e55ab2c-7bf5913a4a87cb91-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "ecb37afb-78c4-b53f-1b3b-f54d0b784e15", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "Ucb62J0LcHPN7x6SbOOXUQ==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "ETag": "\u00220x8DA5AC8CBA81925\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "ecb37afb-78c4-b53f-1b3b-f54d0b784e15", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u00229e6da2e3-de12-34ca-8ff0-076049482949\u0022,\u0022EncryptedKey\u0022:\u0022NvcCgmPeIH9wxpuNArYCZgDMChjo5C5/y\\u002BjN8xxdPeY=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d58d3-d01e-006a-6fb1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:08.3096869Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-0bb92a1f-6dab-b04d-38d0-7cf47e23968c/test-blob-20ada581-3579-d10b-1b0b-d42e23c8c265", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "a488644f-820b-0958-095f-f424d6f3b22f", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "Ucb62J0LcHPN7x6SbOOXUQ==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "ETag": "\u00220x8DA5AC8CBA81925\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "a488644f-820b-0958-095f-f424d6f3b22f", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u00229e6da2e3-de12-34ca-8ff0-076049482949\u0022,\u0022EncryptedKey\u0022:\u0022NvcCgmPeIH9wxpuNArYCZgDMChjo5C5/y\\u002BjN8xxdPeY=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d58f8-d01e-006a-14b1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:08.3096869Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-0bb92a1f-6dab-b04d-38d0-7cf47e23968c/test-blob-20ada581-3579-d10b-1b0b-d42e23c8c265?comp=metadata", + "RequestMethod": "PUT", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "Content-Length": "0", + "If-Match": "\u00220x8DA5AC8CBA81925\u0022", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "a7fef989-aaf0-a509-2f3d-4c520bd5d703", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u00220b5018d1-e22e-9396-d65c-5c28c0033527\u0022,\u0022EncryptedKey\u0022:\u0022NvcCgmPeIH9wxpuNArYCZgDMChjo5C5/y\\u002BjN8xxdPeY=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "ETag": "\u00220x8DA5AC8CBB66EED\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "a7fef989-aaf0-a509-2f3d-4c520bd5d703", + "x-ms-request-id": "b12d5918-d01e-006a-32b1-8cbc00000000", + "x-ms-request-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:08.4046333Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-0bb92a1f-6dab-b04d-38d0-7cf47e23968c/test-blob-20ada581-3579-d10b-1b0b-d42e23c8c265", + "RequestMethod": "HEAD", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-aac3a980451e551892facb9a56019dfd-4f7c5af68282d570-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "dd9b69db-0af4-463f-2c15-d7be904ef0aa", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 200, + "ResponseHeaders": { + "Accept-Ranges": "bytes", + "Content-Length": "1024", + "Content-MD5": "Ucb62J0LcHPN7x6SbOOXUQ==", + "Content-Type": "application/octet-stream", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "ETag": "\u00220x8DA5AC8CBB66EED\u0022", + "Last-Modified": "Thu, 30 Jun 2022 18:46:08 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-access-tier": "Hot", + "x-ms-access-tier-inferred": "true", + "x-ms-blob-type": "BlockBlob", + "x-ms-client-request-id": "dd9b69db-0af4-463f-2c15-d7be904ef0aa", + "x-ms-creation-time": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-is-current-version": "true", + "x-ms-lease-state": "available", + "x-ms-lease-status": "unlocked", + "x-ms-meta-encryptiondata": "{\u0022EncryptionMode\u0022:\u0022bar\u0022,\u0022WrappedContentKey\u0022:{\u0022KeyId\u0022:\u00220b5018d1-e22e-9396-d65c-5c28c0033527\u0022,\u0022EncryptedKey\u0022:\u0022NvcCgmPeIH9wxpuNArYCZgDMChjo5C5/y\\u002BjN8xxdPeY=\u0022,\u0022Algorithm\u0022:\u0022some algorithm name\u0022},\u0022EncryptionAgent\u0022:{\u0022Protocol\u0022:\u00222.0\u0022,\u0022EncryptionAlgorithm\u0022:\u0022foo\u0022},\u0022EncryptedRegionInfo\u0022:{\u0022DataLength\u0022:4194304,\u0022NonceLength\u0022:12},\u0022KeyWrappingMetadata\u0022:{\u0022fizz\u0022:\u0022buzz\u0022}}", + "x-ms-request-id": "b12d593e-d01e-006a-56b1-8cbc00000000", + "x-ms-server-encrypted": "true", + "x-ms-version": "2021-08-06", + "x-ms-version-id": "2022-06-30T18:46:08.4046333Z" + }, + "ResponseBody": null + }, + { + "RequestUri": "https://jaschrepragrs.blob.core.windows.net/test-container-0bb92a1f-6dab-b04d-38d0-7cf47e23968c?restype=container", + "RequestMethod": "DELETE", + "RequestHeaders": { + "Accept": "application/xml", + "Authorization": "Sanitized", + "traceparent": "00-0a68ec629c20d6eae76db848633d1054-21a7ccf7c941a8db-00", + "User-Agent": "azsdk-net-Storage.Blobs/12.13.0-alpha.20220630.1 (.NET 6.0.6; Microsoft Windows 10.0.22000)", + "x-ms-client-request-id": "a2769d0b-f939-880e-31ac-cebfd243e274", + "x-ms-date": "Thu, 30 Jun 2022 18:46:08 GMT", + "x-ms-return-client-request-id": "true", + "x-ms-version": "2021-08-06" + }, + "RequestBody": null, + "StatusCode": 202, + "ResponseHeaders": { + "Content-Length": "0", + "Date": "Thu, 30 Jun 2022 18:46:07 GMT", + "Server": [ + "Windows-Azure-Blob/1.0", + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-client-request-id": "a2769d0b-f939-880e-31ac-cebfd243e274", + "x-ms-request-id": "b12d5959-d01e-006a-70b1-8cbc00000000", + "x-ms-version": "2021-08-06" + }, + "ResponseBody": null + } + ], + "Variables": { + "RandomSeed": "166227606", + "Storage_TestConfigDefault": "ProductionTenant\njaschrepragrs\nU2FuaXRpemVk\nhttps://jaschrepragrs.blob.core.windows.net\nhttps://jaschrepragrs.file.core.windows.net\nhttps://jaschrepragrs.queue.core.windows.net\nhttps://jaschrepragrs.table.core.windows.net\n\n\n\n\nhttps://jaschrepragrs-secondary.blob.core.windows.net\nhttps://jaschrepragrs-secondary.file.core.windows.net\nhttps://jaschrepragrs-secondary.queue.core.windows.net\nhttps://jaschrepragrs-secondary.table.core.windows.net\n\nSanitized\n\n\nCloud\nBlobEndpoint=https://jaschrepragrs.blob.core.windows.net/;QueueEndpoint=https://jaschrepragrs.queue.core.windows.net/;FileEndpoint=https://jaschrepragrs.file.core.windows.net/;BlobSecondaryEndpoint=https://jaschrepragrs-secondary.blob.core.windows.net/;QueueSecondaryEndpoint=https://jaschrepragrs-secondary.queue.core.windows.net/;FileSecondaryEndpoint=https://jaschrepragrs-secondary.file.core.windows.net/;AccountName=jaschrepragrs;AccountKey=Sanitized\n[encryption scope]\n\n" + } +} diff --git a/sdk/storage/Azure.Storage.Common/api/Azure.Storage.Common.netstandard2.0.cs b/sdk/storage/Azure.Storage.Common/api/Azure.Storage.Common.netstandard2.0.cs index afda8fdf58bf5..7b84ccdf56c98 100644 --- a/sdk/storage/Azure.Storage.Common/api/Azure.Storage.Common.netstandard2.0.cs +++ b/sdk/storage/Azure.Storage.Common/api/Azure.Storage.Common.netstandard2.0.cs @@ -10,7 +10,7 @@ public ClientSideEncryptionOptions(Azure.Storage.ClientSideEncryptionVersion ver } public enum ClientSideEncryptionVersion { - [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)] + [System.ObsoleteAttribute("This version is considered insecure. Applications are encouraged to migrate to version 2.0 or to one of Azure Storage's server-side encryption solutions. See http://aka.ms/azstorageclientencryptionblog for more details.")] V1_0 = 1, V2_0 = 2, } diff --git a/sdk/storage/Azure.Storage.Common/src/ClientSideEncryptionVersion.cs b/sdk/storage/Azure.Storage.Common/src/ClientSideEncryptionVersion.cs index f3f17ac34b0bb..980b6e42fae41 100644 --- a/sdk/storage/Azure.Storage.Common/src/ClientSideEncryptionVersion.cs +++ b/sdk/storage/Azure.Storage.Common/src/ClientSideEncryptionVersion.cs @@ -1,6 +1,7 @@ // Copyright (c) Microsoft Corporation. All rights reserved. // Licensed under the MIT License. +using System; using System.ComponentModel; namespace Azure.Storage @@ -12,12 +13,9 @@ namespace Azure.Storage public enum ClientSideEncryptionVersion { /// - /// 1.0. This version is considered insecure. Applications are encouraged to migrate to - /// or to one of our server-side encryption solutions. See - /// this article - /// for more details. + /// 1.0. /// - [EditorBrowsable(EditorBrowsableState.Never)] + [Obsolete("This version is considered insecure. Applications are encouraged to migrate to version 2.0 or to one of Azure Storage's server-side encryption solutions. See http://aka.ms/azstorageclientencryptionblog for more details.")] V1_0 = 1, /// diff --git a/sdk/storage/Azure.Storage.Common/src/Shared/ClientsideEncryption/ClientSideDecryptor.cs b/sdk/storage/Azure.Storage.Common/src/Shared/ClientsideEncryption/ClientSideDecryptor.cs index 57f41fa7f2a09..c867f398af8a1 100644 --- a/sdk/storage/Azure.Storage.Common/src/Shared/ClientsideEncryption/ClientSideDecryptor.cs +++ b/sdk/storage/Azure.Storage.Common/src/Shared/ClientsideEncryption/ClientSideDecryptor.cs @@ -74,6 +74,7 @@ public async Task DecryptReadInternal( { switch (encryptionData.EncryptionAgent.EncryptionVersion) { +#pragma warning disable CS0618 // obsolete case ClientSideEncryptionVersion.V1_0: return await DecryptReadInternalV1_0( ciphertext, @@ -82,6 +83,7 @@ public async Task DecryptReadInternal( noPadding, async, cancellationToken).ConfigureAwait(false); +#pragma warning restore CS0618 // obsolete case ClientSideEncryptionVersion.V2_0: return await DecryptInternalV2_0( ciphertext, @@ -122,12 +124,14 @@ public async Task DecryptWholeContentWriteInternal( { switch (encryptionData.EncryptionAgent.EncryptionVersion) { +#pragma warning disable CS0618 // obsolete case ClientSideEncryptionVersion.V1_0: return await DecryptWholeContentWriteInternalV1_0( plaintextDestination, encryptionData, async, cancellationToken).ConfigureAwait(false); +#pragma warning restore CS0618 // obsolete case ClientSideEncryptionVersion.V2_0: return await DecryptInternalV2_0( plaintextDestination, @@ -394,9 +398,11 @@ internal async Task> GetContentEncryptionKeyAsync( Memory unwrappedKey; switch (encryptionData.EncryptionAgent.EncryptionVersion) { +#pragma warning disable CS0618 // obsolete case ClientSideEncryptionVersion.V1_0: unwrappedKey = unwrappedContent; break; +#pragma warning restore CS0618 // obsolete // v2.0 binds content encryption key with content encryption algorithm under a single keywrap. // Separate key from algorithm ID and validate ID match case ClientSideEncryptionVersion.V2_0: diff --git a/sdk/storage/Azure.Storage.Common/src/Shared/ClientsideEncryption/ClientSideEncryptionOptionsExtensions.cs b/sdk/storage/Azure.Storage.Common/src/Shared/ClientsideEncryption/ClientSideEncryptionOptionsExtensions.cs index 9df2fa7cf8bfa..8b9cb1cafe285 100644 --- a/sdk/storage/Azure.Storage.Common/src/Shared/ClientsideEncryption/ClientSideEncryptionOptionsExtensions.cs +++ b/sdk/storage/Azure.Storage.Common/src/Shared/ClientsideEncryption/ClientSideEncryptionOptionsExtensions.cs @@ -41,7 +41,9 @@ public static IClientSideEncryptor GetClientSideEncryptor(this ClientSideEncrypt { return options.EncryptionVersion switch { +#pragma warning disable CS0618 // obsolete ClientSideEncryptionVersion.V1_0 => new ClientSideEncryptorV1_0(options), +#pragma warning disable CS0618 // obsolete ClientSideEncryptionVersion.V2_0 => new ClientSideEncryptorV2_0(options), _ => throw Errors.ClientSideEncryption.ClientSideEncryptionVersionNotSupported() }; diff --git a/sdk/storage/Azure.Storage.Common/src/Shared/ClientsideEncryption/ClientSideEncryptionVersionExtensions.cs b/sdk/storage/Azure.Storage.Common/src/Shared/ClientsideEncryption/ClientSideEncryptionVersionExtensions.cs index 74cec6d7d52f4..674bdc7af7492 100644 --- a/sdk/storage/Azure.Storage.Common/src/Shared/ClientsideEncryption/ClientSideEncryptionVersionExtensions.cs +++ b/sdk/storage/Azure.Storage.Common/src/Shared/ClientsideEncryption/ClientSideEncryptionVersionExtensions.cs @@ -15,8 +15,10 @@ public static string Serialize(this ClientSideEncryptionVersion version) { switch (version) { +#pragma warning disable CS0618 // obsolete case ClientSideEncryptionVersion.V1_0: return ClientSideEncryptionVersionString.V1_0; +#pragma warning restore CS0618 // obsolete case ClientSideEncryptionVersion.V2_0: return ClientSideEncryptionVersionString.V2_0; default: @@ -29,8 +31,10 @@ public static ClientSideEncryptionVersion ToClientSideEncryptionVersion(this str { switch (versionString) { +#pragma warning disable CS0618 // obsolete case ClientSideEncryptionVersionString.V1_0: return ClientSideEncryptionVersion.V1_0; +#pragma warning restore CS0618 // obsolete case ClientSideEncryptionVersionString.V2_0: return ClientSideEncryptionVersion.V2_0; default: diff --git a/sdk/storage/Azure.Storage.Common/src/Shared/ClientsideEncryption/ClientSideEncryptorV1_0.cs b/sdk/storage/Azure.Storage.Common/src/Shared/ClientsideEncryption/ClientSideEncryptorV1_0.cs index 9915b06651448..4e4c9e87d0858 100644 --- a/sdk/storage/Azure.Storage.Common/src/Shared/ClientsideEncryption/ClientSideEncryptorV1_0.cs +++ b/sdk/storage/Azure.Storage.Common/src/Shared/ClientsideEncryption/ClientSideEncryptorV1_0.cs @@ -20,10 +20,12 @@ internal class ClientSideEncryptorV1_0 : IClientSideEncryptor public ClientSideEncryptorV1_0(ClientSideEncryptionOptions options) { Argument.AssertNotNull(options, nameof(options)); +#pragma warning disable CS0618 // obsolete if (options.EncryptionVersion != ClientSideEncryptionVersion.V1_0) { Errors.InvalidArgument(nameof(options.EncryptionVersion)); } +#pragma warning restore CS0618 // obsolete _keyEncryptionKey = options.KeyEncryptionKey; _keyWrapAlgorithm = options.KeyWrapAlgorithm; diff --git a/sdk/storage/Azure.Storage.Common/src/Shared/ClientsideEncryption/Models/EncryptionData.cs b/sdk/storage/Azure.Storage.Common/src/Shared/ClientsideEncryption/Models/EncryptionData.cs index d404733b877f5..64cc41715cf42 100644 --- a/sdk/storage/Azure.Storage.Common/src/Shared/ClientsideEncryption/Models/EncryptionData.cs +++ b/sdk/storage/Azure.Storage.Common/src/Shared/ClientsideEncryption/Models/EncryptionData.cs @@ -64,7 +64,9 @@ internal static async Task CreateInternalV1_0( EncryptionAgent = new EncryptionAgent() { EncryptionAlgorithm = ClientSideEncryptionAlgorithm.AesCbc256, +#pragma warning disable CS0618 // obsolete EncryptionVersion = ClientSideEncryptionVersion.V1_0 +#pragma warning restore CS0618 // obsolete }, KeyWrappingMetadata = new Dictionary() { diff --git a/sdk/storage/Azure.Storage.Common/src/Shared/Constants.cs b/sdk/storage/Azure.Storage.Common/src/Shared/Constants.cs index 2850bddc15b4e..b9dd3bda15d17 100644 --- a/sdk/storage/Azure.Storage.Common/src/Shared/Constants.cs +++ b/sdk/storage/Azure.Storage.Common/src/Shared/Constants.cs @@ -628,8 +628,6 @@ internal static class AccountResources internal static class ClientSideEncryption { - public const ClientSideEncryptionVersion CurrentVersion = ClientSideEncryptionVersion.V1_0; - public const string AgentMetadataKey = "EncryptionLibrary"; public const string AesCbcPkcs5Padding = "AES/CBC/PKCS5Padding"; diff --git a/sdk/storage/Azure.Storage.Queues/src/QueueClient.cs b/sdk/storage/Azure.Storage.Queues/src/QueueClient.cs index 4dc8ce94657ea..1ece25c52d5d8 100644 --- a/sdk/storage/Azure.Storage.Queues/src/QueueClient.cs +++ b/sdk/storage/Azure.Storage.Queues/src/QueueClient.cs @@ -1963,7 +1963,9 @@ private async Task> SendMessageInternal( { IClientSideEncryptor encryptor = ClientConfiguration.ClientSideEncryption.EncryptionVersion switch { +#pragma warning disable CS0618 // obsolete ClientSideEncryptionVersion.V1_0 => new ClientSideEncryptorV1_0(ClientConfiguration.ClientSideEncryption), +#pragma warning restore CS0618 // obsolete ClientSideEncryptionVersion.V2_0 => new ClientSideEncryptorV2_0(ClientConfiguration.ClientSideEncryption), _ => throw new InvalidOperationException() }; @@ -3009,7 +3011,9 @@ private async Task> UpdateMessageInternal( { IClientSideEncryptor encryptor = ClientConfiguration.ClientSideEncryption.EncryptionVersion switch { +#pragma warning disable CS0618 // obsolete ClientSideEncryptionVersion.V1_0 => new ClientSideEncryptorV1_0(ClientConfiguration.ClientSideEncryption), +#pragma warning restore CS0618 // obsolete ClientSideEncryptionVersion.V2_0 => new ClientSideEncryptorV2_0(ClientConfiguration.ClientSideEncryption), _ => throw new InvalidOperationException() }; diff --git a/sdk/storage/Azure.Storage.Queues/tests/ClientSideEncryptionTests.cs b/sdk/storage/Azure.Storage.Queues/tests/ClientSideEncryptionTests.cs index 6bb2e0da0ecc5..5338ca89b264b 100644 --- a/sdk/storage/Azure.Storage.Queues/tests/ClientSideEncryptionTests.cs +++ b/sdk/storage/Azure.Storage.Queues/tests/ClientSideEncryptionTests.cs @@ -137,7 +137,8 @@ public string GetRandomMessage(int size) [Test] [LiveOnly] - public void CanSwapKey() + public void CanSwapKey( + [ValueSource("GetEncryptionVersions")] ClientSideEncryptionVersion version) { int options1EventCalled = 0; int options2EventCalled = 0; @@ -149,14 +150,14 @@ void Options2_DecryptionFailed(object sender, ClientSideDecryptionFailureEventAr { options2EventCalled++; } - var options1 = new QueueClientSideEncryptionOptions(ClientSideEncryptionVersion.V1_0) + var options1 = new QueueClientSideEncryptionOptions(version) { KeyEncryptionKey = this.GetIKeyEncryptionKey(s_cancellationToken).Object, KeyResolver = this.GetIKeyEncryptionKeyResolver(s_cancellationToken, default).Object, KeyWrapAlgorithm = "foo" }; options1.DecryptionFailed += Options1_DecryptionFailed; - var options2 = new QueueClientSideEncryptionOptions(ClientSideEncryptionVersion.V1_0) + var options2 = new QueueClientSideEncryptionOptions(version) { KeyEncryptionKey = this.GetIKeyEncryptionKey(s_cancellationToken).Object, KeyResolver = this.GetIKeyEncryptionKeyResolver(s_cancellationToken, default).Object, @@ -192,6 +193,7 @@ void Options2_DecryptionFailed(object sender, ClientSideDecryptionFailureEventAr Assert.AreEqual(1, options2EventCalled); } +#pragma warning disable CS0618 // obsolete [TestCase(ClientSideEncryptionVersion.V1_0, 16, false)] // a single cipher block [TestCase(ClientSideEncryptionVersion.V1_0, 14, false)] // a single unalligned cipher block [TestCase(ClientSideEncryptionVersion.V1_0, Constants.KB, false)] // multiple blocks @@ -200,6 +202,7 @@ void Options2_DecryptionFailed(object sender, ClientSideDecryptionFailureEventAr [TestCase(ClientSideEncryptionVersion.V2_0, Constants.KB, false)] // block is larger than max message size, just use 1KB [TestCase(ClientSideEncryptionVersion.V2_0, 0, true)] // utf8 support testing [LiveOnly] // cannot seed content encryption key +#pragma warning disable CS0618 // obsolete public async Task UploadAsync(ClientSideEncryptionVersion version, int messageSize, bool usePrebuiltMessage) { var message = usePrebuiltMessage @@ -233,9 +236,11 @@ public async Task UploadAsync(ClientSideEncryptionVersion version, int messageSi byte[] explicitlyUnwrappedKey; switch (encryptionMetadata.EncryptionAgent.EncryptionVersion) { +#pragma warning disable CS0618 // obsolete case ClientSideEncryptionVersion.V1_0: explicitlyUnwrappedKey = explicitlyUnwrappedContent; break; +#pragma warning restore CS0618 // obsolete case ClientSideEncryptionVersion.V2_0: explicitlyUnwrappedKey = new Span(explicitlyUnwrappedContent).Slice(8).ToArray(); break; @@ -246,12 +251,14 @@ public async Task UploadAsync(ClientSideEncryptionVersion version, int messageSi string expectedEncryptedMessage; switch (version) { +#pragma warning disable CS0618 // obsolete case ClientSideEncryptionVersion.V1_0: expectedEncryptedMessage = EncryptDataV1_0( message, explicitlyUnwrappedKey, encryptionMetadata.ContentEncryptionIV); break; +#pragma warning restore CS0618 // obsolete case ClientSideEncryptionVersion.V2_0: expectedEncryptedMessage = EncryptDataV2_0( message, @@ -266,6 +273,7 @@ public async Task UploadAsync(ClientSideEncryptionVersion version, int messageSi } } +#pragma warning disable CS0618 // obsolete [TestCase(ClientSideEncryptionVersion.V1_0, 16, false)] // a single cipher block [TestCase(ClientSideEncryptionVersion.V1_0, 14, false)] // a single unalligned cipher block [TestCase(ClientSideEncryptionVersion.V1_0, Constants.KB, false)] // multiple blocks @@ -274,6 +282,7 @@ public async Task UploadAsync(ClientSideEncryptionVersion version, int messageSi [TestCase(ClientSideEncryptionVersion.V2_0, Constants.KB, false)] // block is larger than max message size, just use 1KB [TestCase(ClientSideEncryptionVersion.V2_0, 0, true)] // utf8 support testing [LiveOnly] // cannot seed content encryption key +#pragma warning restore CS0618 // obsolete public async Task RoundtripAsync(ClientSideEncryptionVersion version, int messageSize, bool usePrebuiltMessage) { var message = usePrebuiltMessage @@ -324,7 +333,9 @@ public async Task Track2DownloadTrack1Blob(int messageSize, bool usePrebuiltMess var mockKey = this.GetTrackOneIKey(keyEncryptionKeyBytes, keyId).Object; var mockKeyResolver = this.GetIKeyEncryptionKeyResolver(s_cancellationToken, this.GetIKeyEncryptionKey(s_cancellationToken, keyEncryptionKeyBytes, keyId).Object).Object; +#pragma warning disable CS0618 // obsolete await using (var disposable = await GetTestEncryptedQueueAsync(new ClientSideEncryptionOptions(ClientSideEncryptionVersion.V1_0) +#pragma warning restore CS0618 // obsolete { KeyResolver = mockKeyResolver, KeyWrapAlgorithm = s_algorithmName @@ -381,7 +392,9 @@ public async Task Track1DownloadTrack2Blob(int messageSize, bool usePrebuiltMess var mockKey = this.GetIKeyEncryptionKey(s_cancellationToken, keyEncryptionKeyBytes, keyId).Object; var mockKeyResolver = this.GetTrackOneIKeyResolver(this.GetTrackOneIKey(keyEncryptionKeyBytes, keyId).Object).Object; +#pragma warning disable CS0618 // obsolete await using (var disposable = await GetTestEncryptedQueueAsync(new ClientSideEncryptionOptions(ClientSideEncryptionVersion.V1_0) +#pragma warning restore CS0618 // obsolete { KeyEncryptionKey = mockKey, KeyWrapAlgorithm = s_algorithmName @@ -410,9 +423,11 @@ public async Task Track1DownloadTrack2Blob(int messageSize, bool usePrebuiltMess } } +#pragma warning disable CS0618 // obsolete [TestCase(ClientSideEncryptionVersion.V1_0)] [TestCase(ClientSideEncryptionVersion.V2_0)] [LiveOnly] // need access to keyvault service && cannot seed content encryption key +#pragma warning restore CS0618 // obsolete public async Task RoundtripWithKeyvaultProvider(ClientSideEncryptionVersion version) { var message = GetRandomMessage(Constants.KB); @@ -445,7 +460,7 @@ public async Task ReadPlaintextMessage(string message) { var mockKey = this.GetIKeyEncryptionKey(s_cancellationToken).Object; var mockKeyResolver = this.GetIKeyEncryptionKeyResolver(s_cancellationToken, mockKey).Object; - await using (var disposable = await GetTestEncryptedQueueAsync(new ClientSideEncryptionOptions(ClientSideEncryptionVersion.V1_0) + await using (var disposable = await GetTestEncryptedQueueAsync(new ClientSideEncryptionOptions(ClientSideEncryptionVersion.V2_0) { KeyEncryptionKey = mockKey, KeyResolver = mockKeyResolver, @@ -468,9 +483,11 @@ public async Task ReadPlaintextMessage(string message) } } +#pragma warning disable CS0618 // obsolete [TestCase(ClientSideEncryptionVersion.V1_0)] [TestCase(ClientSideEncryptionVersion.V2_0)] [LiveOnly] // cannot seed content encryption key +#pragma warning restore CS0618 // obsolete public async Task OnlyOneKeyWrapCall(ClientSideEncryptionVersion version) { var message = "any old message"; @@ -499,9 +516,11 @@ public async Task OnlyOneKeyWrapCall(ClientSideEncryptionVersion version) } } +#pragma warning disable CS0618 // obsolete [TestCase(ClientSideEncryptionVersion.V1_0)] [TestCase(ClientSideEncryptionVersion.V2_0)] [LiveOnly] +#pragma warning restore CS0618 // obsolete public async Task UpdateEncryptedMessage(ClientSideEncryptionVersion version) { var message1 = GetRandomMessage(Constants.KB); @@ -548,9 +567,11 @@ public async Task UpdateEncryptedMessage(ClientSideEncryptionVersion version) } } +#pragma warning disable CS0618 // obsolete [TestCase(ClientSideEncryptionVersion.V1_0)] [TestCase(ClientSideEncryptionVersion.V2_0)] [LiveOnly] // cannot seed content encryption key +#pragma warning restore CS0618 // obsolete public async Task OnlyOneKeyResolveAndUnwrapCall(ClientSideEncryptionVersion version) { var message = "any old message"; @@ -568,7 +589,7 @@ public async Task OnlyOneKeyResolveAndUnwrapCall(ClientSideEncryptionVersion ver // replace with client that has only key resolver var options = GetOptions(); - options._clientSideEncryptionOptions = new ClientSideEncryptionOptions(ClientSideEncryptionVersion.V1_0) + options._clientSideEncryptionOptions = new ClientSideEncryptionOptions(version) { KeyEncryptionKey = default, // we want the key resolver to trigger; no cached key KeyResolver = mockKeyResolver.Object @@ -679,8 +700,10 @@ public async Task CannotFindKeyAsync( } } +#pragma warning disable CS0618 // obsolete [TestCase(ClientSideEncryptionVersion.V1_0)] [TestCase(ClientSideEncryptionVersion.V2_0)] +#pragma warning restore CS0618 // obsolete public void CanGenerateSas_WithClientSideEncryptionOptions_True(ClientSideEncryptionVersion version) { // Arrange @@ -710,8 +733,10 @@ public void CanGenerateSas_WithClientSideEncryptionOptions_True(ClientSideEncryp Assert.IsTrue(queueEncrypted.CanGenerateSasUri); } +#pragma warning disable CS0618 // obsolete [TestCase(ClientSideEncryptionVersion.V1_0)] [TestCase(ClientSideEncryptionVersion.V2_0)] +#pragma warning restore CS0618 // obsolete public void CanGenerateSas_WithClientSideEncryptionOptions_False(ClientSideEncryptionVersion version) { // Arrange diff --git a/sdk/storage/Azure.Storage.Queues/tests/EncryptedMessageSerializerTests.cs b/sdk/storage/Azure.Storage.Queues/tests/EncryptedMessageSerializerTests.cs index 6d237ad9512d1..44ed2dfedfbfc 100644 --- a/sdk/storage/Azure.Storage.Queues/tests/EncryptedMessageSerializerTests.cs +++ b/sdk/storage/Azure.Storage.Queues/tests/EncryptedMessageSerializerTests.cs @@ -20,11 +20,22 @@ namespace Azure.Storage.Queues.Test { +#pragma warning disable CS0618 // obsolete + [TestFixture(ClientSideEncryptionVersion.V1_0)] + [TestFixture(ClientSideEncryptionVersion.V2_0)] +#pragma warning restore CS0618 // obsolete public class EncryptedMessageSerializerTests // doesn't inherit our test base because there are no network tests { private const string TestMessage = "This can technically be a valid encrypted message."; private const string KeyWrapAlgorithm = "my_key_wrap_algorithm"; + private readonly ClientSideEncryptionVersion _version; + + public EncryptedMessageSerializerTests(ClientSideEncryptionVersion version) + { + _version = version; + } + private Mock GetIKeyEncryptionKey(byte[] userKeyBytes = default, string keyId = default) { if (userKeyBytes == default) @@ -68,7 +79,7 @@ private static byte[] Xor(byte[] a, byte[] b) [Test] public void SerializeEncryptedMessage() { - var result = new ClientSideEncryptorV1_0(new ClientSideEncryptionOptions(ClientSideEncryptionVersion.V1_0) + var result = new ClientSideEncryptorV1_0(new ClientSideEncryptionOptions(_version) { KeyEncryptionKey = GetIKeyEncryptionKey().Object, KeyWrapAlgorithm = KeyWrapAlgorithm @@ -90,7 +101,7 @@ public void SerializeEncryptedMessage() [Test] public void DeserializeEncryptedMessage() { - var result = new ClientSideEncryptorV1_0(new ClientSideEncryptionOptions(ClientSideEncryptionVersion.V1_0) + var result = new ClientSideEncryptorV1_0(new ClientSideEncryptionOptions(_version) { KeyEncryptionKey = GetIKeyEncryptionKey().Object, KeyWrapAlgorithm = KeyWrapAlgorithm @@ -113,7 +124,7 @@ public void DeserializeEncryptedMessage() [Test] public void TryDeserializeEncryptedMessage() { - var result = new ClientSideEncryptorV1_0(new ClientSideEncryptionOptions(ClientSideEncryptionVersion.V1_0) + var result = new ClientSideEncryptorV1_0(new ClientSideEncryptionOptions(_version) { KeyEncryptionKey = GetIKeyEncryptionKey().Object, KeyWrapAlgorithm = KeyWrapAlgorithm