diff --git a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_backup_client.py b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_backup_client.py index 39666d43dc6b..11a662764b8b 100644 --- a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_backup_client.py +++ b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/_backup_client.py @@ -93,3 +93,35 @@ def begin_selective_restore(self, blob_storage_uri, sas_token, folder_name, key_ polling=LROBasePolling(lro_algorithms=[KeyVaultBackupClientPolling()], timeout=polling_interval, **kwargs), **kwargs ) + + def get_backup_status(self, job_id, **kwargs): + # type: (str, **Any) -> BackupOperation + """Returns the status of a full backup operation. + + :param job_id: The job ID returned as part of the backup request + :type job_id: str + :return: The full backup operation status as a :class:`BackupOperation` + :rtype: BackupOperation + """ + return self._client.full_backup_status( + vault_base_url=self._vault_url, + job_id=job_id, + cls=BackupOperation._wrap_generated, + **kwargs + ) + + def get_restore_status(self, job_id, **kwargs): + # type: (str, **Any) -> RestoreOperation + """Returns the status of a restore operation. + + :param job_id: The job ID returned as part of the restore request + :type job_id: str + :return: The restore operation status as a :class:`RestoreOperation` + :rtype: RestoreOperation + """ + return self._client.restore_status( + vault_base_url=self.vault_url, + job_id=job_id, + cls=RestoreOperation._wrap_generated, + **kwargs + ) diff --git a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/aio/_backup_client.py b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/aio/_backup_client.py index b04faa321b21..16e33c8da024 100644 --- a/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/aio/_backup_client.py +++ b/sdk/keyvault/azure-keyvault-administration/azure/keyvault/administration/aio/_backup_client.py @@ -102,3 +102,35 @@ async def begin_selective_restore( ), **kwargs ) + + async def get_backup_status( + self, job_id: str, **kwargs: "Any" + ) -> "BackupOperation": + """Returns the status of a full backup operation. + + :param str job_id: The job ID returned as part of the backup request + :returns: The full backup operation status as a :class:`BackupOperation` + :rtype: BackupOperation + """ + return await self._client.full_backup_status( + vault_base_url=self._vault_url, + job_id=job_id, + cls=BackupOperation._wrap_generated, + **kwargs + ) + + async def get_restore_status( + self, job_id: str, **kwargs: "Any" + ) -> "RestoreOperation": + """Returns the status of a restore operation. + + :param str job_id: The ID returned as part of the restore request + :returns: The restore operation status as a :class:`RestoreOperation` + :rtype: RestoreOperation + """ + return await self._client.restore_status( + vault_base_url=self._vault_url, + job_id=job_id, + cls=RestoreOperation._wrap_generated, + **kwargs + ) diff --git a/sdk/keyvault/azure-keyvault-administration/tests/recordings/test_backup_client.test_full_backup_and_restore.yaml b/sdk/keyvault/azure-keyvault-administration/tests/recordings/test_backup_client.test_full_backup_and_restore.yaml index 2813fc3d642a..7c9293e6ffe1 100644 --- a/sdk/keyvault/azure-keyvault-administration/tests/recordings/test_backup_client.test_full_backup_and_restore.yaml +++ b/sdk/keyvault/azure-keyvault-administration/tests/recordings/test_backup_client.test_full_backup_and_restore.yaml @@ -13,7 +13,7 @@ interactions: Content-Type: - application/json User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: POST uri: https://managedhsm/backup?api-version=7.2-preview response: @@ -31,19 +31,19 @@ interactions: strict-transport-security: - max-age=31536000; includeSubDomains www-authenticate: - - Bearer authorization="https://login.windows-ppe.net/f686d426-8d16-42db-81b7-ab578e110ccd", - resource="https://managedhsm-int.azure-int.net" + - Bearer authorization="https://login.microsoftonline.com/72f988bf-86f1-41af-91ab-2d7cd011db47", + resource="https://managedhsm.azure.net" x-content-type-options: - nosniff x-frame-options: - SAMEORIGIN x-ms-server-latency: - - '2' + - '1' status: code: 401 message: Unauthorized - request: - body: '{"storageResourceUri": "https://storname.blob.core.windows.net/containerlpibiggddqawmbw", + body: '{"storageResourceUri": "https://storname.blob.core.windows.net/containertzdnut7zi4qw3kp", "token": "redacted"}' headers: Accept: @@ -57,15 +57,15 @@ interactions: Content-Type: - application/json User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: POST uri: https://managedhsm/backup?api-version=7.2-preview response: body: - string: '{"status":"InProgress","statusDetails":null,"error":{"code":null,"message":null,"innererror":null},"startTime":1599693259,"endTime":null,"jobId":"0c6890ada4cf411987b1c8fff2e8d20f","azureStorageBlobContainerUri":null}' + string: '{"status":"InProgress","statusDetails":null,"error":{"code":null,"message":null,"innererror":null},"startTime":1601598856,"endTime":null,"jobId":"9f79064b49724b1c9896ebcd5222477d","azureStorageBlobContainerUri":null}' headers: azure-asyncoperation: - - https://managedhsm/backup/0c6890ada4cf411987b1c8fff2e8d20f/pending + - https://managedhsm/backup/9f79064b49724b1c9896ebcd5222477d/pending cache-control: - no-cache content-length: @@ -75,7 +75,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Wed, 09 Sep 2020 23:14:19 GMT + - Fri, 02 Oct 2020 00:34:16 GMT server: - Kestrel strict-transport-security: @@ -85,14 +85,60 @@ interactions: x-frame-options: - SAMEORIGIN x-ms-keyvault-network-info: - - addr=24.17.201.78 + - addr=162.211.216.102 x-ms-keyvault-region: - - EASTUS + - eastus2 x-ms-server-latency: - - '962' + - '2444' status: code: 202 message: '' +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) + method: GET + uri: https://managedhsm/backup/9f79064b49724b1c9896ebcd5222477d/pending?api-version=7.2-preview + response: + body: + string: '{"azureStorageBlobContainerUri":null,"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"9f79064b49724b1c9896ebcd5222477d","startTime":1601598856,"status":"InProgress","statusDetails":null}' + headers: + cache-control: + - no-cache + content-length: + - '216' + content-security-policy: + - default-src 'self' + content-type: + - application/json; charset=utf-8 + date: + - Fri, 02 Oct 2020 00:34:17 GMT + server: + - Kestrel + strict-transport-security: + - max-age=31536000; includeSubDomains + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-ms-build-version: + - 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: + - addr=162.211.216.102 + x-ms-keyvault-region: + - eastus2 + x-ms-server-latency: + - '1117' + status: + code: 200 + message: OK - request: body: null headers: @@ -103,23 +149,23 @@ interactions: Connection: - keep-alive User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: GET - uri: https://managedhsm/backup/0c6890ada4cf411987b1c8fff2e8d20f/pending + uri: https://managedhsm/backup/9f79064b49724b1c9896ebcd5222477d/pending response: body: - string: '{"azureStorageBlobContainerUri":"https://storname.blob.core.windows.net/containerlpibiggddqawmbw/mhsm-chriss-eu2-2020090923141950","endTime":1599693269,"error":null,"jobId":"0c6890ada4cf411987b1c8fff2e8d20f","startTime":1599693259,"status":"Succeeded","statusDetails":null}' + string: '{"azureStorageBlobContainerUri":"https://storname.blob.core.windows.net/containertzdnut7zi4qw3kp/mhsm-chlowehsm-2020100200341740","endTime":1601598867,"error":null,"jobId":"9f79064b49724b1c9896ebcd5222477d","startTime":1601598856,"status":"Succeeded","statusDetails":null}' headers: cache-control: - no-cache content-length: - - '289' + - '288' content-security-policy: - default-src 'self' content-type: - application/json; charset=utf-8 date: - - Wed, 09 Sep 2020 23:14:29 GMT + - Fri, 02 Oct 2020 00:34:27 GMT server: - Kestrel strict-transport-security: @@ -129,19 +175,65 @@ interactions: x-frame-options: - SAMEORIGIN x-ms-build-version: - - 1.0.20200909-2-c73be597-develop + - 1.0.20200917-2-1617fc9c-develop x-ms-keyvault-network-info: - - addr=24.17.201.78 + - addr=162.211.216.102 x-ms-keyvault-region: - - EASTUS + - eastus2 x-ms-server-latency: - - '599' + - '1084' status: code: 200 message: OK - request: - body: '{"folderToRestore": "mhsm-chriss-eu2-2020090923141950", "sasTokenParameters": - {"storageResourceUri": "https://storname.blob.core.windows.net/containerlpibiggddqawmbw", + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) + method: GET + uri: https://managedhsm/backup/9f79064b49724b1c9896ebcd5222477d/pending?api-version=7.2-preview + response: + body: + string: '{"azureStorageBlobContainerUri":"https://storname.blob.core.windows.net/containertzdnut7zi4qw3kp/mhsm-chlowehsm-2020100200341740","endTime":1601598867,"error":null,"jobId":"9f79064b49724b1c9896ebcd5222477d","startTime":1601598856,"status":"Succeeded","statusDetails":null}' + headers: + cache-control: + - no-cache + content-length: + - '288' + content-security-policy: + - default-src 'self' + content-type: + - application/json; charset=utf-8 + date: + - Fri, 02 Oct 2020 00:34:28 GMT + server: + - Kestrel + strict-transport-security: + - max-age=31536000; includeSubDomains + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-ms-build-version: + - 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: + - addr=162.211.216.102 + x-ms-keyvault-region: + - eastus2 + x-ms-server-latency: + - '515' + status: + code: 200 + message: OK +- request: + body: '{"folderToRestore": "mhsm-chlowehsm-2020100200341740", "sasTokenParameters": + {"storageResourceUri": "https://storname.blob.core.windows.net/containertzdnut7zi4qw3kp", "token": "redacted"}}' headers: Accept: @@ -151,19 +243,19 @@ interactions: Connection: - keep-alive Content-Length: - - '314' + - '313' Content-Type: - application/json User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: PUT uri: https://managedhsm/restore?api-version=7.2-preview response: body: - string: '{"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"f45c5ed12efc498990690cc92ed43684","startTime":1599693271,"status":"InProgress","statusDetails":null}' + string: '{"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"08089b7944ef471ca45e77921ff1f5df","startTime":1601598870,"status":"InProgress","statusDetails":null}' headers: azure-asyncoperation: - - https://managedhsm/restore/f45c5ed12efc498990690cc92ed43684/pending + - https://managedhsm/restore/08089b7944ef471ca45e77921ff1f5df/pending cache-control: - no-cache content-length: @@ -173,7 +265,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Wed, 09 Sep 2020 23:14:30 GMT + - Fri, 02 Oct 2020 00:34:29 GMT server: - Kestrel strict-transport-security: @@ -183,14 +275,106 @@ interactions: x-frame-options: - SAMEORIGIN x-ms-keyvault-network-info: - - addr=24.17.201.78 + - addr=162.211.216.102 x-ms-keyvault-region: - - EASTUS + - eastus2 x-ms-server-latency: - - '812' + - '1388' status: code: 202 message: '' +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) + method: GET + uri: https://managedhsm/restore/08089b7944ef471ca45e77921ff1f5df/pending?api-version=7.2-preview + response: + body: + string: '{"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"08089b7944ef471ca45e77921ff1f5df","startTime":1601598870,"status":"InProgress","statusDetails":null}' + headers: + cache-control: + - no-cache + content-length: + - '180' + content-security-policy: + - default-src 'self' + content-type: + - application/json; charset=utf-8 + date: + - Fri, 02 Oct 2020 00:34:30 GMT + server: + - Kestrel + strict-transport-security: + - max-age=31536000; includeSubDomains + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-ms-build-version: + - 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: + - addr=162.211.216.102 + x-ms-keyvault-region: + - eastus2 + x-ms-server-latency: + - '985' + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) + method: GET + uri: https://managedhsm/restore/08089b7944ef471ca45e77921ff1f5df/pending + response: + body: + string: '{"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"08089b7944ef471ca45e77921ff1f5df","startTime":1601598870,"status":"InProgress","statusDetails":null}' + headers: + cache-control: + - no-cache + content-length: + - '180' + content-security-policy: + - default-src 'self' + content-type: + - application/json; charset=utf-8 + date: + - Fri, 02 Oct 2020 00:34:40 GMT + server: + - Kestrel + strict-transport-security: + - max-age=31536000; includeSubDomains + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-ms-build-version: + - 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: + - addr=162.211.216.102 + x-ms-keyvault-region: + - eastus2 + x-ms-server-latency: + - '497' + status: + code: 200 + message: OK - request: body: null headers: @@ -201,12 +385,12 @@ interactions: Connection: - keep-alive User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: GET - uri: https://managedhsm/restore/f45c5ed12efc498990690cc92ed43684/pending + uri: https://managedhsm/restore/08089b7944ef471ca45e77921ff1f5df/pending response: body: - string: '{"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"f45c5ed12efc498990690cc92ed43684","startTime":1599693271,"status":"InProgress","statusDetails":null}' + string: '{"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"08089b7944ef471ca45e77921ff1f5df","startTime":1601598870,"status":"InProgress","statusDetails":null}' headers: cache-control: - no-cache @@ -217,7 +401,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Wed, 09 Sep 2020 23:14:42 GMT + - Fri, 02 Oct 2020 00:34:45 GMT server: - Kestrel strict-transport-security: @@ -227,13 +411,13 @@ interactions: x-frame-options: - SAMEORIGIN x-ms-build-version: - - 1.0.20200909-2-c73be597-develop + - 1.0.20200917-2-1617fc9c-develop x-ms-keyvault-network-info: - - addr=24.17.201.78 + - addr=162.211.216.102 x-ms-keyvault-region: - - EASTUS + - eastus2 x-ms-server-latency: - - '534' + - '506' status: code: 200 message: OK @@ -247,12 +431,58 @@ interactions: Connection: - keep-alive User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) + method: GET + uri: https://managedhsm/restore/08089b7944ef471ca45e77921ff1f5df/pending + response: + body: + string: '{"endTime":1601598887,"error":null,"jobId":"08089b7944ef471ca45e77921ff1f5df","startTime":1601598870,"status":"Succeeded","statusDetails":null}' + headers: + cache-control: + - no-cache + content-length: + - '143' + content-security-policy: + - default-src 'self' + content-type: + - application/json; charset=utf-8 + date: + - Fri, 02 Oct 2020 00:34:51 GMT + server: + - Kestrel + strict-transport-security: + - max-age=31536000; includeSubDomains + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-ms-build-version: + - 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: + - addr=162.211.216.102 + x-ms-keyvault-region: + - eastus2 + x-ms-server-latency: + - '472' + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: GET - uri: https://managedhsm/restore/f45c5ed12efc498990690cc92ed43684/pending + uri: https://managedhsm/restore/08089b7944ef471ca45e77921ff1f5df/pending?api-version=7.2-preview response: body: - string: '{"endTime":1599693288,"error":null,"jobId":"f45c5ed12efc498990690cc92ed43684","startTime":1599693271,"status":"Succeeded","statusDetails":null}' + string: '{"endTime":1601598887,"error":null,"jobId":"08089b7944ef471ca45e77921ff1f5df","startTime":1601598870,"status":"Succeeded","statusDetails":null}' headers: cache-control: - no-cache @@ -263,7 +493,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Wed, 09 Sep 2020 23:14:50 GMT + - Fri, 02 Oct 2020 00:34:52 GMT server: - Kestrel strict-transport-security: @@ -273,13 +503,13 @@ interactions: x-frame-options: - SAMEORIGIN x-ms-build-version: - - 1.0.20200909-2-c73be597-develop + - 1.0.20200917-2-1617fc9c-develop x-ms-keyvault-network-info: - - addr=24.17.201.78 + - addr=162.211.216.102 x-ms-keyvault-region: - - EASTUS + - eastus2 x-ms-server-latency: - - '656' + - '487' status: code: 200 message: OK diff --git a/sdk/keyvault/azure-keyvault-administration/tests/recordings/test_backup_client.test_selective_key_restore.yaml b/sdk/keyvault/azure-keyvault-administration/tests/recordings/test_backup_client.test_selective_key_restore.yaml index 955f4233ba3b..aa14d58a5303 100644 --- a/sdk/keyvault/azure-keyvault-administration/tests/recordings/test_backup_client.test_selective_key_restore.yaml +++ b/sdk/keyvault/azure-keyvault-administration/tests/recordings/test_backup_client.test_selective_key_restore.yaml @@ -13,7 +13,7 @@ interactions: Content-Type: - application/json User-Agent: - - azsdk-python-keyvault-keys/4.2.1 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-keys/4.2.1 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: POST uri: https://managedhsm/keys/selective-restore-test-keya85a1290/create?api-version=7.1 response: @@ -31,8 +31,8 @@ interactions: strict-transport-security: - max-age=31536000; includeSubDomains www-authenticate: - - Bearer authorization="https://login.windows-ppe.net/f686d426-8d16-42db-81b7-ab578e110ccd", - resource="https://managedhsm-int.azure-int.net" + - Bearer authorization="https://login.microsoftonline.com/72f988bf-86f1-41af-91ab-2d7cd011db47", + resource="https://managedhsm.azure.net" x-content-type-options: - nosniff x-frame-options: @@ -56,17 +56,17 @@ interactions: Content-Type: - application/json User-Agent: - - azsdk-python-keyvault-keys/4.2.1 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-keys/4.2.1 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: POST uri: https://managedhsm/keys/selective-restore-test-keya85a1290/create?api-version=7.1 response: body: - string: '{"attributes":{"created":1599693317,"enabled":true,"exportable":false,"recoverableDays":7,"recoveryLevel":"CustomizedRecoverable+Purgeable","updated":1599693317},"key":{"e":"AQAB","key_ops":["wrapKey","decrypt","encrypt","unwrapKey","sign","verify"],"kid":"https://managedhsm/keys/selective-restore-test-keya85a1290/012b1544acb10c63b57eb1d95ebcf9c6","kty":"RSA-HSM","n":"i6Kf3a2-Jfv9735-DX9cAOONQ7OtSaKwgx84JgRs0wZFcfe1cIw7nyPnsZtHb5TJfp5oTXDj7_EZWUYIyUhwHEKpLSKK_nlAx1Y1izm_3_01nhGLtLMERg0GGQJlYCO7G8IGIKJ2XkC1EItj_LV1BNF3qozJziVOtYdycHckUpzwD5ij-VVegxwF9KeaMO8wmzVMgxyVDWctQVjuwB0-lbnZr_aJj9uo1ntEyNbpkiuxe6scJqKL3c8siu1gAeZ7K7Z0r8TEWYFEispB3NnX63AFkpMhRF8XjD4HyhTMMIU7JiBR-0h1CXrCaRb7Ys7Hpq1E5jcvdpspCbN94B3f1Q"}}' + string: '{"attributes":{"created":1601598917,"enabled":true,"exportable":false,"recoverableDays":90,"recoveryLevel":"Recoverable+Purgeable","updated":1601598917},"key":{"e":"AQAB","key_ops":["wrapKey","decrypt","encrypt","unwrapKey","sign","verify"],"kid":"https://managedhsm/keys/selective-restore-test-keya85a1290/aae82599cd7e46d995eaad3bb5a2e97b","kty":"RSA-HSM","n":"mUkI6IIEBBybDG2b-6_ohxZbYhCAsCoJy7Hd0j_8hsLR1QezRexuNXZXFWonjKCGJDjGE7SXgGqQB56B2mpME439HjywIN9nsGr1iwS0lyHtS8dgXVo1GROZg9HOazz4Gzq11Qp7v8zbwC4S8Zl7ifqB_D2U__AdI5AGRIGWHT5rpxtQeUGw9Tbo1qVV09ihFmOaI1Gl21Ufa4ynpEAHyyj_PkPC1ccfqZ70yihLG8iHzYQULv5jU2eQPO_oaD1YfBhOMSj0Jp1nAqVF-et1bRCcyTOhD2_QWUlLRKE99IWIlbENTIWoqITrwbg95z3qVw4un3YTYtzdbntreNK4ZQ"}}' headers: cache-control: - no-cache content-length: - - '753' + - '727' content-security-policy: - default-src 'self' content-type: @@ -78,16 +78,16 @@ interactions: x-frame-options: - SAMEORIGIN x-ms-keyvault-network-info: - - addr=24.17.201.78 + - addr=162.211.216.102 x-ms-keyvault-region: - - EASTUS + - eastus2 x-ms-server-latency: - - '713' + - '257' status: code: 200 message: OK - request: - body: '{"storageResourceUri": "https://storname.blob.core.windows.net/containerr5j67u54ef7gqx7", + body: '{"storageResourceUri": "https://storname.blob.core.windows.net/containerzychvl7fcjxrfa4", "token": "redacted"}' headers: Accept: @@ -97,19 +97,19 @@ interactions: Connection: - keep-alive Content-Length: - - '233' + - '235' Content-Type: - application/json User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: POST uri: https://managedhsm/backup?api-version=7.2-preview response: body: - string: '{"status":"InProgress","statusDetails":null,"error":{"code":null,"message":null,"innererror":null},"startTime":1599693320,"endTime":null,"jobId":"7161b3a9af704527b36d5a94c34d435c","azureStorageBlobContainerUri":null}' + string: '{"status":"InProgress","statusDetails":null,"error":{"code":null,"message":null,"innererror":null},"startTime":1601598919,"endTime":null,"jobId":"90c79f44687046f9a9b8ef37d1f40455","azureStorageBlobContainerUri":null}' headers: azure-asyncoperation: - - https://managedhsm/backup/7161b3a9af704527b36d5a94c34d435c/pending + - https://managedhsm/backup/90c79f44687046f9a9b8ef37d1f40455/pending cache-control: - no-cache content-length: @@ -119,7 +119,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Wed, 09 Sep 2020 23:15:20 GMT + - Fri, 02 Oct 2020 00:35:19 GMT server: - Kestrel strict-transport-security: @@ -129,14 +129,60 @@ interactions: x-frame-options: - SAMEORIGIN x-ms-keyvault-network-info: - - addr=24.17.201.78 + - addr=162.211.216.102 x-ms-keyvault-region: - - EASTUS + - eastus2 x-ms-server-latency: - - '878' + - '1753' status: code: 202 message: '' +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) + method: GET + uri: https://managedhsm/backup/90c79f44687046f9a9b8ef37d1f40455/pending?api-version=7.2-preview + response: + body: + string: '{"azureStorageBlobContainerUri":null,"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"90c79f44687046f9a9b8ef37d1f40455","startTime":1601598919,"status":"InProgress","statusDetails":null}' + headers: + cache-control: + - no-cache + content-length: + - '216' + content-security-policy: + - default-src 'self' + content-type: + - application/json; charset=utf-8 + date: + - Fri, 02 Oct 2020 00:35:21 GMT + server: + - Kestrel + strict-transport-security: + - max-age=31536000; includeSubDomains + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-ms-build-version: + - 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: + - addr=162.211.216.102 + x-ms-keyvault-region: + - eastus2 + x-ms-server-latency: + - '1233' + status: + code: 200 + message: OK - request: body: null headers: @@ -147,23 +193,23 @@ interactions: Connection: - keep-alive User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: GET - uri: https://managedhsm/backup/7161b3a9af704527b36d5a94c34d435c/pending + uri: https://managedhsm/backup/90c79f44687046f9a9b8ef37d1f40455/pending response: body: - string: '{"azureStorageBlobContainerUri":"https://storname.blob.core.windows.net/containerr5j67u54ef7gqx7/mhsm-chriss-eu2-2020090923152045","endTime":1599693331,"error":null,"jobId":"7161b3a9af704527b36d5a94c34d435c","startTime":1599693320,"status":"Succeeded","statusDetails":null}' + string: '{"azureStorageBlobContainerUri":"https://storname.blob.core.windows.net/containerzychvl7fcjxrfa4/mhsm-chlowehsm-2020100200352018","endTime":1601598929,"error":null,"jobId":"90c79f44687046f9a9b8ef37d1f40455","startTime":1601598919,"status":"Succeeded","statusDetails":null}' headers: cache-control: - no-cache content-length: - - '289' + - '288' content-security-policy: - default-src 'self' content-type: - application/json; charset=utf-8 date: - - Wed, 09 Sep 2020 23:15:30 GMT + - Fri, 02 Oct 2020 00:35:31 GMT server: - Kestrel strict-transport-security: @@ -173,20 +219,65 @@ interactions: x-frame-options: - SAMEORIGIN x-ms-build-version: - - 1.0.20200909-2-c73be597-develop + - 1.0.20200917-2-1617fc9c-develop x-ms-keyvault-network-info: - - addr=24.17.201.78 + - addr=162.211.216.102 x-ms-keyvault-region: - - EASTUS + - eastus2 x-ms-server-latency: - - '632' + - '776' status: code: 200 message: OK - request: - body: '{"folder": "mhsm-chriss-eu2-2020090923152045", "sasTokenParameters": {"storageResourceUri": - "https://storname.blob.core.windows.net/containerr5j67u54ef7gqx7", "token": - "redacted"}}' + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) + method: GET + uri: https://managedhsm/backup/90c79f44687046f9a9b8ef37d1f40455/pending?api-version=7.2-preview + response: + body: + string: '{"azureStorageBlobContainerUri":"https://storname.blob.core.windows.net/containerzychvl7fcjxrfa4/mhsm-chlowehsm-2020100200352018","endTime":1601598929,"error":null,"jobId":"90c79f44687046f9a9b8ef37d1f40455","startTime":1601598919,"status":"Succeeded","statusDetails":null}' + headers: + cache-control: + - no-cache + content-length: + - '288' + content-security-policy: + - default-src 'self' + content-type: + - application/json; charset=utf-8 + date: + - Fri, 02 Oct 2020 00:35:31 GMT + server: + - Kestrel + strict-transport-security: + - max-age=31536000; includeSubDomains + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-ms-build-version: + - 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: + - addr=162.211.216.102 + x-ms-keyvault-region: + - eastus2 + x-ms-server-latency: + - '906' + status: + code: 200 + message: OK +- request: + body: '{"sasTokenParameters": {"storageResourceUri": "https://storname.blob.core.windows.net/containerzychvl7fcjxrfa4", + "token": "redacted"}, "folder": "mhsm-chlowehsm-2020100200352018"}' headers: Accept: - application/json @@ -195,19 +286,19 @@ interactions: Connection: - keep-alive Content-Length: - - '303' + - '304' Content-Type: - application/json User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: PUT uri: https://managedhsm/keys/selective-restore-test-keya85a1290/restore?api-version=7.2-preview response: body: - string: '{"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"a364959910264ceb91edb1df21290d87","startTime":1599693332,"status":"InProgress","statusDetails":null}' + string: '{"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"adb460788bad4654baa745e1268ddf37","startTime":1601598932,"status":"InProgress","statusDetails":null}' headers: azure-asyncoperation: - - https://managedhsm/restore/a364959910264ceb91edb1df21290d87/pending + - https://managedhsm/restore/adb460788bad4654baa745e1268ddf37/pending cache-control: - no-cache content-length: @@ -217,7 +308,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Wed, 09 Sep 2020 23:15:32 GMT + - Fri, 02 Oct 2020 00:35:32 GMT server: - Kestrel strict-transport-security: @@ -227,14 +318,60 @@ interactions: x-frame-options: - SAMEORIGIN x-ms-keyvault-network-info: - - addr=24.17.201.78 + - addr=162.211.216.102 x-ms-keyvault-region: - - EASTUS + - eastus2 x-ms-server-latency: - - '853' + - '1194' status: code: 202 message: '' +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) + method: GET + uri: https://managedhsm/restore/adb460788bad4654baa745e1268ddf37/pending?api-version=7.2-preview + response: + body: + string: '{"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"adb460788bad4654baa745e1268ddf37","startTime":1601598932,"status":"InProgress","statusDetails":null}' + headers: + cache-control: + - no-cache + content-length: + - '180' + content-security-policy: + - default-src 'self' + content-type: + - application/json; charset=utf-8 + date: + - Fri, 02 Oct 2020 00:35:33 GMT + server: + - Kestrel + strict-transport-security: + - max-age=31536000; includeSubDomains + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-ms-build-version: + - 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: + - addr=162.211.216.102 + x-ms-keyvault-region: + - eastus2 + x-ms-server-latency: + - '671' + status: + code: 200 + message: OK - request: body: null headers: @@ -245,12 +382,12 @@ interactions: Connection: - keep-alive User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: GET - uri: https://managedhsm/restore/a364959910264ceb91edb1df21290d87/pending + uri: https://managedhsm/restore/adb460788bad4654baa745e1268ddf37/pending response: body: - string: '{"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"a364959910264ceb91edb1df21290d87","startTime":1599693332,"status":"InProgress","statusDetails":null}' + string: '{"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"adb460788bad4654baa745e1268ddf37","startTime":1601598932,"status":"InProgress","statusDetails":null}' headers: cache-control: - no-cache @@ -261,7 +398,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Wed, 09 Sep 2020 23:15:43 GMT + - Fri, 02 Oct 2020 00:35:44 GMT server: - Kestrel strict-transport-security: @@ -271,13 +408,13 @@ interactions: x-frame-options: - SAMEORIGIN x-ms-build-version: - - 1.0.20200909-2-c73be597-develop + - 1.0.20200917-2-1617fc9c-develop x-ms-keyvault-network-info: - - addr=24.17.201.78 + - addr=162.211.216.102 x-ms-keyvault-region: - - EASTUS + - eastus2 x-ms-server-latency: - - '654' + - '527' status: code: 200 message: OK @@ -291,12 +428,12 @@ interactions: Connection: - keep-alive User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: GET - uri: https://managedhsm/restore/a364959910264ceb91edb1df21290d87/pending + uri: https://managedhsm/restore/adb460788bad4654baa745e1268ddf37/pending response: body: - string: '{"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"a364959910264ceb91edb1df21290d87","startTime":1599693332,"status":"InProgress","statusDetails":null}' + string: '{"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"adb460788bad4654baa745e1268ddf37","startTime":1601598932,"status":"InProgress","statusDetails":null}' headers: cache-control: - no-cache @@ -307,7 +444,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Wed, 09 Sep 2020 23:15:49 GMT + - Fri, 02 Oct 2020 00:35:48 GMT server: - Kestrel strict-transport-security: @@ -317,13 +454,13 @@ interactions: x-frame-options: - SAMEORIGIN x-ms-build-version: - - 1.0.20200909-2-c73be597-develop + - 1.0.20200917-2-1617fc9c-develop x-ms-keyvault-network-info: - - addr=24.17.201.78 + - addr=162.211.216.102 x-ms-keyvault-region: - - EASTUS + - eastus2 x-ms-server-latency: - - '610' + - '501' status: code: 200 message: OK @@ -337,12 +474,60 @@ interactions: Connection: - keep-alive User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) + method: GET + uri: https://managedhsm/restore/adb460788bad4654baa745e1268ddf37/pending + response: + body: + string: '{"endTime":1601598949,"error":null,"jobId":"adb460788bad4654baa745e1268ddf37","startTime":1601598932,"status":"Succeeded","statusDetails":"Number + of successful key versions restored: 0, Number of key versions could not overwrite: + 2"}' + headers: + cache-control: + - no-cache + content-length: + - '233' + content-security-policy: + - default-src 'self' + content-type: + - application/json; charset=utf-8 + date: + - Fri, 02 Oct 2020 00:35:55 GMT + server: + - Kestrel + strict-transport-security: + - max-age=31536000; includeSubDomains + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-ms-build-version: + - 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: + - addr=162.211.216.102 + x-ms-keyvault-region: + - eastus2 + x-ms-server-latency: + - '473' + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: GET - uri: https://managedhsm/restore/a364959910264ceb91edb1df21290d87/pending + uri: https://managedhsm/restore/adb460788bad4654baa745e1268ddf37/pending?api-version=7.2-preview response: body: - string: '{"endTime":1599693349,"error":null,"jobId":"a364959910264ceb91edb1df21290d87","startTime":1599693332,"status":"Succeeded","statusDetails":"Number + string: '{"endTime":1601598949,"error":null,"jobId":"adb460788bad4654baa745e1268ddf37","startTime":1601598932,"status":"Succeeded","statusDetails":"Number of successful key versions restored: 0, Number of key versions could not overwrite: 2"}' headers: @@ -355,7 +540,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Wed, 09 Sep 2020 23:15:54 GMT + - Fri, 02 Oct 2020 00:35:55 GMT server: - Kestrel strict-transport-security: @@ -365,13 +550,13 @@ interactions: x-frame-options: - SAMEORIGIN x-ms-build-version: - - 1.0.20200909-2-c73be597-develop + - 1.0.20200917-2-1617fc9c-develop x-ms-keyvault-network-info: - - addr=24.17.201.78 + - addr=162.211.216.102 x-ms-keyvault-region: - - EASTUS + - eastus2 x-ms-server-latency: - - '616' + - '484' status: code: 200 message: OK @@ -387,17 +572,17 @@ interactions: Content-Length: - '0' User-Agent: - - azsdk-python-keyvault-keys/4.2.1 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-keys/4.2.1 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: DELETE uri: https://managedhsm/keys/selective-restore-test-keya85a1290?api-version=7.1 response: body: - string: '{"attributes":{"created":1599693317,"enabled":true,"exportable":false,"recoverableDays":7,"recoveryLevel":"CustomizedRecoverable+Purgeable","updated":1599693317},"deletedDate":1599693356,"key":{"e":"AQAB","key_ops":["wrapKey","verify","sign","unwrapKey","decrypt","encrypt"],"kid":"https://managedhsm/keys/selective-restore-test-keya85a1290/012b1544acb10c63b57eb1d95ebcf9c6","kty":"RSA-HSM","n":"i6Kf3a2-Jfv9735-DX9cAOONQ7OtSaKwgx84JgRs0wZFcfe1cIw7nyPnsZtHb5TJfp5oTXDj7_EZWUYIyUhwHEKpLSKK_nlAx1Y1izm_3_01nhGLtLMERg0GGQJlYCO7G8IGIKJ2XkC1EItj_LV1BNF3qozJziVOtYdycHckUpzwD5ij-VVegxwF9KeaMO8wmzVMgxyVDWctQVjuwB0-lbnZr_aJj9uo1ntEyNbpkiuxe6scJqKL3c8siu1gAeZ7K7Z0r8TEWYFEispB3NnX63AFkpMhRF8XjD4HyhTMMIU7JiBR-0h1CXrCaRb7Ys7Hpq1E5jcvdpspCbN94B3f1Q"},"recoveryId":"https://managedhsm/deletedkeys/selective-restore-test-keya85a1290","scheduledPurgeDate":1600298156}' + string: '{"attributes":{"created":1601598917,"enabled":true,"exportable":false,"recoverableDays":90,"recoveryLevel":"Recoverable+Purgeable","updated":1601598917},"deletedDate":1601598956,"key":{"e":"AQAB","key_ops":["wrapKey","verify","sign","unwrapKey","decrypt","encrypt"],"kid":"https://managedhsm/keys/selective-restore-test-keya85a1290/aae82599cd7e46d995eaad3bb5a2e97b","kty":"RSA-HSM","n":"mUkI6IIEBBybDG2b-6_ohxZbYhCAsCoJy7Hd0j_8hsLR1QezRexuNXZXFWonjKCGJDjGE7SXgGqQB56B2mpME439HjywIN9nsGr1iwS0lyHtS8dgXVo1GROZg9HOazz4Gzq11Qp7v8zbwC4S8Zl7ifqB_D2U__AdI5AGRIGWHT5rpxtQeUGw9Tbo1qVV09ihFmOaI1Gl21Ufa4ynpEAHyyj_PkPC1ccfqZ70yihLG8iHzYQULv5jU2eQPO_oaD1YfBhOMSj0Jp1nAqVF-et1bRCcyTOhD2_QWUlLRKE99IWIlbENTIWoqITrwbg95z3qVw4un3YTYtzdbntreNK4ZQ"},"recoveryId":"https://managedhsm/deletedkeys/selective-restore-test-keya85a1290","scheduledPurgeDate":1609374956}' headers: cache-control: - no-cache content-length: - - '928' + - '885' content-security-policy: - default-src 'self' content-type: @@ -409,11 +594,11 @@ interactions: x-frame-options: - SAMEORIGIN x-ms-keyvault-network-info: - - addr=24.17.201.78 + - addr=162.211.216.102 x-ms-keyvault-region: - - EASTUS + - eastus2 x-ms-server-latency: - - '485' + - '183' status: code: 200 message: OK @@ -427,17 +612,17 @@ interactions: Connection: - keep-alive User-Agent: - - azsdk-python-keyvault-keys/4.2.1 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-keys/4.2.1 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: GET uri: https://managedhsm/deletedkeys/selective-restore-test-keya85a1290?api-version=7.1 response: body: - string: '{"attributes":{"created":1599693317,"enabled":true,"exportable":false,"recoverableDays":7,"recoveryLevel":"CustomizedRecoverable+Purgeable","updated":1599693317},"deletedDate":1599693356,"key":{"e":"AQAB","key_ops":["encrypt","decrypt","unwrapKey","sign","verify","wrapKey"],"kid":"https://managedhsm/keys/selective-restore-test-keya85a1290/012b1544acb10c63b57eb1d95ebcf9c6","kty":"RSA-HSM","n":"i6Kf3a2-Jfv9735-DX9cAOONQ7OtSaKwgx84JgRs0wZFcfe1cIw7nyPnsZtHb5TJfp5oTXDj7_EZWUYIyUhwHEKpLSKK_nlAx1Y1izm_3_01nhGLtLMERg0GGQJlYCO7G8IGIKJ2XkC1EItj_LV1BNF3qozJziVOtYdycHckUpzwD5ij-VVegxwF9KeaMO8wmzVMgxyVDWctQVjuwB0-lbnZr_aJj9uo1ntEyNbpkiuxe6scJqKL3c8siu1gAeZ7K7Z0r8TEWYFEispB3NnX63AFkpMhRF8XjD4HyhTMMIU7JiBR-0h1CXrCaRb7Ys7Hpq1E5jcvdpspCbN94B3f1Q"},"recoveryId":"https://managedhsm/deletedkeys/selective-restore-test-keya85a1290","scheduledPurgeDate":1600298156}' + string: '{"attributes":{"created":1601598917,"enabled":true,"exportable":false,"recoverableDays":90,"recoveryLevel":"Recoverable+Purgeable","updated":1601598917},"deletedDate":1601598956,"key":{"e":"AQAB","key_ops":["encrypt","decrypt","unwrapKey","sign","verify","wrapKey"],"kid":"https://managedhsm/keys/selective-restore-test-keya85a1290/aae82599cd7e46d995eaad3bb5a2e97b","kty":"RSA-HSM","n":"mUkI6IIEBBybDG2b-6_ohxZbYhCAsCoJy7Hd0j_8hsLR1QezRexuNXZXFWonjKCGJDjGE7SXgGqQB56B2mpME439HjywIN9nsGr1iwS0lyHtS8dgXVo1GROZg9HOazz4Gzq11Qp7v8zbwC4S8Zl7ifqB_D2U__AdI5AGRIGWHT5rpxtQeUGw9Tbo1qVV09ihFmOaI1Gl21Ufa4ynpEAHyyj_PkPC1ccfqZ70yihLG8iHzYQULv5jU2eQPO_oaD1YfBhOMSj0Jp1nAqVF-et1bRCcyTOhD2_QWUlLRKE99IWIlbENTIWoqITrwbg95z3qVw4un3YTYtzdbntreNK4ZQ"},"recoveryId":"https://managedhsm/deletedkeys/selective-restore-test-keya85a1290","scheduledPurgeDate":1609374956}' headers: cache-control: - no-cache content-length: - - '928' + - '885' content-security-policy: - default-src 'self' content-type: @@ -449,13 +634,13 @@ interactions: x-frame-options: - SAMEORIGIN x-ms-build-version: - - 1.0.20200909-2-c73be597-develop + - 1.0.20200917-2-1617fc9c-develop x-ms-keyvault-network-info: - - addr=24.17.201.78 + - addr=162.211.216.102 x-ms-keyvault-region: - - EASTUS + - eastus2 x-ms-server-latency: - - '183' + - '69' status: code: 200 message: OK @@ -471,7 +656,7 @@ interactions: Content-Length: - '0' User-Agent: - - azsdk-python-keyvault-keys/4.2.1 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-keys/4.2.1 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: DELETE uri: https://managedhsm/deletedkeys/selective-restore-test-keya85a1290?api-version=7.1 response: @@ -493,11 +678,11 @@ interactions: x-frame-options: - SAMEORIGIN x-ms-keyvault-network-info: - - addr=24.17.201.78 + - addr=162.211.216.102 x-ms-keyvault-region: - - EASTUS + - eastus2 x-ms-server-latency: - - '506' + - '280' status: code: 204 message: '' diff --git a/sdk/keyvault/azure-keyvault-administration/tests/recordings/test_backup_client_async.test_full_backup_and_restore.yaml b/sdk/keyvault/azure-keyvault-administration/tests/recordings/test_backup_client_async.test_full_backup_and_restore.yaml index a89f1a466194..761f35debf21 100644 --- a/sdk/keyvault/azure-keyvault-administration/tests/recordings/test_backup_client_async.test_full_backup_and_restore.yaml +++ b/sdk/keyvault/azure-keyvault-administration/tests/recordings/test_backup_client_async.test_full_backup_and_restore.yaml @@ -9,7 +9,7 @@ interactions: Content-Type: - application/json User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: POST uri: https://managedhsm/backup?api-version=7.2-preview response: @@ -21,166 +21,288 @@ interactions: content-security-policy: default-src 'self' content-type: application/json; charset=utf-8 strict-transport-security: max-age=31536000; includeSubDomains - www-authenticate: Bearer authorization="https://login.windows-ppe.net/f686d426-8d16-42db-81b7-ab578e110ccd", - resource="https://managedhsm-int.azure-int.net" + www-authenticate: Bearer authorization="https://login.microsoftonline.com/72f988bf-86f1-41af-91ab-2d7cd011db47", + resource="https://managedhsm.azure.net" x-content-type-options: nosniff x-frame-options: SAMEORIGIN - x-ms-server-latency: '1' + x-ms-server-latency: '0' status: code: 401 message: Unauthorized - url: https://eastus2.chriss-eu2.managedhsm-int.azure-int.net/backup?api-version=7.2-preview + url: https://chlowehsm.managedhsm.azure.net/backup?api-version=7.2-preview - request: - body: '{"token": "redacted", "storageResourceUri": "https://storname.blob.core.windows.net/containerukawv6vxixb3rhm"}' + body: '{"storageResourceUri": "https://storname.blob.core.windows.net/containerbg7icm2wfp27ig3", + "token": "redacted"}' headers: Accept: - application/json Content-Length: - - '233' + - '239' Content-Type: - application/json User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: POST uri: https://managedhsm/backup?api-version=7.2-preview response: body: - string: '{"status":"InProgress","statusDetails":null,"error":{"code":null,"message":null,"innererror":null},"startTime":1599693526,"endTime":null,"jobId":"c41d7765beaa4c3eae7a1e6159f9efb2","azureStorageBlobContainerUri":null}' + string: '{"status":"InProgress","statusDetails":null,"error":{"code":null,"message":null,"innererror":null},"startTime":1601591609,"endTime":null,"jobId":"294a2b2b05f14363a5880067f591e431","azureStorageBlobContainerUri":null}' headers: - azure-asyncoperation: https://managedhsm/backup/c41d7765beaa4c3eae7a1e6159f9efb2/pending + azure-asyncoperation: https://managedhsm/backup/294a2b2b05f14363a5880067f591e431/pending cache-control: no-cache content-length: '216' content-security-policy: default-src 'self' content-type: application/json; charset=utf-8 - date: Wed, 09 Sep 2020 23:18:46 GMT + date: Thu, 01 Oct 2020 22:33:29 GMT server: Kestrel strict-transport-security: max-age=31536000; includeSubDomains x-content-type-options: nosniff x-frame-options: SAMEORIGIN - x-ms-keyvault-network-info: addr=24.17.201.78 - x-ms-keyvault-region: EASTUS - x-ms-server-latency: '1033' + x-ms-keyvault-network-info: addr=162.211.216.102 + x-ms-keyvault-region: eastus2 + x-ms-server-latency: '1733' status: code: 202 - message: null - url: https://eastus2.chriss-eu2.managedhsm-int.azure-int.net/backup?api-version=7.2-preview + message: '' + url: https://chlowehsm.managedhsm.azure.net/backup?api-version=7.2-preview +- request: + body: null + headers: + Accept: + - application/json + User-Agent: + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) + method: GET + uri: https://managedhsm/backup/294a2b2b05f14363a5880067f591e431/pending?api-version=7.2-preview + response: + body: + string: '{"azureStorageBlobContainerUri":null,"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"294a2b2b05f14363a5880067f591e431","startTime":1601591609,"status":"InProgress","statusDetails":null}' + headers: + cache-control: no-cache + content-length: '216' + content-security-policy: default-src 'self' + content-type: application/json; charset=utf-8 + date: Thu, 01 Oct 2020 22:33:31 GMT + server: Kestrel + strict-transport-security: max-age=31536000; includeSubDomains + x-content-type-options: nosniff + x-frame-options: SAMEORIGIN + x-ms-build-version: 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: addr=162.211.216.102 + x-ms-keyvault-region: eastus2 + x-ms-server-latency: '871' + status: + code: 200 + message: OK + url: https://chlowehsm.managedhsm.azure.net/backup/294a2b2b05f14363a5880067f591e431/pending?api-version=7.2-preview - request: body: null headers: User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: GET - uri: https://managedhsm/backup/c41d7765beaa4c3eae7a1e6159f9efb2/pending + uri: https://managedhsm/backup/294a2b2b05f14363a5880067f591e431/pending response: body: - string: '{"azureStorageBlobContainerUri":"https://storname.blob.core.windows.net/containerukawv6vxixb3rhm/mhsm-chriss-eu2-2020090923184683","endTime":1599693537,"error":null,"jobId":"c41d7765beaa4c3eae7a1e6159f9efb2","startTime":1599693526,"status":"Succeeded","statusDetails":null}' + string: '{"azureStorageBlobContainerUri":"https://storname.blob.core.windows.net/containerbg7icm2wfp27ig3/mhsm-chlowehsm-2020100122332997","endTime":1601591618,"error":null,"jobId":"294a2b2b05f14363a5880067f591e431","startTime":1601591609,"status":"Succeeded","statusDetails":null}' headers: cache-control: no-cache - content-length: '289' + content-length: '288' content-security-policy: default-src 'self' content-type: application/json; charset=utf-8 - date: Wed, 09 Sep 2020 23:18:57 GMT + date: Thu, 01 Oct 2020 22:33:41 GMT server: Kestrel strict-transport-security: max-age=31536000; includeSubDomains x-content-type-options: nosniff x-frame-options: SAMEORIGIN - x-ms-build-version: 1.0.20200909-2-c73be597-develop - x-ms-keyvault-network-info: addr=24.17.201.78 - x-ms-keyvault-region: EASTUS - x-ms-server-latency: '641' + x-ms-build-version: 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: addr=162.211.216.102 + x-ms-keyvault-region: eastus2 + x-ms-server-latency: '472' status: code: 200 message: OK - url: https://eastus2.chriss-eu2.managedhsm-int.azure-int.net/backup/c41d7765beaa4c3eae7a1e6159f9efb2/pending + url: https://chlowehsm.managedhsm.azure.net/backup/294a2b2b05f14363a5880067f591e431/pending - request: - body: '{"folderToRestore": "mhsm-chriss-eu2-2020090923184683", "sasTokenParameters": - {"token": "redacted", "storageResourceUri": "https://storname.blob.core.windows.net/containerukawv6vxixb3rhm"}}' + body: null + headers: + Accept: + - application/json + User-Agent: + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) + method: GET + uri: https://managedhsm/backup/294a2b2b05f14363a5880067f591e431/pending?api-version=7.2-preview + response: + body: + string: '{"azureStorageBlobContainerUri":"https://storname.blob.core.windows.net/containerbg7icm2wfp27ig3/mhsm-chlowehsm-2020100122332997","endTime":1601591618,"error":null,"jobId":"294a2b2b05f14363a5880067f591e431","startTime":1601591609,"status":"Succeeded","statusDetails":null}' + headers: + cache-control: no-cache + content-length: '288' + content-security-policy: default-src 'self' + content-type: application/json; charset=utf-8 + date: Thu, 01 Oct 2020 22:33:42 GMT + server: Kestrel + strict-transport-security: max-age=31536000; includeSubDomains + x-content-type-options: nosniff + x-frame-options: SAMEORIGIN + x-ms-build-version: 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: addr=162.211.216.102 + x-ms-keyvault-region: eastus2 + x-ms-server-latency: '447' + status: + code: 200 + message: OK + url: https://chlowehsm.managedhsm.azure.net/backup/294a2b2b05f14363a5880067f591e431/pending?api-version=7.2-preview +- request: + body: '{"folderToRestore": "mhsm-chlowehsm-2020100122332997", "sasTokenParameters": + {"storageResourceUri": "https://storname.blob.core.windows.net/containerbg7icm2wfp27ig3", + "token": "redacted"}}' headers: Accept: - application/json Content-Length: - - '312' + - '317' Content-Type: - application/json User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: PUT uri: https://managedhsm/restore?api-version=7.2-preview response: body: - string: '{"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"e82968b7701143aeaddcc851525eca02","startTime":1599693539,"status":"InProgress","statusDetails":null}' + string: '{"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"3004a649aa6844edb289a5f1bc0db202","startTime":1601591622,"status":"InProgress","statusDetails":null}' headers: - azure-asyncoperation: https://managedhsm/restore/e82968b7701143aeaddcc851525eca02/pending + azure-asyncoperation: https://managedhsm/restore/3004a649aa6844edb289a5f1bc0db202/pending cache-control: no-cache content-length: '180' content-security-policy: default-src 'self' content-type: application/json; charset=utf-8 - date: Wed, 09 Sep 2020 23:18:59 GMT + date: Thu, 01 Oct 2020 22:33:42 GMT server: Kestrel strict-transport-security: max-age=31536000; includeSubDomains x-content-type-options: nosniff x-frame-options: SAMEORIGIN - x-ms-keyvault-network-info: addr=24.17.201.78 - x-ms-keyvault-region: EASTUS - x-ms-server-latency: '932' + x-ms-keyvault-network-info: addr=162.211.216.102 + x-ms-keyvault-region: eastus2 + x-ms-server-latency: '608' status: code: 202 - message: null - url: https://eastus2.chriss-eu2.managedhsm-int.azure-int.net/restore?api-version=7.2-preview + message: '' + url: https://chlowehsm.managedhsm.azure.net/restore?api-version=7.2-preview - request: body: null headers: + Accept: + - application/json User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: GET - uri: https://managedhsm/restore/e82968b7701143aeaddcc851525eca02/pending + uri: https://managedhsm/restore/3004a649aa6844edb289a5f1bc0db202/pending?api-version=7.2-preview response: body: - string: '{"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"e82968b7701143aeaddcc851525eca02","startTime":1599693539,"status":"InProgress","statusDetails":null}' + string: '{"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"3004a649aa6844edb289a5f1bc0db202","startTime":1601591622,"status":"InProgress","statusDetails":null}' headers: cache-control: no-cache content-length: '180' content-security-policy: default-src 'self' content-type: application/json; charset=utf-8 - date: Wed, 09 Sep 2020 23:19:10 GMT + date: Thu, 01 Oct 2020 22:33:43 GMT server: Kestrel strict-transport-security: max-age=31536000; includeSubDomains x-content-type-options: nosniff x-frame-options: SAMEORIGIN - x-ms-build-version: 1.0.20200909-2-c73be597-develop - x-ms-keyvault-network-info: addr=24.17.201.78 - x-ms-keyvault-region: EASTUS - x-ms-server-latency: '675' + x-ms-build-version: 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: addr=162.211.216.102 + x-ms-keyvault-region: eastus2 + x-ms-server-latency: '447' status: code: 200 message: OK - url: https://eastus2.chriss-eu2.managedhsm-int.azure-int.net/restore/e82968b7701143aeaddcc851525eca02/pending + url: https://chlowehsm.managedhsm.azure.net/restore/3004a649aa6844edb289a5f1bc0db202/pending?api-version=7.2-preview - request: body: null headers: User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) + method: GET + uri: https://managedhsm/restore/3004a649aa6844edb289a5f1bc0db202/pending + response: + body: + string: '{"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"3004a649aa6844edb289a5f1bc0db202","startTime":1601591622,"status":"InProgress","statusDetails":null}' + headers: + cache-control: no-cache + content-length: '180' + content-security-policy: default-src 'self' + content-type: application/json; charset=utf-8 + date: Thu, 01 Oct 2020 22:33:54 GMT + server: Kestrel + strict-transport-security: max-age=31536000; includeSubDomains + x-content-type-options: nosniff + x-frame-options: SAMEORIGIN + x-ms-build-version: 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: addr=162.211.216.102 + x-ms-keyvault-region: eastus2 + x-ms-server-latency: '456' + status: + code: 200 + message: OK + url: https://chlowehsm.managedhsm.azure.net/restore/3004a649aa6844edb289a5f1bc0db202/pending +- request: + body: null + headers: + User-Agent: + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) + method: GET + uri: https://managedhsm/restore/3004a649aa6844edb289a5f1bc0db202/pending + response: + body: + string: '{"endTime":1601591639,"error":null,"jobId":"3004a649aa6844edb289a5f1bc0db202","startTime":1601591622,"status":"Succeeded","statusDetails":null}' + headers: + cache-control: no-cache + content-length: '143' + content-security-policy: default-src 'self' + content-type: application/json; charset=utf-8 + date: Thu, 01 Oct 2020 22:33:59 GMT + server: Kestrel + strict-transport-security: max-age=31536000; includeSubDomains + x-content-type-options: nosniff + x-frame-options: SAMEORIGIN + x-ms-build-version: 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: addr=162.211.216.102 + x-ms-keyvault-region: eastus2 + x-ms-server-latency: '478' + status: + code: 200 + message: OK + url: https://chlowehsm.managedhsm.azure.net/restore/3004a649aa6844edb289a5f1bc0db202/pending +- request: + body: null + headers: + Accept: + - application/json + User-Agent: + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: GET - uri: https://managedhsm/restore/e82968b7701143aeaddcc851525eca02/pending + uri: https://managedhsm/restore/3004a649aa6844edb289a5f1bc0db202/pending?api-version=7.2-preview response: body: - string: '{"endTime":1599693551,"error":null,"jobId":"e82968b7701143aeaddcc851525eca02","startTime":1599693539,"status":"Succeeded","statusDetails":null}' + string: '{"endTime":1601591639,"error":null,"jobId":"3004a649aa6844edb289a5f1bc0db202","startTime":1601591622,"status":"Succeeded","statusDetails":null}' headers: cache-control: no-cache content-length: '143' content-security-policy: default-src 'self' content-type: application/json; charset=utf-8 - date: Wed, 09 Sep 2020 23:19:17 GMT + date: Thu, 01 Oct 2020 22:34:00 GMT server: Kestrel strict-transport-security: max-age=31536000; includeSubDomains x-content-type-options: nosniff x-frame-options: SAMEORIGIN - x-ms-build-version: 1.0.20200909-2-c73be597-develop - x-ms-keyvault-network-info: addr=24.17.201.78 - x-ms-keyvault-region: EASTUS - x-ms-server-latency: '629' + x-ms-build-version: 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: addr=162.211.216.102 + x-ms-keyvault-region: eastus2 + x-ms-server-latency: '440' status: code: 200 message: OK - url: https://eastus2.chriss-eu2.managedhsm-int.azure-int.net/restore/e82968b7701143aeaddcc851525eca02/pending + url: https://chlowehsm.managedhsm.azure.net/restore/3004a649aa6844edb289a5f1bc0db202/pending?api-version=7.2-preview version: 1 diff --git a/sdk/keyvault/azure-keyvault-administration/tests/recordings/test_backup_client_async.test_selective_key_restore.yaml b/sdk/keyvault/azure-keyvault-administration/tests/recordings/test_backup_client_async.test_selective_key_restore.yaml index 02cc71c423fa..040bfb628da1 100644 --- a/sdk/keyvault/azure-keyvault-administration/tests/recordings/test_backup_client_async.test_selective_key_restore.yaml +++ b/sdk/keyvault/azure-keyvault-administration/tests/recordings/test_backup_client_async.test_selective_key_restore.yaml @@ -9,7 +9,7 @@ interactions: Content-Type: - application/json User-Agent: - - azsdk-python-keyvault-keys/4.2.1 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-keys/4.2.1 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: POST uri: https://managedhsm/keys/selective-restore-test-key20e5150d/create?api-version=7.1 response: @@ -21,15 +21,15 @@ interactions: content-security-policy: default-src 'self' content-type: application/json; charset=utf-8 strict-transport-security: max-age=31536000; includeSubDomains - www-authenticate: Bearer authorization="https://login.windows-ppe.net/f686d426-8d16-42db-81b7-ab578e110ccd", - resource="https://managedhsm-int.azure-int.net" + www-authenticate: Bearer authorization="https://login.microsoftonline.com/72f988bf-86f1-41af-91ab-2d7cd011db47", + resource="https://managedhsm.azure.net" x-content-type-options: nosniff x-frame-options: SAMEORIGIN - x-ms-server-latency: '0' + x-ms-server-latency: '1' status: code: 401 message: Unauthorized - url: https://eastus2.chriss-eu2.managedhsm-int.azure-int.net/keys/selective-restore-test-key20e5150d/create?api-version=7.1 + url: https://chlowehsm.managedhsm.azure.net/keys/selective-restore-test-key20e5150d/create?api-version=7.1 - request: body: '{"kty": "RSA"}' headers: @@ -40,274 +40,391 @@ interactions: Content-Type: - application/json User-Agent: - - azsdk-python-keyvault-keys/4.2.1 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-keys/4.2.1 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: POST uri: https://managedhsm/keys/selective-restore-test-key20e5150d/create?api-version=7.1 response: body: - string: '{"attributes":{"created":1599693613,"enabled":true,"exportable":false,"recoverableDays":7,"recoveryLevel":"CustomizedRecoverable+Purgeable","updated":1599693613},"key":{"e":"AQAB","key_ops":["wrapKey","decrypt","encrypt","unwrapKey","sign","verify"],"kid":"https://managedhsm/keys/selective-restore-test-key20e5150d/7500af2095d145ba1792f41a676385a2","kty":"RSA-HSM","n":"nk0J5UifiL3C-Wb2BzSUMAR8wDVPGIa5eMT0GNHBLjKai-IMj5GF55-yHD-GP2qQgrDWIIPM2wD5j03fcTqdehqSlyOrqBrRTqfBi2dc8hRuZr9bPttLwqrWzQR3mFag5PiDYvSMBj0cRNcp6ZlIONbMcaq68SV8H559sKowLxJIhF4z-5GRfCJboxvcLwtIGSvuv9HnB4qkrJF5tT9OOqeFQUGJgD01XmACGOZedKhJXzUqhUGm8XvwYDHx0aKXebWudw34ClAl7lWIMw5bd2DR-GUQ9T9i-bj4ipkosVZtZl4iyexhWFjKECJZC53kdLJ7K6rW-wlPb2129DvfwQ"}}' + string: '{"attributes":{"created":1601591665,"enabled":true,"exportable":false,"recoverableDays":90,"recoveryLevel":"Recoverable+Purgeable","updated":1601591665},"key":{"e":"AQAB","key_ops":["wrapKey","decrypt","encrypt","unwrapKey","sign","verify"],"kid":"https://managedhsm/keys/selective-restore-test-key20e5150d/5cfeb43beec2485f1e716e7f905f9125","kty":"RSA-HSM","n":"rUiCMBpOm5LvgUekk5uws7D3MKrb6UWDLIwd1jxg9ntpPVbU-nVvGVwg4XwTPx7q5H_cTSaNnf3v1jIzA4kvqYPa21Lr4TRve9AeUcySCDz67N4hrVPncYWMQgQeAVgvkIiN2050-BpwQ6xI988HMwXX_8HTSRyvWw-ftavPFSvQwgAPbmpmLTdfq-zY8fW0tCps_xJnKyRk8kwcG8PMCuxnD_Mq6al3z_zcnjG5c6KSXxIc0_y9p2yHDJBSUYEspTNAxlz5ROU2XPxzrx7LvFA_yO-MJX2hIJoOxNBdNM4Qkjy16pgWcHQ1Dh6t5hX_GqCQGrWX0kCCCkDXeVPGPQ"}}' headers: cache-control: no-cache - content-length: '753' + content-length: '727' content-security-policy: default-src 'self' content-type: application/json; charset=utf-8 strict-transport-security: max-age=31536000; includeSubDomains x-content-type-options: nosniff x-frame-options: SAMEORIGIN - x-ms-keyvault-network-info: addr=24.17.201.78 - x-ms-keyvault-region: EASTUS - x-ms-server-latency: '719' + x-ms-keyvault-network-info: addr=162.211.216.102 + x-ms-keyvault-region: eastus2 + x-ms-server-latency: '280' status: code: 200 message: OK - url: https://eastus2.chriss-eu2.managedhsm-int.azure-int.net/keys/selective-restore-test-key20e5150d/create?api-version=7.1 + url: https://chlowehsm.managedhsm.azure.net/keys/selective-restore-test-key20e5150d/create?api-version=7.1 - request: - body: null + body: '{"storageResourceUri": "https://storname.blob.core.windows.net/containerst5uppuukrzgyab", + "token": "redacted"}' headers: Accept: - application/json Content-Length: - - '0' + - '233' Content-Type: - application/json User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: POST uri: https://managedhsm/backup?api-version=7.2-preview response: body: - string: '' + string: '{"status":"InProgress","statusDetails":null,"error":{"code":null,"message":null,"innererror":null},"startTime":1601591667,"endTime":null,"jobId":"089db62f03fc4f90b16b6ec1b0994fce","azureStorageBlobContainerUri":null}' headers: + azure-asyncoperation: https://managedhsm/backup/089db62f03fc4f90b16b6ec1b0994fce/pending cache-control: no-cache - content-length: '0' + content-length: '216' content-security-policy: default-src 'self' content-type: application/json; charset=utf-8 + date: Thu, 01 Oct 2020 22:34:26 GMT + server: Kestrel strict-transport-security: max-age=31536000; includeSubDomains - www-authenticate: Bearer authorization="https://login.windows-ppe.net/f686d426-8d16-42db-81b7-ab578e110ccd", - resource="https://managedhsm-int.azure-int.net" x-content-type-options: nosniff x-frame-options: SAMEORIGIN - x-ms-server-latency: '1' + x-ms-keyvault-network-info: addr=162.211.216.102 + x-ms-keyvault-region: eastus2 + x-ms-server-latency: '615' status: - code: 401 - message: Unauthorized - url: https://eastus2.chriss-eu2.managedhsm-int.azure-int.net/backup?api-version=7.2-preview + code: 202 + message: '' + url: https://chlowehsm.managedhsm.azure.net/backup?api-version=7.2-preview - request: - body: '{"storageResourceUri": "https://storname.blob.core.windows.net/container46nad73wruezm7t", - "token": "redacted"}' + body: null headers: Accept: - application/json - Content-Length: - - '233' - Content-Type: - - application/json User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) - method: POST - uri: https://managedhsm/backup?api-version=7.2-preview + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) + method: GET + uri: https://managedhsm/backup/089db62f03fc4f90b16b6ec1b0994fce/pending?api-version=7.2-preview response: body: - string: '{"status":"InProgress","statusDetails":null,"error":{"code":null,"message":null,"innererror":null},"startTime":1599693615,"endTime":null,"jobId":"6dd3d9ef3c4340d583da7967d366f43c","azureStorageBlobContainerUri":null}' + string: '{"azureStorageBlobContainerUri":null,"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"089db62f03fc4f90b16b6ec1b0994fce","startTime":1601591667,"status":"InProgress","statusDetails":null}' headers: - azure-asyncoperation: https://managedhsm/backup/6dd3d9ef3c4340d583da7967d366f43c/pending cache-control: no-cache content-length: '216' content-security-policy: default-src 'self' content-type: application/json; charset=utf-8 - date: Wed, 09 Sep 2020 23:20:14 GMT + date: Thu, 01 Oct 2020 22:34:27 GMT server: Kestrel strict-transport-security: max-age=31536000; includeSubDomains x-content-type-options: nosniff x-frame-options: SAMEORIGIN - x-ms-keyvault-network-info: addr=24.17.201.78 - x-ms-keyvault-region: EASTUS - x-ms-server-latency: '880' + x-ms-build-version: 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: addr=162.211.216.102 + x-ms-keyvault-region: eastus2 + x-ms-server-latency: '457' status: - code: 202 - message: null - url: https://eastus2.chriss-eu2.managedhsm-int.azure-int.net/backup?api-version=7.2-preview + code: 200 + message: OK + url: https://chlowehsm.managedhsm.azure.net/backup/089db62f03fc4f90b16b6ec1b0994fce/pending?api-version=7.2-preview - request: body: null headers: User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: GET - uri: https://managedhsm/backup/6dd3d9ef3c4340d583da7967d366f43c/pending + uri: https://managedhsm/backup/089db62f03fc4f90b16b6ec1b0994fce/pending response: body: - string: '{"azureStorageBlobContainerUri":"https://storname.blob.core.windows.net/container46nad73wruezm7t/mhsm-chriss-eu2-2020090923201530","endTime":1599693626,"error":null,"jobId":"6dd3d9ef3c4340d583da7967d366f43c","startTime":1599693615,"status":"Succeeded","statusDetails":null}' + string: '{"azureStorageBlobContainerUri":"https://storname.blob.core.windows.net/containerst5uppuukrzgyab/mhsm-chlowehsm-2020100122342733","endTime":1601591676,"error":null,"jobId":"089db62f03fc4f90b16b6ec1b0994fce","startTime":1601591667,"status":"Succeeded","statusDetails":null}' headers: cache-control: no-cache - content-length: '289' + content-length: '288' content-security-policy: default-src 'self' content-type: application/json; charset=utf-8 - date: Wed, 09 Sep 2020 23:20:26 GMT + date: Thu, 01 Oct 2020 22:34:37 GMT server: Kestrel strict-transport-security: max-age=31536000; includeSubDomains x-content-type-options: nosniff x-frame-options: SAMEORIGIN - x-ms-build-version: 1.0.20200909-2-c73be597-develop - x-ms-keyvault-network-info: addr=24.17.201.78 - x-ms-keyvault-region: EASTUS - x-ms-server-latency: '636' + x-ms-build-version: 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: addr=162.211.216.102 + x-ms-keyvault-region: eastus2 + x-ms-server-latency: '483' status: code: 200 message: OK - url: https://eastus2.chriss-eu2.managedhsm-int.azure-int.net/backup/6dd3d9ef3c4340d583da7967d366f43c/pending + url: https://chlowehsm.managedhsm.azure.net/backup/089db62f03fc4f90b16b6ec1b0994fce/pending - request: - body: '{"sasTokenParameters": {"storageResourceUri": "https://storname.blob.core.windows.net/container46nad73wruezm7t", - "token": "redacted"}, "folder": "mhsm-chriss-eu2-2020090923201530"}' + body: null + headers: + Accept: + - application/json + User-Agent: + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) + method: GET + uri: https://managedhsm/backup/089db62f03fc4f90b16b6ec1b0994fce/pending?api-version=7.2-preview + response: + body: + string: '{"azureStorageBlobContainerUri":"https://storname.blob.core.windows.net/containerst5uppuukrzgyab/mhsm-chlowehsm-2020100122342733","endTime":1601591676,"error":null,"jobId":"089db62f03fc4f90b16b6ec1b0994fce","startTime":1601591667,"status":"Succeeded","statusDetails":null}' + headers: + cache-control: no-cache + content-length: '288' + content-security-policy: default-src 'self' + content-type: application/json; charset=utf-8 + date: Thu, 01 Oct 2020 22:34:38 GMT + server: Kestrel + strict-transport-security: max-age=31536000; includeSubDomains + x-content-type-options: nosniff + x-frame-options: SAMEORIGIN + x-ms-build-version: 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: addr=162.211.216.102 + x-ms-keyvault-region: eastus2 + x-ms-server-latency: '491' + status: + code: 200 + message: OK + url: https://chlowehsm.managedhsm.azure.net/backup/089db62f03fc4f90b16b6ec1b0994fce/pending?api-version=7.2-preview +- request: + body: '{"sasTokenParameters": {"storageResourceUri": "https://storname.blob.core.windows.net/containerst5uppuukrzgyab", + "token": "redacted"}, "folder": "mhsm-chlowehsm-2020100122342733"}' headers: Accept: - application/json Content-Length: - - '303' + - '302' Content-Type: - application/json User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: PUT uri: https://managedhsm/keys/selective-restore-test-key20e5150d/restore?api-version=7.2-preview response: body: - string: '{"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"d8ca0b63bcac42f9b36997f4e163db2f","startTime":1599693627,"status":"InProgress","statusDetails":null}' + string: '{"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"689318b514cc47dc93f41325ed3c15ac","startTime":1601591679,"status":"InProgress","statusDetails":null}' headers: - azure-asyncoperation: https://managedhsm/restore/d8ca0b63bcac42f9b36997f4e163db2f/pending + azure-asyncoperation: https://managedhsm/restore/689318b514cc47dc93f41325ed3c15ac/pending cache-control: no-cache content-length: '180' content-security-policy: default-src 'self' content-type: application/json; charset=utf-8 - date: Wed, 09 Sep 2020 23:20:27 GMT + date: Thu, 01 Oct 2020 22:34:39 GMT server: Kestrel strict-transport-security: max-age=31536000; includeSubDomains x-content-type-options: nosniff x-frame-options: SAMEORIGIN - x-ms-keyvault-network-info: addr=24.17.201.78 - x-ms-keyvault-region: EASTUS - x-ms-server-latency: '898' + x-ms-keyvault-network-info: addr=162.211.216.102 + x-ms-keyvault-region: eastus2 + x-ms-server-latency: '638' status: code: 202 - message: null - url: https://eastus2.chriss-eu2.managedhsm-int.azure-int.net/keys/selective-restore-test-key20e5150d/restore?api-version=7.2-preview + message: '' + url: https://chlowehsm.managedhsm.azure.net/keys/selective-restore-test-key20e5150d/restore?api-version=7.2-preview - request: body: null headers: + Accept: + - application/json User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: GET - uri: https://managedhsm/restore/d8ca0b63bcac42f9b36997f4e163db2f/pending + uri: https://managedhsm/restore/689318b514cc47dc93f41325ed3c15ac/pending?api-version=7.2-preview response: body: - string: '{"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"d8ca0b63bcac42f9b36997f4e163db2f","startTime":1599693627,"status":"InProgress","statusDetails":null}' + string: '{"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"689318b514cc47dc93f41325ed3c15ac","startTime":1601591679,"status":"InProgress","statusDetails":null}' headers: cache-control: no-cache content-length: '180' content-security-policy: default-src 'self' content-type: application/json; charset=utf-8 - date: Wed, 09 Sep 2020 23:20:38 GMT + date: Thu, 01 Oct 2020 22:34:39 GMT server: Kestrel strict-transport-security: max-age=31536000; includeSubDomains x-content-type-options: nosniff x-frame-options: SAMEORIGIN - x-ms-build-version: 1.0.20200909-2-c73be597-develop - x-ms-keyvault-network-info: addr=24.17.201.78 - x-ms-keyvault-region: EASTUS - x-ms-server-latency: '656' + x-ms-build-version: 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: addr=162.211.216.102 + x-ms-keyvault-region: eastus2 + x-ms-server-latency: '472' status: code: 200 message: OK - url: https://eastus2.chriss-eu2.managedhsm-int.azure-int.net/restore/d8ca0b63bcac42f9b36997f4e163db2f/pending + url: https://chlowehsm.managedhsm.azure.net/restore/689318b514cc47dc93f41325ed3c15ac/pending?api-version=7.2-preview - request: body: null headers: User-Agent: - - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: GET - uri: https://managedhsm/restore/d8ca0b63bcac42f9b36997f4e163db2f/pending + uri: https://managedhsm/restore/689318b514cc47dc93f41325ed3c15ac/pending response: body: - string: '{"endTime":1599693639,"error":null,"jobId":"d8ca0b63bcac42f9b36997f4e163db2f","startTime":1599693627,"status":"Succeeded","statusDetails":"Number + string: '{"endTime":null,"error":{"code":null,"innererror":null,"message":null},"jobId":"689318b514cc47dc93f41325ed3c15ac","startTime":1601591679,"status":"InProgress","statusDetails":null}' + headers: + cache-control: no-cache + content-length: '180' + content-security-policy: default-src 'self' + content-type: application/json; charset=utf-8 + date: Thu, 01 Oct 2020 22:34:50 GMT + server: Kestrel + strict-transport-security: max-age=31536000; includeSubDomains + x-content-type-options: nosniff + x-frame-options: SAMEORIGIN + x-ms-build-version: 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: addr=162.211.216.102 + x-ms-keyvault-region: eastus2 + x-ms-server-latency: '443' + status: + code: 200 + message: OK + url: https://chlowehsm.managedhsm.azure.net/restore/689318b514cc47dc93f41325ed3c15ac/pending +- request: + body: null + headers: + User-Agent: + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) + method: GET + uri: https://managedhsm/restore/689318b514cc47dc93f41325ed3c15ac/pending + response: + body: + string: '{"endTime":1601591696,"error":null,"jobId":"689318b514cc47dc93f41325ed3c15ac","startTime":1601591679,"status":"Succeeded","statusDetails":"Number + of successful key versions restored: 0, Number of key versions could not overwrite: + 3"}' + headers: + cache-control: no-cache + content-length: '233' + content-security-policy: default-src 'self' + content-type: application/json; charset=utf-8 + date: Thu, 01 Oct 2020 22:34:56 GMT + server: Kestrel + strict-transport-security: max-age=31536000; includeSubDomains + x-content-type-options: nosniff + x-frame-options: SAMEORIGIN + x-ms-build-version: 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: addr=162.211.216.102 + x-ms-keyvault-region: eastus2 + x-ms-server-latency: '924' + status: + code: 200 + message: OK + url: https://chlowehsm.managedhsm.azure.net/restore/689318b514cc47dc93f41325ed3c15ac/pending +- request: + body: null + headers: + Accept: + - application/json + User-Agent: + - azsdk-python-keyvault-administration/4.0.0b2 Python/3.5.3 (Windows-10-10.0.19041-SP0) + method: GET + uri: https://managedhsm/restore/689318b514cc47dc93f41325ed3c15ac/pending?api-version=7.2-preview + response: + body: + string: '{"endTime":1601591696,"error":null,"jobId":"689318b514cc47dc93f41325ed3c15ac","startTime":1601591679,"status":"Succeeded","statusDetails":"Number of successful key versions restored: 0, Number of key versions could not overwrite: - 2"}' + 3"}' headers: cache-control: no-cache content-length: '233' content-security-policy: default-src 'self' content-type: application/json; charset=utf-8 - date: Wed, 09 Sep 2020 23:20:44 GMT + date: Thu, 01 Oct 2020 22:34:57 GMT server: Kestrel strict-transport-security: max-age=31536000; includeSubDomains x-content-type-options: nosniff x-frame-options: SAMEORIGIN - x-ms-build-version: 1.0.20200909-2-c73be597-develop - x-ms-keyvault-network-info: addr=24.17.201.78 - x-ms-keyvault-region: EASTUS - x-ms-server-latency: '655' + x-ms-build-version: 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: addr=162.211.216.102 + x-ms-keyvault-region: eastus2 + x-ms-server-latency: '711' status: code: 200 message: OK - url: https://eastus2.chriss-eu2.managedhsm-int.azure-int.net/restore/d8ca0b63bcac42f9b36997f4e163db2f/pending + url: https://chlowehsm.managedhsm.azure.net/restore/689318b514cc47dc93f41325ed3c15ac/pending?api-version=7.2-preview - request: body: null headers: Accept: - application/json User-Agent: - - azsdk-python-keyvault-keys/4.2.1 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-keys/4.2.1 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: DELETE uri: https://managedhsm/keys/selective-restore-test-key20e5150d?api-version=7.1 response: body: - string: '{"attributes":{"created":1599693613,"enabled":true,"exportable":false,"recoverableDays":7,"recoveryLevel":"CustomizedRecoverable+Purgeable","updated":1599693613},"deletedDate":1599693645,"key":{"e":"AQAB","key_ops":["wrapKey","verify","sign","unwrapKey","decrypt","encrypt"],"kid":"https://managedhsm/keys/selective-restore-test-key20e5150d/7500af2095d145ba1792f41a676385a2","kty":"RSA-HSM","n":"nk0J5UifiL3C-Wb2BzSUMAR8wDVPGIa5eMT0GNHBLjKai-IMj5GF55-yHD-GP2qQgrDWIIPM2wD5j03fcTqdehqSlyOrqBrRTqfBi2dc8hRuZr9bPttLwqrWzQR3mFag5PiDYvSMBj0cRNcp6ZlIONbMcaq68SV8H559sKowLxJIhF4z-5GRfCJboxvcLwtIGSvuv9HnB4qkrJF5tT9OOqeFQUGJgD01XmACGOZedKhJXzUqhUGm8XvwYDHx0aKXebWudw34ClAl7lWIMw5bd2DR-GUQ9T9i-bj4ipkosVZtZl4iyexhWFjKECJZC53kdLJ7K6rW-wlPb2129DvfwQ"},"recoveryId":"https://managedhsm/deletedkeys/selective-restore-test-key20e5150d","scheduledPurgeDate":1600298445}' + string: '{"error":{"code":"Conflict","message":"User triggered Restore operation + is in progress. Retry after the restore operation (Activity ID: d9c5d3c6-0335-11eb-b520-0242ac120008)"}}' headers: cache-control: no-cache - content-length: '928' + content-length: '176' content-security-policy: default-src 'self' content-type: application/json; charset=utf-8 strict-transport-security: max-age=31536000; includeSubDomains x-content-type-options: nosniff x-frame-options: SAMEORIGIN - x-ms-keyvault-network-info: addr=24.17.201.78 - x-ms-keyvault-region: EASTUS - x-ms-server-latency: '483' + x-ms-server-latency: '1' + status: + code: 409 + message: '' + url: https://chlowehsm.managedhsm.azure.net/keys/selective-restore-test-key20e5150d?api-version=7.1 +- request: + body: null + headers: + Accept: + - application/json + User-Agent: + - azsdk-python-keyvault-keys/4.2.1 Python/3.5.3 (Windows-10-10.0.19041-SP0) + method: DELETE + uri: https://managedhsm/keys/selective-restore-test-key20e5150d?api-version=7.1 + response: + body: + string: '{"attributes":{"created":1601591665,"enabled":true,"exportable":false,"recoverableDays":90,"recoveryLevel":"Recoverable+Purgeable","updated":1601591665},"deletedDate":1601591701,"key":{"e":"AQAB","key_ops":["wrapKey","verify","sign","unwrapKey","decrypt","encrypt"],"kid":"https://managedhsm/keys/selective-restore-test-key20e5150d/5cfeb43beec2485f1e716e7f905f9125","kty":"RSA-HSM","n":"rUiCMBpOm5LvgUekk5uws7D3MKrb6UWDLIwd1jxg9ntpPVbU-nVvGVwg4XwTPx7q5H_cTSaNnf3v1jIzA4kvqYPa21Lr4TRve9AeUcySCDz67N4hrVPncYWMQgQeAVgvkIiN2050-BpwQ6xI988HMwXX_8HTSRyvWw-ftavPFSvQwgAPbmpmLTdfq-zY8fW0tCps_xJnKyRk8kwcG8PMCuxnD_Mq6al3z_zcnjG5c6KSXxIc0_y9p2yHDJBSUYEspTNAxlz5ROU2XPxzrx7LvFA_yO-MJX2hIJoOxNBdNM4Qkjy16pgWcHQ1Dh6t5hX_GqCQGrWX0kCCCkDXeVPGPQ"},"recoveryId":"https://managedhsm/deletedkeys/selective-restore-test-key20e5150d","scheduledPurgeDate":1609367701}' + headers: + cache-control: no-cache + content-length: '885' + content-security-policy: default-src 'self' + content-type: application/json; charset=utf-8 + strict-transport-security: max-age=31536000; includeSubDomains + x-content-type-options: nosniff + x-frame-options: SAMEORIGIN + x-ms-keyvault-network-info: addr=162.211.216.102 + x-ms-keyvault-region: eastus2 + x-ms-server-latency: '194' status: code: 200 message: OK - url: https://eastus2.chriss-eu2.managedhsm-int.azure-int.net/keys/selective-restore-test-key20e5150d?api-version=7.1 + url: https://chlowehsm.managedhsm.azure.net/keys/selective-restore-test-key20e5150d?api-version=7.1 - request: body: null headers: Accept: - application/json User-Agent: - - azsdk-python-keyvault-keys/4.2.1 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-keys/4.2.1 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: GET uri: https://managedhsm/deletedkeys/selective-restore-test-key20e5150d?api-version=7.1 response: body: - string: '{"attributes":{"created":1599693613,"enabled":true,"exportable":false,"recoverableDays":7,"recoveryLevel":"CustomizedRecoverable+Purgeable","updated":1599693613},"deletedDate":1599693645,"key":{"e":"AQAB","key_ops":["encrypt","decrypt","unwrapKey","sign","verify","wrapKey"],"kid":"https://managedhsm/keys/selective-restore-test-key20e5150d/7500af2095d145ba1792f41a676385a2","kty":"RSA-HSM","n":"nk0J5UifiL3C-Wb2BzSUMAR8wDVPGIa5eMT0GNHBLjKai-IMj5GF55-yHD-GP2qQgrDWIIPM2wD5j03fcTqdehqSlyOrqBrRTqfBi2dc8hRuZr9bPttLwqrWzQR3mFag5PiDYvSMBj0cRNcp6ZlIONbMcaq68SV8H559sKowLxJIhF4z-5GRfCJboxvcLwtIGSvuv9HnB4qkrJF5tT9OOqeFQUGJgD01XmACGOZedKhJXzUqhUGm8XvwYDHx0aKXebWudw34ClAl7lWIMw5bd2DR-GUQ9T9i-bj4ipkosVZtZl4iyexhWFjKECJZC53kdLJ7K6rW-wlPb2129DvfwQ"},"recoveryId":"https://managedhsm/deletedkeys/selective-restore-test-key20e5150d","scheduledPurgeDate":1600298445}' + string: '{"attributes":{"created":1601591665,"enabled":true,"exportable":false,"recoverableDays":90,"recoveryLevel":"Recoverable+Purgeable","updated":1601591665},"deletedDate":1601591701,"key":{"e":"AQAB","key_ops":["encrypt","decrypt","unwrapKey","sign","verify","wrapKey"],"kid":"https://managedhsm/keys/selective-restore-test-key20e5150d/5cfeb43beec2485f1e716e7f905f9125","kty":"RSA-HSM","n":"rUiCMBpOm5LvgUekk5uws7D3MKrb6UWDLIwd1jxg9ntpPVbU-nVvGVwg4XwTPx7q5H_cTSaNnf3v1jIzA4kvqYPa21Lr4TRve9AeUcySCDz67N4hrVPncYWMQgQeAVgvkIiN2050-BpwQ6xI988HMwXX_8HTSRyvWw-ftavPFSvQwgAPbmpmLTdfq-zY8fW0tCps_xJnKyRk8kwcG8PMCuxnD_Mq6al3z_zcnjG5c6KSXxIc0_y9p2yHDJBSUYEspTNAxlz5ROU2XPxzrx7LvFA_yO-MJX2hIJoOxNBdNM4Qkjy16pgWcHQ1Dh6t5hX_GqCQGrWX0kCCCkDXeVPGPQ"},"recoveryId":"https://managedhsm/deletedkeys/selective-restore-test-key20e5150d","scheduledPurgeDate":1609367701}' headers: cache-control: no-cache - content-length: '928' + content-length: '885' content-security-policy: default-src 'self' content-type: application/json; charset=utf-8 strict-transport-security: max-age=31536000; includeSubDomains x-content-type-options: nosniff x-frame-options: SAMEORIGIN - x-ms-build-version: 1.0.20200909-2-c73be597-develop - x-ms-keyvault-network-info: addr=24.17.201.78 - x-ms-keyvault-region: EASTUS - x-ms-server-latency: '192' + x-ms-build-version: 1.0.20200917-2-1617fc9c-develop + x-ms-keyvault-network-info: addr=162.211.216.102 + x-ms-keyvault-region: eastus2 + x-ms-server-latency: '65' status: code: 200 message: OK - url: https://eastus2.chriss-eu2.managedhsm-int.azure-int.net/deletedkeys/selective-restore-test-key20e5150d?api-version=7.1 + url: https://chlowehsm.managedhsm.azure.net/deletedkeys/selective-restore-test-key20e5150d?api-version=7.1 - request: body: null headers: User-Agent: - - azsdk-python-keyvault-keys/4.2.1 Python/3.5.4 (Windows-10-10.0.19041-SP0) + - azsdk-python-keyvault-keys/4.2.1 Python/3.5.3 (Windows-10-10.0.19041-SP0) method: DELETE uri: https://managedhsm/deletedkeys/selective-restore-test-key20e5150d?api-version=7.1 response: @@ -321,11 +438,11 @@ interactions: strict-transport-security: max-age=31536000; includeSubDomains x-content-type-options: nosniff x-frame-options: SAMEORIGIN - x-ms-keyvault-network-info: addr=24.17.201.78 - x-ms-keyvault-region: EASTUS - x-ms-server-latency: '545' + x-ms-keyvault-network-info: addr=162.211.216.102 + x-ms-keyvault-region: eastus2 + x-ms-server-latency: '238' status: code: 204 - message: null - url: https://eastus2.chriss-eu2.managedhsm-int.azure-int.net/deletedkeys/selective-restore-test-key20e5150d?api-version=7.1 + message: '' + url: https://chlowehsm.managedhsm.azure.net/deletedkeys/selective-restore-test-key20e5150d?api-version=7.1 version: 1 diff --git a/sdk/keyvault/azure-keyvault-administration/tests/test_backup_client.py b/sdk/keyvault/azure-keyvault-administration/tests/test_backup_client.py index 22b510c02e64..ced704835353 100644 --- a/sdk/keyvault/azure-keyvault-administration/tests/test_backup_client.py +++ b/sdk/keyvault/azure-keyvault-administration/tests/test_backup_client.py @@ -3,9 +3,11 @@ # Licensed under the MIT License. # ------------------------------------ from datetime import datetime +from functools import partial import time from azure.core.credentials import AccessToken +from azure.core.exceptions import ResourceExistsError from azure.identity import DefaultAzureCredential from azure.keyvault.keys import KeyClient from azure.keyvault.administration import KeyVaultBackupClient, BackupOperation @@ -40,14 +42,28 @@ def test_full_backup_and_restore(self, container_uri, sas_token): # backup the vault backup_client = KeyVaultBackupClient(self.managed_hsm["url"], self.credential) backup_poller = backup_client.begin_full_backup(container_uri, sas_token) + + # check backup status and result + job_id = backup_poller.polling_method().resource().id + backup_status = backup_client.get_backup_status(job_id) + assert_in_progress_operation(backup_status) backup_operation = backup_poller.result() assert_successful_operation(backup_operation) + backup_status = backup_client.get_backup_status(job_id) + assert_successful_operation(backup_status) # restore the backup folder_name = backup_operation.azure_storage_blob_container_uri.split("/")[-1] restore_poller = backup_client.begin_full_restore(container_uri, sas_token, folder_name) + + # check restore status and result + job_id = restore_poller.polling_method().resource().id + restore_status = backup_client.get_restore_status(job_id) + assert_in_progress_operation(restore_status) restore_operation = restore_poller.result() assert_successful_operation(restore_operation) + restore_status = backup_client.get_restore_status(job_id) + assert_successful_operation(restore_status) @ResourceGroupPreparer(random_name_enabled=True, use_cache=True) @StorageAccountPreparer(random_name_enabled=True) @@ -61,16 +77,33 @@ def test_selective_key_restore(self, container_uri, sas_token): # backup the vault backup_client = KeyVaultBackupClient(self.managed_hsm["url"], self.credential) backup_poller = backup_client.begin_full_backup(container_uri, sas_token) + + # check backup status and result + job_id = backup_poller.polling_method().resource().id + backup_status = backup_client.get_backup_status(job_id) + assert_in_progress_operation(backup_status) backup_operation = backup_poller.result() assert_successful_operation(backup_operation) + backup_status = backup_client.get_backup_status(job_id) + assert_successful_operation(backup_status) # restore the key folder_name = backup_operation.azure_storage_blob_container_uri.split("/")[-1] restore_poller = backup_client.begin_selective_restore(container_uri, sas_token, folder_name, key_name) + + # check restore status and result + job_id = restore_poller.polling_method().resource().id + restore_status = backup_client.get_restore_status(job_id) + assert_in_progress_operation(restore_status) restore_operation = restore_poller.result() assert_successful_operation(restore_operation) + restore_status = backup_client.get_restore_status(job_id) + assert_successful_operation(restore_status) - key_client.begin_delete_key(key_name).wait() + # delete the key + delete_function = partial(key_client.begin_delete_key, key_name) + delete_poller = self._poll_until_no_exception(delete_function, ResourceExistsError) + delete_poller.wait() key_client.purge_deleted_key(key_name) @@ -93,6 +126,14 @@ def test_continuation_token(): assert kwargs["continuation_token"] == expected_token +def assert_in_progress_operation(operation): + if isinstance(operation, BackupOperation): + assert operation.azure_storage_blob_container_uri is None + assert operation.status == "InProgress" + assert operation.end_time is None + assert isinstance(operation.start_time, datetime) + + def assert_successful_operation(operation): if isinstance(operation, BackupOperation): assert operation.azure_storage_blob_container_uri diff --git a/sdk/keyvault/azure-keyvault-administration/tests/test_backup_client_async.py b/sdk/keyvault/azure-keyvault-administration/tests/test_backup_client_async.py index 8e9fee466006..8cff903b143b 100644 --- a/sdk/keyvault/azure-keyvault-administration/tests/test_backup_client_async.py +++ b/sdk/keyvault/azure-keyvault-administration/tests/test_backup_client_async.py @@ -7,6 +7,7 @@ from unittest import mock from azure.core.credentials import AccessToken +from azure.core.exceptions import ResourceExistsError from azure.identity.aio import DefaultAzureCredential from azure.keyvault.keys.aio import KeyClient from azure.keyvault.administration.aio import KeyVaultBackupClient @@ -16,6 +17,7 @@ from _shared.helpers_async import get_completed_future from _shared.test_case_async import KeyVaultTestCase from blob_container_preparer import BlobContainerPreparer +from test_backup_client import assert_in_progress_operation from test_backup_client import assert_successful_operation @@ -46,14 +48,28 @@ async def test_full_backup_and_restore(self, container_uri, sas_token): # backup the vault backup_client = KeyVaultBackupClient(self.managed_hsm["url"], self.credential) backup_poller = await backup_client.begin_full_backup(container_uri, sas_token) + + # check backup status and result + job_id = backup_poller.polling_method().resource().id + backup_status = await backup_client.get_backup_status(job_id) + assert_in_progress_operation(backup_status) backup_operation = await backup_poller.result() assert_successful_operation(backup_operation) + backup_status = await backup_client.get_backup_status(job_id) + assert_successful_operation(backup_status) # restore the backup folder_name = backup_operation.azure_storage_blob_container_uri.split("/")[-1] restore_poller = await backup_client.begin_full_restore(container_uri, sas_token, folder_name) + + # check restore status and result + job_id = restore_poller.polling_method().resource().id + restore_status = await backup_client.get_restore_status(job_id) + assert_in_progress_operation(restore_status) restore_operation = await restore_poller.result() assert_successful_operation(restore_operation) + restore_status = await backup_client.get_restore_status(job_id) + assert_successful_operation(restore_status) @ResourceGroupPreparer(random_name_enabled=True, use_cache=True) @StorageAccountPreparer(random_name_enabled=True) @@ -67,16 +83,31 @@ async def test_selective_key_restore(self, container_uri, sas_token): # backup the vault backup_client = KeyVaultBackupClient(self.managed_hsm["url"], self.credential) backup_poller = await backup_client.begin_full_backup(container_uri, sas_token) + + # check backup status and result + job_id = backup_poller.polling_method().resource().id + backup_status = await backup_client.get_backup_status(job_id) + assert_in_progress_operation(backup_status) backup_operation = await backup_poller.result() assert_successful_operation(backup_operation) + backup_status = await backup_client.get_backup_status(job_id) + assert_successful_operation(backup_status) # restore the key folder_name = backup_operation.azure_storage_blob_container_uri.split("/")[-1] restore_poller = await backup_client.begin_selective_restore(container_uri, sas_token, folder_name, key_name) + + # check restore status and result + job_id = restore_poller.polling_method().resource().id + restore_status = await backup_client.get_restore_status(job_id) + assert_in_progress_operation(restore_status) restore_operation = await restore_poller.result() assert_successful_operation(restore_operation) + restore_status = await backup_client.get_restore_status(job_id) + assert_successful_operation(restore_status) - await key_client.delete_key(key_name) + # delete the key + await self._poll_until_no_exception(key_client.delete_key, key_name, expected_exception=ResourceExistsError) await key_client.purge_deleted_key(key_name)