diff --git a/sdk/keyvault/azure-keyvault/HISTORY.rst b/sdk/keyvault/azure-keyvault/HISTORY.rst deleted file mode 100644 index b4fade16d78e..000000000000 --- a/sdk/keyvault/azure-keyvault/HISTORY.rst +++ /dev/null @@ -1,140 +0,0 @@ -.. :changelog: - -Release History -=============== - -1.1.0 (2018-08-07) -++++++++++++++++++++ - -* Adding support for multi-api and API profiles - -1.0.0 (2018-06-27) -++++++++++++++++++++ - -* Moving azure-keyvault to stable API version 7.0 -* Adding support for EC certificate create and import -* Renaming curve SECP256K1 and algorithm ECDSA256 to P-256K and ES256K respectively - -1.0.0b1 (2018-04-10) -++++++++++++++++++++ - -* Upgraded to autorest 3.0 generated code - -**General Breaking changes** - -This version uses a next-generation code generator that *might* introduce breaking changes. - -- Model signatures now use only keyword-argument syntax. All positional arguments must be re-written as keyword-arguments. - To keep auto-completion in most cases, models are now generated for Python 2 and Python 3. Python 3 uses the "*" syntax for keyword-only arguments. -- Enum types now use the "str" mixin (class AzureEnum(str, Enum)) to improve the behavior when unrecognized enum values are encountered. - While this is not a breaking change, the distinctions are important, and are documented here: - https://docs.python.org/3/library/enum.html#others - At a glance: - - - "is" should not be used at all. - - "format" will return the string value, where "%s" string formatting will return `NameOfEnum.stringvalue`. Format syntax should be prefered. - -- New Long Running Operation: - - - Return type changes from `msrestazure.azure_operation.AzureOperationPoller` to `msrest.polling.LROPoller`. External API is the same. - - Return type is now **always** a `msrest.polling.LROPoller`, regardless of the optional parameters used. - - The behavior has changed when using `raw=True`. Instead of returning the initial call result as `ClientRawResponse`, - without polling, now this returns an LROPoller. After polling, the final resource will be returned as a `ClientRawResponse`. - - New `polling` parameter. The default behavior is `Polling=True` which will poll using ARM algorithm. When `Polling=False`, - the response of the initial call will be returned without polling. - - `polling` parameter accepts instances of subclasses of `msrest.polling.PollingMethod`. - - `add_done_callback` will no longer raise if called after polling is finished, but will instead execute the callback right away. - - -1.0.0a2 (2018-03-28) -++++++++++++++++++++ - -* Upgrading to API version 7.0-preview -* Adding elliptic curve key support -* Adding managed storage account key backup, restore and soft delete support -* Breaking update to managed storage account SasDefinition creation -* Adding certificate backup and restore support -* Adding certificate transparency - -1.0.0a1 (2018-01-25) -++++++++++++++++++++ -* Added message encryption support for message encryption enabled vaults - -0.3.7 (2017-09-22) -++++++++++++++++++ - -* Workaround for Azure Stack ADFS authentication issue https://github.com/Azure/azure-cli/issues/4448 - -0.3.6 (2017-08-16) -++++++++++++++++++ - -* Updated KeyVaultClient to accept both KeyVaultAuthentication and azure.common.credentials instances for authentication - -0.3.5 (2017-06-23) -++++++++++++++++++ - -* Fix: https://github.com/Azure/azure-sdk-for-python/issues/1159 -* KeyVaultId refactoring - - adding object specific id classes to make usage more uniform with other key vault SDKs - - added storage account id and storage sas definition id parsing and formatting - -0.3.4 (2017-06-07) -++++++++++++++++++ - -* Adding Preview Features - - Managed Storage Account keys for managing storage credentials and provisioning SAS tokens - - Key Vault "Soft Delete" allowing for recovery of deleted keys, secrets and certificates - - Secret Backup and Restore for secret recovery and migration - -0.3.3 (2017-05-10) -++++++++++++++++++ - -* Reverting to 0.3.0, since behavior of 0.3.2 is not satisfaying either. - -0.3.2 (2017-05-09) -++++++++++++++++++ - -* Fix critical regression on 0.3.1 (#1157) -* Now the client respects 'REQUESTS_CA_BUNDLE' and 'CURL_CA_BUNDLE' - -0.3.1 (2017-05-09) -++++++++++++++++++ - -* Support for REQUESTS_CA_BUNDLE (#1154) - -0.3.0 (2017-05-08) -++++++++++++++++++ - -* Moving KeyVaultClient class to the azure.keyvault namespace -* Moving model classes to the azure.keyvault.models namespace -* Deprecating 'generated' namespaces azure.keyvault.generated and azure.keyvault.generated.models -* Exposed KeyVaultId class through azure.keyvault namespace -* Moving identifier parsing methods to static methods on KeyVaultId class -* Removing convenience overridden methods from KeyVaultClient - - update_key(self, key_identifier, ... - - get_key(self, key_identifier, ... - - encrypt(self, key_identifier, ... - - decrypt(self, key_identifier, ... - - sign(self, key_identifier, ... - - verify(self, key_identifier, ... - - wrap_key(self, key_identifier, ... - - unwrap_key(self, key_identifier, ... - - update_secret(self, secret_identifer, ... - - get_secret(self, secret_identifer, ... - - get_certificate(self, certificate_identifier, ... - -0.2.0 (2017-04-19) -++++++++++++++++++ - -**Bugfixes** - -- Fix possible deserialization error, but updating from list to list when applicable - -**Notes** - -- This wheel package is now built with the azure wheel extension - -0.1.0 (2016-12-29) -++++++++++++++++++ - -* Initial Release diff --git a/sdk/keyvault/azure-keyvault/MANIFEST.in b/sdk/keyvault/azure-keyvault/MANIFEST.in deleted file mode 100644 index 0b7e52aea79a..000000000000 --- a/sdk/keyvault/azure-keyvault/MANIFEST.in +++ /dev/null @@ -1,2 +0,0 @@ -include *.rst -include azure/__init__.py diff --git a/sdk/keyvault/azure-keyvault/README.rst b/sdk/keyvault/azure-keyvault/README.rst deleted file mode 100644 index 26b035e3a419..000000000000 --- a/sdk/keyvault/azure-keyvault/README.rst +++ /dev/null @@ -1,46 +0,0 @@ -Microsoft Azure SDK for Python -============================== - -This is the Microsoft Azure Key Vault Client Library. - -This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. - -For a more complete set of Azure libraries, see the `azure `__ bundle package. - - -Compatibility -============= - -**IMPORTANT**: If you have an earlier version of the azure package -(version < 1.0), you should uninstall it before installing this package. - -You can check the version using pip: - -.. code:: shell - - pip freeze - -If you see azure==0.11.0 (or any version below 1.0), uninstall it first: - -.. code:: shell - - pip uninstall azure - - -Usage -===== - -For code examples, see `Key Vault -`__ -on docs.microsoft.com. - - -Provide Feedback -================ - -If you encounter any bugs or have suggestions, please file an issue in the -`Issues `__ -section of the project. - - -.. image:: https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-python%2Fazure-keyvault%2FREADME.png diff --git a/sdk/keyvault/azure-keyvault/azure/__init__.py b/sdk/keyvault/azure-keyvault/azure/__init__.py deleted file mode 100644 index 0260537a02bb..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/__init__.py +++ /dev/null @@ -1 +0,0 @@ -__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/__init__.py b/sdk/keyvault/azure-keyvault/azure/keyvault/__init__.py deleted file mode 100644 index 8b7a70246d1e..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/__init__.py +++ /dev/null @@ -1,46 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from . import http_bearer_challenge_cache as HttpBearerChallengeCache -from .http_challenge import HttpChallenge -from .http_bearer_challenge import HttpBearerChallenge -from .key_vault_authentication import KeyVaultAuthentication, KeyVaultAuthBase, AccessToken -from .http_message_security import generate_pop_key -from .key_vault_id import (KeyVaultId, - KeyId, - SecretId, - CertificateId, - CertificateIssuerId, - CertificateOperationId, - StorageAccountId, - StorageSasDefinitionId) -from .key_vault_client import KeyVaultClient -from .version import VERSION - -__all__ = ['KeyVaultClient', - 'KeyVaultId', - 'KeyId', - 'SecretId', - 'CertificateId', - 'CertificateIssuerId', - 'CertificateOperationId', - 'StorageAccountId', - 'StorageSasDefinitionId', - 'HttpBearerChallengeCache', - 'HttpBearerChallenge', - 'HttpChallenge', - 'KeyVaultAuthentication', - 'KeyVaultAuthBase', - 'generate_pop_key', - 'AccessToken'] - -__version__ = VERSION - diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/_internal.py b/sdk/keyvault/azure-keyvault/azure/keyvault/_internal.py deleted file mode 100644 index bd9a40ba9071..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/_internal.py +++ /dev/null @@ -1,410 +0,0 @@ -#--------------------------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -#--------------------------------------------------------------------------------------------- - -import json -import uuid -import codecs -from base64 import b64encode, b64decode -import cryptography -from cryptography.hazmat.primitives.ciphers import Cipher, algorithms, modes -from cryptography.hazmat.backends import default_backend -from cryptography.hazmat.primitives.asymmetric.rsa import RSAPrivateNumbers, RSAPublicNumbers, \ - generate_private_key, rsa_crt_dmp1, rsa_crt_dmq1, rsa_crt_iqmp, RSAPrivateKey, RSAPublicKey -from cryptography.hazmat.primitives.asymmetric import padding as asym_padding -from cryptography.hazmat.primitives import hashes, constant_time, padding, hmac - -from azure.keyvault.models import JsonWebKey - -def _a128cbc_hs256_encrypt(key, iv, plaintext, authdata): - if not key or not len(key) >= 32: - raise ValueError('key must be at least 256 bits for algorithm "A128CBC-HS256"') - if not iv or len(iv) != 16: - raise ValueError('iv must be 128 bits for algorithm "A128CBC-HS256"') - if not plaintext: - raise ValueError('plaintext must be specified') - if not authdata: - raise ValueError('authdata must be specified') - - # get the hmac key and the aes key from the specified key - hmac_key = key[:16] - aes_key = key[16:32] - - # calculate the length of authdata and store as bytes - auth_data_length = _int_to_bigendian_8_bytes(len(authdata) * 8) - - # pad the plaintext with pkcs7 - padder = padding.PKCS7(128).padder() - plaintext = padder.update(plaintext) + padder.finalize() - - # create the cipher and encrypt the plaintext - cipher = Cipher(algorithms.AES(aes_key), modes.CBC(iv), backend=default_backend()) - encryptor = cipher.encryptor() - ciphertext = encryptor.update(plaintext) + encryptor.finalize() - - # get the data to hash with HMAC, hash the data and take the first 16 bytes - hashdata = authdata + iv + ciphertext + auth_data_length - hmac_hash = hmac.HMAC(hmac_key, hashes.SHA256(), backend=default_backend()) - hmac_hash.update(hashdata) - tag = hmac_hash.finalize()[:16] - - return ciphertext, tag - - -def _a128cbc_hs256_decrypt(key, iv, ciphertext, authdata, authtag): - if not key or not len(key) >= 32: - raise ValueError('key must be at least 256 bits for algorithm "A128CBC-HS256"') - if not iv or len(iv) != 16: - raise ValueError('iv must be 128 bits for algorithm "A128CBC-HS256"') - if not ciphertext: - raise ValueError('ciphertext must be specified') - if not authdata: - raise ValueError('authdata must be specified') - if not authtag or len(authtag) != 16: - raise ValueError('authtag must be be 128 bits for algorithm "A128CBC-HS256"') - - hmac_key = key[:16] - aes_key = key[16:32] - auth_data_length = _int_to_bigendian_8_bytes(len(authdata) * 8) - - # ensure the authtag is the expected length for SHA256 hash - if not len(authtag) == 16: - raise ValueError('invalid tag') - - hashdata = authdata + iv + ciphertext + auth_data_length - hmac_hash = hmac.HMAC(hmac_key, hashes.SHA256(), backend=default_backend()) - hmac_hash.update(hashdata) - tag = hmac_hash.finalize()[:16] - - if not constant_time.bytes_eq(tag, authtag): - raise ValueError('"ciphertext" is not authentic') - - cipher = Cipher(algorithms.AES(aes_key), modes.CBC(iv), backend=default_backend()) - decryptor = cipher.decryptor() - plaintext = decryptor.update(ciphertext) + decryptor.finalize() - - # unpad the decrypted plaintext - padder = padding.PKCS7(128).unpadder() - plaintext = padder.update(plaintext) + padder.finalize() - - return plaintext - - -def _bytes_to_int(b): - if not b or not isinstance(b, bytes): - raise ValueError('b must be non-empty byte string') - - return int(codecs.encode(b, 'hex'), 16) - - -def _int_to_bytes(i): - h = hex(i) - if len(h) > 1 and h[0:2] == '0x': - h = h[2:] - - # need to strip L in python 2.x - h = h.strip('L') - - if len(h) % 2: - h = '0' + h - return codecs.decode(h, 'hex') - - -def _bstr_to_b64url(bstr, **kwargs): - """Serialize bytes into base-64 string. - :param str: Object to be serialized. - :rtype: str - """ - encoded = b64encode(bstr).decode() - return encoded.strip('=').replace('+', '-').replace('/', '_') - - -def _str_to_b64url(s, **kwargs): - """Serialize str into base-64 string. - :param str: Object to be serialized. - :rtype: str - """ - return _bstr_to_b64url(s.encode(encoding='utf8')) - - -def _b64_to_bstr(b64str): - """Deserialize base64 encoded string into string. - :param str b64str: response string to be deserialized. - :rtype: bytearray - :raises: TypeError if string format invalid. - """ - padding = '=' * (3 - (len(b64str) + 3) % 4) - b64str = b64str + padding - encoded = b64str.replace('-', '+').replace('_', '/') - return b64decode(encoded) - - -def _b64_to_str(b64str): - """Deserialize base64 encoded string into string. - :param str b64str: response string to be deserialized. - :rtype: str - :raises: TypeError if string format invalid. - """ - return _b64_to_bstr(b64str).decode('utf8') - - -def _int_to_bigendian_8_bytes(i): - b = _int_to_bytes(i) - - if len(b) > 8: - raise ValueError('the specified integer is to large to be represented by 8 bytes') - - if len(b) < 8: - b = (b'\0' * (8 - len(b))) + b - - return b - - -class _JoseObject(object): - - def deserialize(self, s): - d = json.loads(s) - self.__dict__ = d - return self - - def deserialize_b64(self, s): - self.deserialize(_b64_to_str(s)) - return self - - def serialize(self): - return json.dumps(self.__dict__) - - def serialize_b64url(self): - return _str_to_b64url(self.serialize()) - - -class _JoseHeader(_JoseObject): - - def to_compact_header(self): - return _str_to_b64url(json.dumps(self.__dict__)) - - -class _JweHeader(_JoseHeader): - def __init__(self, alg=None, kid=None, enc=None): - self.alg = alg - self.kid = kid - self.enc = enc - - @staticmethod - def from_compact_header(compact): - header = _JweHeader() - header.__dict__ = json.loads(_b64_to_str(compact)) - return header - - -class _JweObject(_JoseObject): - def __init__(self): - self.protected = None - self.encrypted_key = None - self.iv = None - self.ciphertext = None - self.tag = None - - def to_flattened_jwe(self): - if not (self.protected, self.encrypted_key, self.iv, self.ciphertext, self.tag): - raise ValueError('JWE is not complete.') - - return json.dumps(self.__dict__) - - -class _JwsHeader(_JoseHeader): - def __init__(self): - self.alg = None - self.kid = None - self.at = None - self.ts = None - self.p = None - self.typ = None - - @staticmethod - def from_compact_header(compact): - header = _JwsHeader() - header.__dict__ = json.loads(_b64_to_str(compact)) - return header - - -class _JwsObject(_JoseObject): - def __init__(self): - self.protected = None - self.payload = None - self.signature = None - - def to_flattened_jws(self): - if not (self.protected, self.payload, self.signature): - raise ValueError('JWS is not complete.') - - return json.dumps(self.__dict__) - - - -def _default_encryption_padding(): - return asym_padding.OAEP(mgf=asym_padding.MGF1(algorithm=hashes.SHA1()), algorithm=hashes.SHA1(), label=None) - - -def _default_signature_padding(): - return asym_padding.PKCS1v15() - - -def _default_signature_algorithm(): - return hashes.SHA256() - - -class _RsaKey(object): - PUBLIC_KEY_DEFAULT_OPS = ['encrypt', 'wrapKey', 'verify'] - PRIVATE_KEY_DEFAULT_OPS = ['encrypt', 'decrypt', 'wrapKey', 'unwrapKey', 'verify', 'sign'] - - def __init__(self): - self.kid = None - self.kty = None - self.key_ops = None - self._rsa_impl = None - - @property - def n(self): - return _int_to_bytes(self._public_key_material().n) - - @property - def e(self): - return _int_to_bytes(self._public_key_material().e) - - @property - def q(self): - return _int_to_bytes(self._private_key_material().q) if self.is_private_key() else None - - @property - def p(self): - return _int_to_bytes(self._private_key_material().p) if self.is_private_key() else None - - @property - def d(self): - return _int_to_bytes(self._private_key_material().d) if self.is_private_key() else None - - @property - def dq(self): - return _int_to_bytes(self._private_key_material().dmq1) if self.is_private_key() else None - - @property - def dp(self): - return _int_to_bytes(self._private_key_material().dmp1) if self.is_private_key() else None - - @property - def qi(self): - return _int_to_bytes(self._private_key_material().iqmp) if self.is_private_key() else None - - @property - def private_key(self): - return self._rsa_impl if self.is_private_key() else None - - @property - def public_key(self): - return self._rsa_impl.public_key() if self.is_private_key() else self._rsa_impl - - @staticmethod - def generate(kid=None, kty='RSA', size=2048, e=65537): - key = _RsaKey() - key.kid = kid or str(uuid.uuid4()) - key.kty = kty - key.key_ops = _RsaKey.PRIVATE_KEY_DEFAULT_OPS - key._rsa_impl = generate_private_key(public_exponent=e, - key_size=size, - backend=cryptography.hazmat.backends.default_backend()) - return key - - @staticmethod - def from_jwk_str(s): - jwk_dict = json.loads(s) - jwk = JsonWebKey.from_dict(jwk_dict) - return _RsaKey.from_jwk(jwk) - - @staticmethod - def from_jwk(jwk): - if not isinstance(jwk, JsonWebKey): - raise TypeError('The specified jwk must be a JsonWebKey') - - if jwk.kty != 'RSA' and jwk.kty != 'RSA-HSM': - raise ValueError('The specified jwk must have a key type of "RSA" or "RSA-HSM"') - - if not jwk.n or not jwk.e: - raise ValueError('Invalid RSA jwk, both n and e must be have values') - - rsa_key = _RsaKey() - rsa_key.kid = jwk.kid - rsa_key.kty = jwk.kty - rsa_key.key_ops = jwk.key_ops - - pub = RSAPublicNumbers(n=_bytes_to_int(jwk.n), e=_bytes_to_int(jwk.e)) - - # if the private key values are specified construct a private key - # only the secret primes and private exponent are needed as other fields can be calculated - if jwk.p and jwk.q and jwk.d: - # convert the values of p, q, and d from bytes to int - p = _bytes_to_int(jwk.p) - q = _bytes_to_int(jwk.q) - d = _bytes_to_int(jwk.d) - - # convert or compute the remaining private key numbers - dmp1 = _bytes_to_int(jwk.dp) if jwk.dp else rsa_crt_dmp1(private_exponent=d, p=p) - dmq1 = _bytes_to_int(jwk.dq) if jwk.dq else rsa_crt_dmq1(private_exponent=d, q=q) - iqmp = _bytes_to_int(jwk.qi) if jwk.qi else rsa_crt_iqmp(p=p, q=q) - - # create the private key from the jwk key values - priv = RSAPrivateNumbers(p=p, q=q, d=d, dmp1=dmp1, dmq1=dmq1, iqmp=iqmp, public_numbers=pub) - key_impl = priv.private_key(cryptography.hazmat.backends.default_backend()) - - # if the necessary private key values are not specified create the public key - else: - key_impl = pub.public_key(cryptography.hazmat.backends.default_backend()) - - rsa_key._rsa_impl = key_impl - - return rsa_key - - def to_jwk(self, include_private=False): - jwk = JsonWebKey(kid=self.kid, - kty=self.kty, - key_ops=self.key_ops if include_private else _RsaKey.PUBLIC_KEY_DEFAULT_OPS, - n=self.n, - e=self.e) - - if include_private: - jwk.q = self.q - jwk.p = self.p - jwk.d = self.d - jwk.dq = self.dq - jwk.dp = self.dp - jwk.qi = self.qi - - return jwk - - def encrypt(self, plaintext, padding=_default_encryption_padding()): - return self.public_key.encrypt(plaintext, padding) - - def decrypt(self, ciphertext, padding=_default_encryption_padding()): - if not self.is_private_key(): - raise NotImplementedError('The current RsaKey does not support decrypt') - - return self.private_key.decrypt(ciphertext, padding) - - def sign(self, data, padding=_default_signature_padding(), algorithm=_default_signature_algorithm()): - if not self.is_private_key(): - raise NotImplementedError('The current RsaKey does not support sign') - - return self.private_key.sign(data, padding, algorithm) - - def verify(self, signature, data, padding=_default_signature_padding(), algorithm=_default_signature_algorithm()): - return self.public_key.verify(signature, data, padding, algorithm) - - def is_private_key(self): - return isinstance(self._rsa_impl, RSAPrivateKey) - - def _public_key_material(self): - return self.public_key.public_numbers() - - def _private_key_material(self): - return self.private_key.private_numbers() if self.private_key else None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/http_bearer_challenge.py b/sdk/keyvault/azure-keyvault/azure/keyvault/http_bearer_challenge.py deleted file mode 100644 index e6bb3f66e535..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/http_bearer_challenge.py +++ /dev/null @@ -1,98 +0,0 @@ -#--------------------------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -#--------------------------------------------------------------------------------------------- - -try: - import urllib.parse as parse -except ImportError: - import urlparse as parse # pylint: disable=import-error - - -class HttpBearerChallenge(object): - - def __init__(self, request_uri, challenge): - """ Parses an HTTP WWW-Authentication Bearer challenge from a server. """ - self.source_authority = self._validate_request_uri(request_uri) - self.source_uri = request_uri - self._parameters = {} - - trimmed_challenge = self._validate_challenge(challenge) - - # split trimmed challenge into comma-separated name=value pairs. Values are expected - # to be surrounded by quotes which are stripped here. - for item in trimmed_challenge.split(','): - # process name=value pairs - comps = item.split('=') - if len(comps) == 2: - key = comps[0].strip(' "') - value = comps[1].strip(' "') - if key: - self._parameters[key] = value - - # minimum set of parameters - if not self._parameters: - raise ValueError('Invalid challenge parameters') - - # must specify authorization or authorization_uri - if 'authorization' not in self._parameters and 'authorization_uri' not in self._parameters: - raise ValueError('Invalid challenge parameters') - - # pylint: disable=no-self-use - @staticmethod - def is_bearer_challenge(authentication_header): - """ Tests whether an authentication header is a Bearer challenge. - :param authentication_header: the authentication header to test - rtype: bool """ - if not authentication_header: - return False - - return authentication_header.strip().startswith('Bearer ') - - def get_value(self, key): - return self._parameters.get(key) - - def get_authorization_server(self): - """ Returns the URI for the authorization server if present, otherwise empty string. """ - value = '' - for key in ['authorization_uri', 'authorization']: - value = self.get_value(key) or '' - if value: - break - return value - - def get_resource(self): - """ Returns the resource if present, otherwise empty string. """ - return self.get_value('resource') or '' - - def get_scope(self): - """ Returns the scope if present, otherwise empty string. """ - return self.get_value('scope') or '' - - # pylint: disable=no-self-use - def _validate_challenge(self, challenge): - """ Verifies that the challenge is a Bearer challenge and returns the key=value pairs. """ - bearer_string = 'Bearer ' - if not challenge: - raise ValueError('Challenge cannot be empty') - - challenge = challenge.strip() - if not challenge.startswith(bearer_string): - raise ValueError('Challenge is not Bearer') - - return challenge[len(bearer_string):] - - # pylint: disable=no-self-use - def _validate_request_uri(self, uri): - """ Extracts the host authority from the given URI. """ - if not uri: - raise ValueError('request_uri cannot be empty') - - uri = parse.urlparse(uri) - if not uri.netloc: - raise ValueError('request_uri must be an absolute URI') - - if uri.scheme.lower() not in ['http', 'https']: - raise ValueError('request_uri must be HTTP or HTTPS') - - return uri.netloc diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/http_bearer_challenge_cache/__init__.py b/sdk/keyvault/azure-keyvault/azure/keyvault/http_bearer_challenge_cache/__init__.py deleted file mode 100644 index f4948ffe6fb9..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/http_bearer_challenge_cache/__init__.py +++ /dev/null @@ -1,77 +0,0 @@ -#--------------------------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -#--------------------------------------------------------------------------------------------- - -from threading import Lock - -try: - import urllib.parse as parse -except ImportError: - import urlparse as parse # pylint: disable=import-error - -_cache = {} -_lock = Lock() - -def get_challenge_for_url(url): - """ Gets the challenge for the cached URL. - :param url: the URL the challenge is cached for. - :rtype: HttpBearerChallenge """ - if not url: - raise ValueError('URL cannot be None') - - url = parse.urlparse(url) - - _lock.acquire() - - val = _cache.get(url.netloc) - - _lock.release() - - return val - - -def remove_challenge_for_url(url): - """ Removes the cached challenge for the specified URL. - :param url: the URL for which to remove the cached challenge """ - if not url: - raise ValueError('URL cannot be empty') - - url = parse.urlparse(url) - - _lock.acquire() - - del _cache[url.netloc] - - _lock.release() - - -def set_challenge_for_url(url, challenge): - """ Caches the challenge for the specified URL. - :param url: the URL for which to cache the challenge - :param challenge: the challenge to cache """ - if not url: - raise ValueError('URL cannot be empty') - - if not challenge: - raise ValueError('Challenge cannot be empty') - - src_url = parse.urlparse(url) - if src_url.netloc != challenge.source_authority: - raise ValueError('Source URL and Challenge URL do not match') - - _lock.acquire() - - _cache[src_url.netloc] = challenge - - _lock.release() - - -def clear(): - """ Clears the cache. """ - - _lock.acquire() - - _cache.clear() # pylint: disable=redefined-outer-name,unused-variable - - _lock.release() diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/http_challenge.py b/sdk/keyvault/azure-keyvault/azure/keyvault/http_challenge.py deleted file mode 100644 index e6d75f15f158..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/http_challenge.py +++ /dev/null @@ -1,115 +0,0 @@ -#--------------------------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -#--------------------------------------------------------------------------------------------- - -try: - import urllib.parse as parse -except ImportError: - import urlparse as parse # pylint: disable=import-error - - -class HttpChallenge(object): - - def __init__(self, request_uri, challenge, response_headers=None): - """ Parses an HTTP WWW-Authentication Bearer challenge from a server. """ - self.source_authority = self._validate_request_uri(request_uri) - self.source_uri = request_uri - self._parameters = {} - - # get the scheme of the challenge and remove from the challenge string - trimmed_challenge = self._validate_challenge(challenge) - split_challenge = trimmed_challenge.split(' ', 1) - self.scheme = split_challenge[0] - trimmed_challenge = split_challenge[1] - - # split trimmed challenge into comma-separated name=value pairs. Values are expected - # to be surrounded by quotes which are stripped here. - for item in trimmed_challenge.split(','): - # process name=value pairs - comps = item.split('=') - if len(comps) == 2: - key = comps[0].strip(' "') - value = comps[1].strip(' "') - if key: - self._parameters[key] = value - - # minimum set of parameters - if not self._parameters: - raise ValueError('Invalid challenge parameters') - - # must specify authorization or authorization_uri - if 'authorization' not in self._parameters and 'authorization_uri' not in self._parameters: - raise ValueError('Invalid challenge parameters') - - # if the response headers were supplied - if response_headers: - # get the message signing key and message key encryption key from the headers - self.server_signature_key = response_headers.get('x-ms-message-signing-key', None) - self.server_encryption_key = response_headers.get('x-ms-message-encryption-key', None) - - def is_bearer_challenge(self): - """ Tests whether the HttpChallenge a Bearer challenge. - rtype: bool """ - if not self.scheme: - return False - - return self.scheme.lower() == 'bearer' - - def is_pop_challenge(self): - """ Tests whether the HttpChallenge is a proof of possession challenge. - rtype: bool """ - if not self.scheme: - return False - - return self.scheme.lower() == 'pop' - - def get_value(self, key): - return self._parameters.get(key) - - def get_authorization_server(self): - """ Returns the URI for the authorization server if present, otherwise empty string. """ - value = '' - for key in ['authorization_uri', 'authorization']: - value = self.get_value(key) or '' - if value: - break - return value - - def get_resource(self): - """ Returns the resource if present, otherwise empty string. """ - return self.get_value('resource') or '' - - def get_scope(self): - """ Returns the scope if present, otherwise empty string. """ - return self.get_value('scope') or '' - - def supports_pop(self): - """ Returns True if challenge supports pop token auth else False """ - return self._parameters.get('supportspop', '').lower() == 'true' - - def supports_message_protection(self): - """ Returns True if challenge vault supports message protection """ - return self.supports_pop() and self.server_encryption_key and self.server_signature_key - - def _validate_challenge(self, challenge): - """ Verifies that the challenge is a valid auth challenge and returns the key=value pairs. """ - if not challenge: - raise ValueError('Challenge cannot be empty') - - return challenge.strip() - - # pylint: disable=no-self-use - def _validate_request_uri(self, uri): - """ Extracts the host authority from the given URI. """ - if not uri: - raise ValueError('request_uri cannot be empty') - - uri = parse.urlparse(uri) - if not uri.netloc: - raise ValueError('request_uri must be an absolute URI') - - if uri.scheme.lower() not in ['http', 'https']: - raise ValueError('request_uri must be HTTP or HTTPS') - - return uri.netloc diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/http_message_security.py b/sdk/keyvault/azure-keyvault/azure/keyvault/http_message_security.py deleted file mode 100644 index a321e989cb88..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/http_message_security.py +++ /dev/null @@ -1,192 +0,0 @@ -#--------------------------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -#--------------------------------------------------------------------------------------------- - -import json -import time -import os -from ._internal import _a128cbc_hs256_encrypt, _a128cbc_hs256_decrypt, _JwsHeader, _JwsObject, \ - _JweHeader, _JweObject, _str_to_b64url, _bstr_to_b64url, _b64_to_bstr, _RsaKey - - -def generate_pop_key(): - """ - Generates a key which can be used for Proof Of Possession token authentication. - :return: - """ - return _RsaKey.generate() - - -class HttpMessageSecurity(object): - """ - Used for message authorization, encryption and decrtyption. - - This class is intended for internal use only. Details are subject to non-compatible changes, consumers of the - azure-keyvault module should not take dependencies on this class or its current implementation. - """ - def __init__(self, client_security_token=None, - client_signature_key=None, - client_encryption_key=None, - server_signature_key=None, - server_encryption_key=None): - self.client_security_token = client_security_token - self.client_signature_key = client_signature_key - self.client_encryption_key = client_encryption_key - self.server_signature_key = server_signature_key - self.server_encryption_key = server_encryption_key - - def protect_request(self, request): - """ - Adds authorization header, and encrypts and signs the request if supported on the specific request. - :param request: unprotected request to apply security protocol - :return: protected request with appropriate security protocal applied - """ - # Setup the auth header on the request - # Due to limitations in the service we hard code the auth scheme to 'Bearer' as the service will fail with any - # other scheme or a different casing such as 'bearer', once this is fixed the following line should be replaced: - # request.headers['Authorization'] = '{} {}'.format(auth[0], auth[1]) - request.headers['Authorization'] = '{} {}'.format('Bearer', self.client_security_token) - - # if the current message security doesn't support message protection, or the body is empty - # skip protection and return the original request - if not self.supports_protection() or len(request.body) == 0: - return request - - plain_text = request.body - - # if the client encryption key is specified add it to the body of the request - if self.client_encryption_key: - # note that this assumes that the body is already json and not simple string content - # this is true for all requests which currently support message encryption, but might - # need to be revisited when the types of - body_dict = json.loads(plain_text) - body_dict['rek'] = {'jwk': self.client_encryption_key.to_jwk().serialize()} - plain_text = json.dumps(body_dict).encode(encoding='utf8') - - # build the header for the jws body - jws_header = _JwsHeader() - jws_header.alg = 'RS256' - jws_header.kid = self.client_signature_key.kid - jws_header.at = self.client_security_token - jws_header.ts = int(time.time()) - jws_header.typ = 'PoP' - - jws = _JwsObject() - - jws.protected = jws_header.to_compact_header() - jws.payload = self._protect_payload(plain_text) - data = (jws.protected + '.' + jws.payload).encode('ascii') - jws.signature = _bstr_to_b64url(self.client_signature_key.sign(data)) - - request.headers['Content-Type'] = 'application/jose+json' - - request.prepare_body(data=jws.to_flattened_jws(), files=None) - - return request - - def unprotect_response(self, response, **kwargs): - """ - Removes protection from the specified response - :param request: response from the key vault service - :return: unprotected response with any security protocal encryption removed - """ - body = response.content - # if the current message security doesn't support message protection, the body is empty, or the request failed - # skip protection and return the original response - if not self.supports_protection() or len(response.content) == 0 or response.status_code != 200: - return response - - # ensure the content-type is application/jose+json - if 'application/jose+json' not in response.headers.get('content-type', '').lower(): - raise ValueError('Invalid protected response') - - # deserialize the response into a JwsObject, using response.text so requests handles the encoding - jws = _JwsObject().deserialize(body) - - # deserialize the protected header - jws_header = _JwsHeader.from_compact_header(jws.protected) - - # ensure the jws signature kid matches the key from original challenge - # and the alg matches expected signature alg - if jws_header.kid != self.server_signature_key.kid \ - or jws_header.alg != 'RS256': - raise ValueError('Invalid protected response') - - # validate the signature of the jws - data = (jws.protected + '.' + jws.payload).encode('ascii') - # verify will raise an InvalidSignature exception if the signature doesn't match - self.server_signature_key.verify(signature=_b64_to_bstr(jws.signature), data=data) - - # get the unprotected response body - decrypted = self._unprotect_payload(jws.payload) - - response._content = decrypted - response.headers['Content-Type'] = 'application/json' - - return response - - def supports_protection(self): - """ - Determines if the the current HttpMessageSecurity object supports the message protection protocol. - :return: True if the current object supports protection, otherwise False - """ - return self.client_signature_key \ - and self.client_encryption_key \ - and self.server_signature_key \ - and self.server_encryption_key - - def _protect_payload(self, plaintext): - # create the jwe header for the payload - kek = self.server_encryption_key - jwe_header = _JweHeader() - jwe_header.alg = 'RSA-OAEP' - jwe_header.kid = kek.kid - jwe_header.enc = 'A128CBC-HS256' - - # create the jwe object - jwe = _JweObject() - jwe.protected = jwe_header.to_compact_header() - - # generate the content encryption key and iv - cek = os.urandom(32) - iv = os.urandom(16) - jwe.iv = _bstr_to_b64url(iv) - # wrap the cek using the server encryption key - wrapped = _bstr_to_b64url(kek.encrypt(cek)) - jwe.encrypted_key = wrapped - - # encrypt the plaintext body with the cek using the protected header - # as the authdata to get the ciphertext and the authtag - ciphertext, tag = _a128cbc_hs256_encrypt(cek, iv, plaintext, jwe.protected.encode('ascii')) - - jwe.ciphertext = _bstr_to_b64url(ciphertext) - jwe.tag = _bstr_to_b64url(tag) - - # flatten and encode the jwe for the final jws payload content - flat = jwe.to_flattened_jwe() - return _str_to_b64url(flat) - - def _unprotect_payload(self, payload): - # deserialize the payload - jwe = _JweObject().deserialize_b64(payload) - - # deserialize the payload header - jwe_header = _JweHeader.from_compact_header(jwe.protected) - - # ensure the kid matches the specified client encryption key - # and the key wrap alg and the data encryption enc match the expected - if self.client_encryption_key.kid != jwe_header.kid \ - or jwe_header.alg != 'RSA-OAEP' \ - or jwe_header.enc != 'A128CBC-HS256': - raise ValueError('Invalid protected response') - - # unwrap the cek using the client encryption key - cek = self.client_encryption_key.decrypt(_b64_to_bstr(jwe.encrypted_key)) - - # decrypt the cipher text to get the unprotected body content - return _a128cbc_hs256_decrypt(cek, - _b64_to_bstr(jwe.iv), - _b64_to_bstr(jwe.ciphertext), - jwe.protected.encode('ascii'), - _b64_to_bstr(jwe.tag)) \ No newline at end of file diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/key_vault_authentication.py b/sdk/keyvault/azure-keyvault/azure/keyvault/key_vault_authentication.py deleted file mode 100644 index b5d72067fad4..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/key_vault_authentication.py +++ /dev/null @@ -1,243 +0,0 @@ -#--------------------------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -#--------------------------------------------------------------------------------------------- - -import inspect -import threading -from collections import namedtuple - -import requests -from azure.keyvault import http_bearer_challenge_cache as ChallengeCache -from azure.keyvault.http_challenge import HttpChallenge -from azure.keyvault.http_message_security import HttpMessageSecurity -from azure.keyvault._internal import _RsaKey -from msrest.authentication import OAuthTokenAuthentication -from requests.auth import AuthBase -from requests.cookies import extract_cookies_to_jar - -AccessToken = namedtuple('AccessToken', ['scheme', 'token', 'key']) -AccessToken.__new__.__defaults__ = ('Bearer', None, None) - -_message_protection_supported_methods = ['sign', 'verify', 'encrypt', 'decrypt', 'wrapkey', 'unwrapkey'] - - -def _message_protection_supported(challenge, request): - # right now only specific key operations are supported so return true only - # if the vault supports message protection, the request is to the keys collection - # and the requested operation supports it - return challenge.supports_message_protection() \ - and '/keys/' in request.url \ - and request.url.split('?')[0].strip('/').split('/')[-1].lower() in _message_protection_supported_methods - - -class KeyVaultAuthBase(AuthBase): - """ - Used for handling authentication challenges, by hooking into the request AuthBase extension model. - """ - - def __init__(self, authorization_callback): - """ - Creates a new KeyVaultAuthBase instance used for handling authentication challenges, by hooking into the request AuthBase - extension model. - :param authorization_callback: A callback used to provide authentication credentials to the key vault data service. - This callback should take four str arguments: authorization uri, resource, scope, and scheme, and return - an AccessToken - return AccessToken(scheme=token['token_type'], token=token['access_token']) - Note: for backward compatibility a tuple of the scheme and token can also be returned. - return token['token_type'], token['access_token'] - """ - self._user_callback = authorization_callback - self._callback = self._auth_callback_compat - self._token = None - self._thread_local = threading.local() - self._thread_local.pos = None - self._thread_local.auth_attempted = False - self._thread_local.orig_body = None - - # for backwards compatibility we need to support callbacks which don't accept the scheme - def _auth_callback_compat(self, server, resource, scope, scheme): - return self._user_callback(server, resource, scope) \ - if len(inspect.getargspec(self._user_callback).args) == 3 \ - else self._user_callback(server, resource, scope, scheme) - - def __call__(self, request): - """ - Called prior to requests being sent. - :param request: Request to be sent - :return: returns the original request, registering hooks on the response if it is the first time this url has been called and an - auth challenge might be returned - """ - # attempt to pre-fetch challenge if cached - if self._callback: - challenge = ChallengeCache.get_challenge_for_url(request.url) - if challenge: - # if challenge cached get the message security - security = self._get_message_security(request, challenge) - # protect the request - security.protect_request(request) - # register a response hook to unprotect the response - request.register_hook('response', security.unprotect_response) - else: - # if the challenge is not cached we will strip the body and proceed without the auth header so we - # get back the auth challenge for the request - self._thread_local.orig_body = request.body - request.body = '' - request.headers['Content-Length'] = 0 - request.register_hook('response', self._handle_401) - request.register_hook('response', self._handle_redirect) - self._thread_local.auth_attempted = False - - return request - - def _handle_redirect(self, r, **kwargs): - """Reset auth_attempted on redirects.""" - if r.is_redirect: - self._thread_local.auth_attempted = False - - def _handle_401(self, response, **kwargs): - """ - Takes the response authenticates and resends if neccissary - :return: The final response to the authenticated request - :rtype: requests.Response - """ - # If response is not 401 do not auth and return response - if not response.status_code == 401: - self._thread_local.auth_attempted = False - return response - - # If we've already attempted to auth for this request once, do not auth and return response - if self._thread_local.auth_attempted: - self._thread_local.auth_attempted = False - return response - - auth_header = response.headers.get('www-authenticate', '') - - # Otherwise authenticate and retry the request - self._thread_local.auth_attempted = True - - # parse the challenge - challenge = HttpChallenge(response.request.url, auth_header, response.headers) - - # bearer and PoP are the only authentication schemes supported at this time - # if the response auth header is not a bearer challenge or pop challange do not auth and return response - if not (challenge.is_bearer_challenge() or challenge.is_pop_challenge()): - self._thread_local.auth_attempted = False - return response - - # add the challenge to the cache - ChallengeCache.set_challenge_for_url(response.request.url, challenge) - - # Consume content and release the original connection - # to allow our new request to reuse the same one. - response.content - response.close() - - # copy the request to resend - prep = response.request.copy() - - if self._thread_local.orig_body is not None: - # replace the body with the saved body - prep.prepare_body(data=self._thread_local.orig_body, files=None) - - extract_cookies_to_jar(prep._cookies, response.request, response.raw) - prep.prepare_cookies(prep._cookies) - - security = self._get_message_security(prep, challenge) - - # auth and protect the prepped request message - security.protect_request(prep) - - # resend the request with proper authentication and message protection - _response = response.connection.send(prep, **kwargs) - _response.history.append(response) - _response.request = prep - - # unprotected the response - security.unprotect_response(_response) - - return _response - - def _get_message_security(self, request, challenge): - scheme = challenge.scheme - - # if the given request can be protected ensure the scheme is PoP so the proper access token is requested - if _message_protection_supported(challenge, request): - scheme = 'PoP' - - # use the authentication_callback to get the token and create the message security - token = AccessToken(*self._callback(challenge.get_authorization_server(), - challenge.get_resource(), - challenge.get_scope(), - scheme)) - security = HttpMessageSecurity(client_security_token=token.token) - - # if the given request can be protected add the appropriate keys to the message security - if scheme == 'PoP': - security.client_signature_key = token.key - security.client_encryption_key = _RsaKey.generate() - security.server_encryption_key = _RsaKey.from_jwk_str(challenge.server_encryption_key) - security.server_signature_key = _RsaKey.from_jwk_str(challenge.server_signature_key) - - return security - - -class KeyVaultAuthentication(OAuthTokenAuthentication): - """ - Authentication class to be used as credentials for the KeyVaultClient. - :Example Usage: - def auth_callack(server, resource, scope): - self.data_creds = self.data_creds or ServicePrincipalCredentials(client_id=self.config.client_id, - secret=self.config.client_secret, - tenant=self.config.tenant_id, - resource=resource) - token = self.data_creds.token - return token['token_type'], token['access_token'] - - self.keyvault_data_client = KeyVaultClient(KeyVaultAuthentication(auth_callack)) - """ - - def __init__(self, authorization_callback=None, credentials=None): - """ - Creates a new KeyVaultAuthentication instance used for authentication in the KeyVaultClient - :param authorization_callback: A callback used to provide authentication credentials to the key vault data service. - This callback should take three str arguments: authorization uri, resource, and scope, and return - a tuple of (token type, access token). - :param credentials:: Credentials needed for the client to connect to Azure. - :type credentials: :mod:`A msrestazure Credentials - object` - """ - if not authorization_callback and not credentials: - raise ValueError("Either parameter 'authorization_callback' or parameter 'credentials' must be specified.") - - # super(KeyVaultAuthentication, self).__init__() - - self._credentials = credentials - - if not authorization_callback: - def auth_callback(server, resource, scope, scheme): - if self._credentials.resource != resource: - self._credentials.resource = resource - self._credentials.set_token() - token = self._credentials.token - return AccessToken(scheme=token['token_type'], token=token['access_token'], key=None) - - authorization_callback = auth_callback - - self.auth = KeyVaultAuthBase(authorization_callback) - self._callback = authorization_callback - - def signed_session(self, session=None): - session = session or requests.Session() - session.auth = self.auth - return session - - def refresh_session(self): - """Return updated session if token has expired, attempts to - refresh using refresh token. - - :rtype: requests.Session. - """ - if self._credentials: - self._credentials.refresh_session() - return self.signed_session() diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/key_vault_client.py b/sdk/keyvault/azure-keyvault/azure/keyvault/key_vault_client.py deleted file mode 100644 index 7a54e28b56bb..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/key_vault_client.py +++ /dev/null @@ -1,255 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- -import uuid -from msrest.pipeline import ClientRawResponse -from msrestazure import AzureConfiguration -from msrestazure.azure_active_directory import BasicTokenAuthentication - -from azure.profiles import KnownProfiles, ProfileDefinition -from azure.profiles.multiapiclient import MultiApiClientMixin -from .version import VERSION -from . import KeyVaultAuthentication - -from azure.keyvault.v7_0.version import VERSION as v7_0_VERSION -from azure.keyvault.v2016_10_01.version import VERSION as v2016_10_01_VERSION - - -class KeyVaultClientConfiguration(AzureConfiguration): - """Configuration for KeyVaultClient - Note that all parameters used to create this instance are saved as instance - attributes. - - :param credentials: Credentials needed for the client to connect to Azure. - :type credentials: :mod:`A msrestazure Credentials - object` - """ - - def __init__( - self, credentials): - - if credentials is None: - raise ValueError("Parameter 'credentials' must not be None.") - base_url = '{vaultBaseUrl}' - - super(KeyVaultClientConfiguration, self).__init__(base_url) - - self.add_user_agent('azure-keyvault/{}'.format(VERSION)) - self.add_user_agent('Azure-SDK-For-Python') - - self.credentials = credentials - - -class KeyVaultClient(MultiApiClientMixin): - """The key vault client performs cryptographic key operations and vault operations against the Key Vault service. - Implementation depends on the API version: - - * 2016-10-01: :class:`v2016_10_01.KeyVaultClient` - * 7.0: :class:`v7_0.KeyVaultClient` - - :ivar config: Configuration for client. - :vartype config: KeyVaultClientConfiguration - - :param credentials: Credentials needed for the client to connect to Azure. - :type credentials: :mod:`A msrestazure Credentials - object` - - :param str api_version: API version to use if no profile is provided, or if - missing in profile. - :param profile: A profile definition, from KnownProfiles to dict. - :type profile: azure.profiles.KnownProfiles - """ - - DEFAULT_API_VERSION = '7.0' - _PROFILE_TAG = "azure.keyvault.KeyVaultClient" - LATEST_PROFILE = ProfileDefinition({ - _PROFILE_TAG: { - None: DEFAULT_API_VERSION - }}, - _PROFILE_TAG + " latest" - ) - - _init_complete = False - def __init__(self, credentials, api_version=None, profile=KnownProfiles.default): - self.config = KeyVaultClientConfiguration(credentials) - self._client_impls = {} - self._entered = False - super(KeyVaultClient, self).__init__( - api_version=api_version, - profile=profile - ) - - # if the supplied credentials instance is not derived from KeyVaultAuthBase but is an AAD credential type - if not isinstance(credentials, KeyVaultAuthentication) and isinstance(credentials, BasicTokenAuthentication): - - # wrap the supplied credentials with a KeyVaultAuthentication instance. Use that for the credentials - # supplied to the base client - credentials = KeyVaultAuthentication(credentials=credentials) - - self._credentials = credentials - self._init_complete = True - - @property - def models(self): - """Module depends on the API version: - * 2016-10-01: :mod:`v2016_10_01.models` - * 7.0: :mod:`v7_0.models` - """ - api_version = self._get_api_version(None) - - if api_version == v7_0_VERSION: - from azure.keyvault.v7_0 import models as implModels - elif api_version == v2016_10_01_VERSION: - from azure.keyvault.v2016_10_01 import models as implModels - else: - raise NotImplementedError("APIVersion {} is not available".format(api_version)) - return implModels - - def _get_client_impl(self): - """ - Get the versioned client implementation corresponding to the current profile. - :return: The versioned client implementation. - """ - api_version = self._get_api_version(None) - if api_version not in self._client_impls: - self._create_client_impl(api_version) - return self._client_impls[api_version] - - def _create_client_impl(self, api_version): - """ - Creates the client implementation corresponding to the specifeid api_version. - :param api_version: - :return: - """ - if api_version == v7_0_VERSION: - from azure.keyvault.v7_0 import KeyVaultClient as ImplClient - elif api_version == v2016_10_01_VERSION: - from azure.keyvault.v2016_10_01 import KeyVaultClient as ImplClient - else: - raise NotImplementedError("APIVersion {} is not available".format(api_version)) - - impl = ImplClient(credentials=self._credentials) - impl.config = self.config - - # if __enter__ has previously been called and the impl client has __enter__ defined we need to call it - if self._entered and hasattr(impl, '__enter__'): - impl.__enter__() - - self._client_impls[api_version] = impl - return impl - - def __enter__(self, *args, **kwargs): - """ - Calls __enter__ on all client implementations which support it - :param args: positional arguments to relay to client implementations of __enter__ - :param kwargs: keyword arguments to relay to client implementations of __enter__ - :return: returns the current KeyVaultClient instance - """ - for _, impl in self._client_impls.items(): - if hasattr(impl, '__enter__'): - impl.__enter__(*args, **kwargs) - # mark the current KeyVaultClient as _entered so that client implementations instantiated - # subsequently will also have __enter__ called on them as appropriate - self._entered = True - return self - - def __exit__(self, *args, **kwargs): - """ - Calls __exit__ on all client implementations which support it - :param args: positional arguments to relay to client implementations of __enter__ - :param kwargs: keyword arguments to relay to client implementations of __enter__ - :return: returns the current KeyVaultClient instance - """ - for _, impl in self._client_impls.items(): - if hasattr(impl, '__exit__'): - impl.__exit__(*args, **kwargs) - return self - - def __getattr__(self, name): - """ - In the case that the attribute is not defined on the custom KeyVaultClient. Attempt to get - the attribute from the versioned client implementation corresponding to the current profile. - :param name: Name of the attribute retrieve from the current versioned client implementation - :return: The value of the specified attribute on the current client implementation. - """ - impl = self._get_client_impl() - return getattr(impl, name) - - def __setattr__(self, name, attr): - """ - Sets the specified attribute either on the custom KeyVaultClient or the current underlying implementation. - :param name: Name of the attribute to set - :param attr: Value of the attribute to set - :return: None - """ - if self._init_complete and not hasattr(self, name): - impl = self._get_client_impl() - setattr(impl, name, attr) - else: - super(KeyVaultClient, self).__setattr__(name, attr) - - def get_pending_certificate_signing_request(self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Gets the Base64 pending certificate signing request (PKCS-10). - - :param vault_base_url: The vault name, e.g. - https://myvault.vault.azure.net - :type vault_base_url: str - :param certificate_name: The name of the certificate - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: Base64 encoded pending certificate signing request (PKCS-10). - :rtype: str - :rtype: :class:`ClientRawResponse` - if raw=true - """ - # Construct URL - url = '/certificates/{certificate-name}/pending' - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Accept'] = 'application/pkcs10' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters, header_parameters) - response = self._client.send(request, stream=True, **operation_config) - - if response.status_code not in [200]: - raise self.models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = response.body() if hasattr(response, 'body') else response.content - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/key_vault_id.py b/sdk/keyvault/azure-keyvault/azure/keyvault/key_vault_id.py deleted file mode 100644 index 912e5881ca91..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/key_vault_id.py +++ /dev/null @@ -1,442 +0,0 @@ -# --------------------------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# --------------------------------------------------------------------------------------------- - -try: - import urllib.parse as parse -except ImportError: - import urlparse as parse # pylint: disable=import-error - -from enum import Enum - - -class KeyVaultCollectionType(Enum): - keys = 'keys' - secrets = 'secrets' - certificates = 'certificates' - certificate_issuers = 'certificates/issuers' - - -class KeyVaultId(object): - """ - An identifier for an Azure Key Vault resource. - """ - version_none = '' - - def __init__(self, collection, vault, name, version): - """ - :param collection: The resource collection type. - :type collection: str - :param vault: The vault URI. - :type vault: str - :param name: The resource name. - :type name: str - :param version: The resource version. - :type version: str - """ - self.vault = vault - self.name = name - self.collection = collection - self.version = version or KeyVaultId.version_none - - def __str__(self): - """ - :return: The identifier string of the current KeyVaultId - :rtype: str - """ - return self.id - - @property - def id(self): - return '{}/{}'.format(self.base_id, self.version) if self.version != KeyVaultId.version_none else self.base_id - - @property - def base_id(self): - return '{}/{}/{}'.format(self.vault, self.collection, self.name) - - @staticmethod - def create_object_id(collection, vault, name, version): - """ - :param collection: The resource collection type. - :type collection: str - :param vault: The vault URI. - :type vault: str - :param name: The resource name. - :type name: str - :param version: The resource version. - :type version: str - :rtype: KeyVaultId - """ - collection = _validate_string_argument(collection, 'collection') - vault = _validate_string_argument(vault, 'vault') - name = _validate_string_argument(name, 'name') - version = _validate_string_argument(version, 'version', True) - _parse_uri_argument(vault) # check that vault is a valid URI but don't change it - return KeyVaultIdentifier(collection=collection, vault=vault, name=name, version=version) - - @staticmethod - def parse_object_id(collection, id): - """ - :param collection: The resource collection type. - :type collection: str - :param id: The resource uri. - :type id: str - :rtype: KeyVaultId - """ - collection = _validate_string_argument(collection, 'collection') - return KeyVaultIdentifier(uri=id, collection=collection) - - @staticmethod - def create_key_id(vault, name, version=None): - """ - :param vault: The vault uri. - :type vault: str - :param name: The key name. - :type name: str - :param version: The key version. - :type version: str - :rtype: KeyVaultId - """ - return KeyId(vault=vault, name=name, version=version) - - @staticmethod - def parse_key_id(id): - """ - :param id: The key uri. - :type id: str - :rtype: KeyVaultId - """ - return KeyId(id) - - @staticmethod - def create_secret_id(vault, name, version=None): - """ - :param vault: The vault uri. - :type vault: str - :param name: The secret name. - :type name: str - :param version: The secret version. - :type version: str - :rtype: KeyVaultId - """ - return SecretId(vault=vault, name=name, version=version) - - @staticmethod - def parse_secret_id(id): - """ - :param id: The secret uri. - :type id: str - :rtype: KeyVaultId - """ - return SecretId(id) - - @staticmethod - def create_certificate_id(vault, name, version=None): - """ - :param vault: The vault uri. - :type vault: str - :param name: The certificate name. - :type name: str - :param version: The certificate version. - :type version: str - :rtype: KeyVaultId - """ - return CertificateId(vault=vault, name=name, version=version) - - @staticmethod - def parse_certificate_id(id): - """ - :param id: The resource collection type. - :type id: str - :rtype: KeyVaultId - """ - return CertificateId(id) - - @staticmethod - def create_certificate_operation_id(vault, name): - """ - :param vault: The vault uri. - :type vault: str - :param name: The certificate name. - :type name: str - :rtype: KeyVaultId - """ - return CertificateOperationId(vault=vault, name=name) - - @staticmethod - def parse_certificate_operation_id(id): - """ - :param id: The resource collection type. - :type id: str - :rtype: KeyVaultId - """ - return CertificateOperationId(id) - - @staticmethod - def create_certificate_issuer_id(vault, name): - """ - :param vault: The vault uri. - :type vault: str - :param name: The certificate name. - :type name: str - :rtype: KeyVaultId - """ - return CertificateIssuerId(vault=vault, name=name) - - @staticmethod - def parse_certificate_issuer_id(id): - """ - :param id: The resource collection type. - :type id: str - :rtype: KeyVaultId - """ - return CertificateIssuerId(id) - - -class KeyVaultIdentifier(KeyVaultId): - _id_format = '{vault}/{collection}/{name}/{version?}' - version_none = '' - - def __init__(self, uri=None, **kwargs): - """ - Creates a KeyVaultIdentifier based of the specified uri or keyword arguments - :param uri: The uri of the key vault object identifier - :param kwargs: The format parameters for the key vault object identifier. If uri is specified these are used to validate the - components of the uri. - """ - self.version = KeyVaultIdentifier.version_none - - # add all the keyword arguments as attributes - for key, value in kwargs.items(): - self.__dict__[key] = _validate_string_argument(value, key, True) - - self.version = self.version or KeyVaultIdentifier.version_none - - # if uri is specified parse the segment values from the specified uri - if uri: - self._parse(uri, kwargs) - - @property - def id(self): - """ - :return: The full key vault object identifier uri - """ - return self._format() - - @property - def base_id(self): - """ - :return: The version-less key vault object identifier uri, - """ - return self._format(fmt=self._id_format.replace('/{version?}', '')) - - def _format(self, fmt=None): - """ - Formats the KeyVaultIdentifier into a identifier uri based of the specified format string - :param fmt: The format string for the identifier uri - :return: The formatted key vault object identifier uri - """ - # if no fmt was specified use the _id_format from the current object - fmt = fmt or self._id_format - segments = [] - - # split the formatting string into segments - for fmt_seg in fmt.split('/'): - # if the segment is a substitution element - if fmt_seg.startswith('{') and fmt_seg.endswith('}'): - - # get the attribute name from the segment element - fmt_seg = fmt_seg[1:-1] - fmt_prop = fmt_seg.rstrip('?') - # get the value of the attribute from the current object - seg_val = getattr(self, fmt_prop) - - # if the attribute is specified add the value to the formatted segments - if seg_val: - segments.append(seg_val.strip('/').strip()) - # if the attribute is not specified and the substitution is not optional raise an error - else: - if not fmt_seg.endswith('?'): - raise ValueError('invalid id: No value specified for the required segment "{}"'.format(fmt_prop)) - - # if the segment is a literal element simply add it to the formatted segments - else: - segments.append(fmt_seg) - - # join all the formatted segments together - return '/'.join(segments) - - def _parse(self, uri, validation_args): - """ - Parses the specified uri, using _id_format as a format string, and sets the parsed format arguments as - attributes on the current id object. - :param uri: The key vault identifier uri to be parsed - :param validation_args: format arguments to be validated - :return: None - """ - def format_error(): - return ValueError('invalid id: The specified uri "{}", does to match the specified format "{}"'.format(uri, self._id_format)) - - uri = _validate_string_argument(uri, 'uri') - parsed_uri = _parse_uri_argument(uri) - - # split all the id segments from the uri path using and insert the host as the first segment - id_segs = list(filter(None, parsed_uri.path.split('/'))) - id_segs.insert(0, '{}://{}'.format(parsed_uri.scheme, parsed_uri.hostname)) - - # split the format segments from the classes format string - fmt_segs = list(filter(None, self._id_format.split('/'))) - - for ix in range(len(fmt_segs)): - # get the format segment and the id segment - fmt_seg = fmt_segs[ix] - id_seg = id_segs.pop(0) if len(id_segs) > 0 else '' - - # if the segment is a substitution element - if fmt_seg.startswith('{') and fmt_seg.endswith('}'): - prop = fmt_seg[1:-1] - prop_strip = prop.rstrip('?') - # if the segment is not present in the specified uri and is not optional raise an error - if not id_seg and not prop.endswith('?'): - raise format_error() - # if the segment is in the segments to validate and doesn't match the expected vault raise an error - if prop_strip in validation_args and validation_args[prop_strip] and validation_args[prop_strip] != id_seg: - if id_seg and not prop.endswith('?'): - raise ValueError('invalid id: The {} "{}" does not match the expected "{}"'.format(prop, id_seg, validation_args[prop_strip])) - # set the attribute to the value parsed from the uri - self.__dict__[prop_strip] = id_seg - # otherwise the segment is a literal element - else: - # if the value parsed from the uri doesn't match the literal value from the format string raise an error - if not fmt_seg == id_seg: - raise format_error() - - # if there are still segments left in the uri which were not accounted for in the format string raise an error - if len(id_segs) > 0: - raise format_error() - - -class KeyId(KeyVaultIdentifier): - _id_format = '{vault}/{collection}/{name}/{version?}' - - def __init__(self, uri=None, vault=None, name=None, version=None): - """ - Creates a key vault key id. If uri is specified the id properties are parsed from the uri, otherwise - builds the id from the specified vault, name and version. - :param uri: The uri of the key vault key - :param vault: The vault uri - :param name: The key name - :param version: The key version - """ - super(KeyId, self).__init__(uri=uri, collection='keys', vault=vault, name=name, version=version) - - -class SecretId(KeyVaultIdentifier): - _id_format = '{vault}/{collection}/{name}/{version?}' - - def __init__(self, uri=None, vault=None, name=None, version=None): - """ - Creates a key vault secret id. If uri is specified the id properties are parsed from the uri, otherwise - builds the id from the specified vault, name and version. - :param uri: The uri of the key vault secret - :param vault: The vault uri - :param name: The secret name - :param version: The secret version - """ - super(SecretId, self).__init__(uri=uri, collection='secrets', vault=vault, name=name, version=version) - - -class CertificateId(KeyVaultIdentifier): - _id_format = '{vault}/{collection}/{name}/{version?}' - - def __init__(self, uri=None, vault=None, name=None, version=None): - """ - Creates a key vault certificate id. If uri is specified the id properties are parsed from the uri, otherwise - builds the id from the specified vault, name and version. - :param uri: The uri of the key vault certificate - :param vault: The vault uri - :param name: The certificate name - :param version: The certificate version - """ - super(CertificateId, self).__init__(uri=uri, collection='certificates', vault=vault, name=name, version=version) - - -class CertificateOperationId(KeyVaultIdentifier): - _id_format = '{vault}/{collection}/{name}/{version?}' - - def __init__(self, uri=None, vault=None, name=None): - """ - Creates a key vault certificate operation id. If uri is specified the id properties are parsed from the uri, otherwise - builds the id from the specified vault and name. - :param uri: The uri of the key vault certificate operation - :param vault: The vault uri - :param name: The certificate name - """ - super(CertificateOperationId, self).__init__(uri=uri, collection='certificates', version='pending', vault=vault, name=name) - - -class CertificateIssuerId(KeyVaultIdentifier): - _id_format = '{vault}/{collection}/issuers/{name}' - - def __init__(self, uri=None, vault=None, name=None): - """ - Creates a key vault certificate issuer id. If uri is specified the id properties are parsed from the uri, otherwise - builds the id from the specified vault and name. - :param uri: The uri of the key vault certificate issuer - :param vault: The vault uri - :param name: The certificate issuer name - """ - super(CertificateIssuerId, self).__init__(uri=uri, collection='certificates', vault=vault, name=name) - - -class StorageAccountId(KeyVaultIdentifier): - _id_format = '{vault}/{collection}/{name}' - - def __init__(self, uri=None, vault=None, name=None): - """ - Creates a key vault storage account id. If uri is specified the id properties are parsed from the uri, otherwise - builds the id from the specified vault and name. - :param uri: The uri of the key vault storage account - :param vault: The vault uri - :param name: The storage account name - """ - super(StorageAccountId, self).__init__(uri=uri, collection='storage', vault=vault, name=name) - - -class StorageSasDefinitionId(KeyVaultIdentifier): - _id_format = '{vault}/{collection}/{account_name}/sas/{sas_definition}' - - def __init__(self, uri=None, vault=None, account_name=None, sas_definition=None): - """ - Creates a key vault storage account sas definition id. If uri is specified the id properties are parsed from the uri, otherwise - builds the id from the specified vault, account_name, and sas_definition. - :param uri: The uri of the key vault storage account sas definition - :param vault: The vault uri - :param account_name: The storage account name - :param sas_definition: The sas definition name - """ - super(StorageSasDefinitionId, self).__init__(uri=uri, collection='storage', vault=vault, account_name=account_name, sas_definition=sas_definition) - - -def _validate_string_argument(prop, name, nullable=False): - try: - prop = prop.strip() - except AttributeError: - if not nullable: - raise TypeError("argument '{}' must by of type string".format(name)) - prop = prop if prop else None # force falsy types to None - if not prop and not nullable: - raise ValueError("argument '{}' must be specified".format(name)) - return prop - - -def _parse_uri_argument(uri): - try: - parsed_uri = parse.urlparse(uri) - except Exception: # pylint: disable=broad-except - raise ValueError("'{}' is not not a valid URI".format(uri)) - if not (parsed_uri.scheme and parsed_uri.hostname): - raise ValueError("'{}' is not not a valid URI".format(uri)) - return parsed_uri - diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/models.py b/sdk/keyvault/azure-keyvault/azure/keyvault/models.py deleted file mode 100644 index 5921b6434b56..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/models.py +++ /dev/null @@ -1,9 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -------------------------------------------------------------------------- -import warnings - -from .v7_0.models import * diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/__init__.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/__init__.py deleted file mode 100644 index f5ce6ec63059..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/__init__.py +++ /dev/null @@ -1,18 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .key_vault_client import KeyVaultClient -from .version import VERSION - -__all__ = ['KeyVaultClient'] - -__version__ = VERSION - diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/key_vault_client.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/key_vault_client.py deleted file mode 100644 index 390c3b86c567..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/key_vault_client.py +++ /dev/null @@ -1,5018 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.service_client import SDKClient -from msrest import Serializer, Deserializer -from msrestazure import AzureConfiguration -from .version import VERSION -from msrest.pipeline import ClientRawResponse -import uuid -from . import models - - -class KeyVaultClientConfiguration(AzureConfiguration): - """Configuration for KeyVaultClient - Note that all parameters used to create this instance are saved as instance - attributes. - - :param credentials: Credentials needed for the client to connect to Azure. - :type credentials: :mod:`A msrestazure Credentials - object` - """ - - def __init__( - self, credentials): - - if credentials is None: - raise ValueError("Parameter 'credentials' must not be None.") - base_url = '{vaultBaseUrl}' - - super(KeyVaultClientConfiguration, self).__init__(base_url) - - self.add_user_agent('azure-keyvault/{}'.format(VERSION)) - self.add_user_agent('Azure-SDK-For-Python') - - self.credentials = credentials - - -class KeyVaultClient(SDKClient): - """The key vault client performs cryptographic key operations and vault operations against the Key Vault service. - - :ivar config: Configuration for client. - :vartype config: KeyVaultClientConfiguration - - :param credentials: Credentials needed for the client to connect to Azure. - :type credentials: :mod:`A msrestazure Credentials - object` - """ - - def __init__( - self, credentials): - - self.config = KeyVaultClientConfiguration(credentials) - super(KeyVaultClient, self).__init__(self.config.credentials, self.config) - - client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} - self.api_version = '2016-10-01' - self._serialize = Serializer(client_models) - self._deserialize = Deserializer(client_models) - - - def create_key( - self, vault_base_url, key_name, kty, key_size=None, key_ops=None, key_attributes=None, tags=None, curve=None, custom_headers=None, raw=False, **operation_config): - """Creates a new key, stores it, then returns key parameters and - attributes to the client. - - The create key operation can be used to create any key type in Azure - Key Vault. If the named key already exists, Azure Key Vault creates a - new version of the key. It requires the keys/create permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name for the new key. The system will generate - the version name for the new key. - :type key_name: str - :param kty: The type of key to create. For valid values, see - JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', - 'RSA-HSM', 'oct' - :type kty: str or ~azure.keyvault.v2016_10_01.models.JsonWebKeyType - :param key_size: The key size in bits. For example: 2048, 3072, or - 4096 for RSA. - :type key_size: int - :param key_ops: - :type key_ops: list[str or - ~azure.keyvault.v2016_10_01.models.JsonWebKeyOperation] - :param key_attributes: - :type key_attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param curve: Elliptic curve name. For valid values, see - JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', - 'P-521', 'SECP256K1' - :type curve: str or - ~azure.keyvault.v2016_10_01.models.JsonWebKeyCurveName - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.KeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyCreateParameters(kty=kty, key_size=key_size, key_ops=key_ops, key_attributes=key_attributes, tags=tags, curve=curve) - - # Construct URL - url = self.create_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyCreateParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - create_key.metadata = {'url': '/keys/{key-name}/create'} - - def import_key( - self, vault_base_url, key_name, key, hsm=None, key_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Imports an externally created key, stores it, and returns key - parameters and attributes to the client. - - The import key operation may be used to import any key type into an - Azure Key Vault. If the named key already exists, Azure Key Vault - creates a new version of the key. This operation requires the - keys/import permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: Name for the imported key. - :type key_name: str - :param key: The Json web key - :type key: ~azure.keyvault.v2016_10_01.models.JsonWebKey - :param hsm: Whether to import as a hardware key (HSM) or software key. - :type hsm: bool - :param key_attributes: The key management attributes. - :type key_attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.KeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyImportParameters(hsm=hsm, key=key, key_attributes=key_attributes, tags=tags) - - # Construct URL - url = self.import_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyImportParameters') - - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - import_key.metadata = {'url': '/keys/{key-name}'} - - def delete_key( - self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): - """Deletes a key of any type from storage in Azure Key Vault. - - The delete key operation cannot be used to remove individual versions - of a key. This operation removes the cryptographic material associated - with the key, which means the key is not usable for Sign/Verify, - Wrap/Unwrap or Encrypt/Decrypt operations. This operation requires the - keys/delete permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key to delete. - :type key_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedKeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.DeletedKeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.delete_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedKeyBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_key.metadata = {'url': '/keys/{key-name}'} - - def update_key( - self, vault_base_url, key_name, key_version, key_ops=None, key_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """The update key operation changes specified attributes of a stored key - and can be applied to any key type and key version stored in Azure Key - Vault. - - In order to perform this operation, the key must already exist in the - Key Vault. Note: The cryptographic material of a key itself cannot be - changed. This operation requires the keys/update permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of key to update. - :type key_name: str - :param key_version: The version of the key to update. - :type key_version: str - :param key_ops: Json web key operations. For more information on - possible key operations, see JsonWebKeyOperation. - :type key_ops: list[str or - ~azure.keyvault.v2016_10_01.models.JsonWebKeyOperation] - :param key_attributes: - :type key_attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.KeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyUpdateParameters(key_ops=key_ops, key_attributes=key_attributes, tags=tags) - - # Construct URL - url = self.update_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyUpdateParameters') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_key.metadata = {'url': '/keys/{key-name}/{key-version}'} - - def get_key( - self, vault_base_url, key_name, key_version, custom_headers=None, raw=False, **operation_config): - """Gets the public part of a stored key. - - The get key operation is applicable to all key types. If the requested - key is symmetric, then no key material is released in the response. - This operation requires the keys/get permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key to get. - :type key_name: str - :param key_version: Adding the version parameter retrieves a specific - version of a key. - :type key_version: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.KeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_key.metadata = {'url': '/keys/{key-name}/{key-version}'} - - def get_key_versions( - self, vault_base_url, key_name, maxresults=None, custom_headers=None, raw=False, **operation_config): - """Retrieves a list of individual key versions with the same key name. - - The full key identifier, attributes, and tags are provided in the - response. This operation requires the keys/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of KeyItem - :rtype: - ~azure.keyvault.v2016_10_01.models.KeyItemPaged[~azure.keyvault.v2016_10_01.models.KeyItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_key_versions.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.KeyItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.KeyItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_key_versions.metadata = {'url': '/keys/{key-name}/versions'} - - def get_keys( - self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): - """List keys in the specified vault. - - Retrieves a list of the keys in the Key Vault as JSON Web Key - structures that contain the public part of a stored key. The LIST - operation is applicable to all key types, however only the base key - identifier, attributes, and tags are provided in the response. - Individual versions of a key are not listed in the response. This - operation requires the keys/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of KeyItem - :rtype: - ~azure.keyvault.v2016_10_01.models.KeyItemPaged[~azure.keyvault.v2016_10_01.models.KeyItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_keys.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.KeyItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.KeyItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_keys.metadata = {'url': '/keys'} - - def backup_key( - self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): - """Requests that a backup of the specified key be downloaded to the - client. - - The Key Backup operation exports a key from Azure Key Vault in a - protected form. Note that this operation does NOT return key material - in a form that can be used outside the Azure Key Vault system, the - returned key material is either protected to a Azure Key Vault HSM or - to Azure Key Vault itself. The intent of this operation is to allow a - client to GENERATE a key in one Azure Key Vault instance, BACKUP the - key, and then RESTORE it into another Azure Key Vault instance. The - BACKUP operation may be used to export, in protected form, any key type - from Azure Key Vault. Individual versions of a key cannot be backed up. - BACKUP / RESTORE can be performed within geographical boundaries only; - meaning that a BACKUP from one geographical area cannot be restored to - another geographical area. For example, a backup from the US - geographical area cannot be restored in an EU geographical area. This - operation requires the key/backup permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: BackupKeyResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.BackupKeyResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.backup_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('BackupKeyResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - backup_key.metadata = {'url': '/keys/{key-name}/backup'} - - def restore_key( - self, vault_base_url, key_bundle_backup, custom_headers=None, raw=False, **operation_config): - """Restores a backed up key to a vault. - - Imports a previously backed up key into Azure Key Vault, restoring the - key, its key identifier, attributes and access control policies. The - RESTORE operation may be used to import a previously backed up key. - Individual versions of a key cannot be restored. The key is restored in - its entirety with the same key name as it had when it was backed up. If - the key name is not available in the target Key Vault, the RESTORE - operation will be rejected. While the key name is retained during - restore, the final key identifier will change if the key is restored to - a different vault. Restore will restore all versions and preserve - version identifiers. The RESTORE operation is subject to security - constraints: The target Key Vault must be owned by the same Microsoft - Azure Subscription as the source Key Vault The user must have RESTORE - permission in the target Key Vault. This operation requires the - keys/restore permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_bundle_backup: The backup blob associated with a key - bundle. - :type key_bundle_backup: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.KeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyRestoreParameters(key_bundle_backup=key_bundle_backup) - - # Construct URL - url = self.restore_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyRestoreParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - restore_key.metadata = {'url': '/keys/restore'} - - def encrypt( - self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): - """Encrypts an arbitrary sequence of bytes using an encryption key that is - stored in a key vault. - - The ENCRYPT operation encrypts an arbitrary sequence of bytes using an - encryption key that is stored in Azure Key Vault. Note that the ENCRYPT - operation only supports a single block of data, the size of which is - dependent on the target key and the encryption algorithm to be used. - The ENCRYPT operation is only strictly necessary for symmetric keys - stored in Azure Key Vault since protection with an asymmetric key can - be performed using public portion of the key. This operation is - supported for asymmetric keys as a convenience for callers that have a - key-reference but do not have access to the public key material. This - operation requires the keys/encypt permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param key_version: The version of the key. - :type key_version: str - :param algorithm: algorithm identifier. Possible values include: - 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' - :type algorithm: str or - ~azure.keyvault.v2016_10_01.models.JsonWebKeyEncryptionAlgorithm - :param value: - :type value: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyOperationResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.KeyOperationResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyOperationsParameters(algorithm=algorithm, value=value) - - # Construct URL - url = self.encrypt.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyOperationsParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyOperationResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - encrypt.metadata = {'url': '/keys/{key-name}/{key-version}/encrypt'} - - def decrypt( - self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): - """Decrypts a single block of encrypted data. - - The DECRYPT operation decrypts a well-formed block of ciphertext using - the target encryption key and specified algorithm. This operation is - the reverse of the ENCRYPT operation; only a single block of data may - be decrypted, the size of this block is dependent on the target key and - the algorithm to be used. The DECRYPT operation applies to asymmetric - and symmetric keys stored in Azure Key Vault since it uses the private - portion of the key. This operation requires the keys/decrypt - permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param key_version: The version of the key. - :type key_version: str - :param algorithm: algorithm identifier. Possible values include: - 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' - :type algorithm: str or - ~azure.keyvault.v2016_10_01.models.JsonWebKeyEncryptionAlgorithm - :param value: - :type value: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyOperationResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.KeyOperationResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyOperationsParameters(algorithm=algorithm, value=value) - - # Construct URL - url = self.decrypt.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyOperationsParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyOperationResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - decrypt.metadata = {'url': '/keys/{key-name}/{key-version}/decrypt'} - - def sign( - self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): - """Creates a signature from a digest using the specified key. - - The SIGN operation is applicable to asymmetric and symmetric keys - stored in Azure Key Vault since this operation uses the private portion - of the key. This operation requires the keys/sign permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param key_version: The version of the key. - :type key_version: str - :param algorithm: The signing/verification algorithm identifier. For - more information on possible algorithm types, see - JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', - 'PS384', 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', - 'ES384', 'ES512', 'ECDSA256' - :type algorithm: str or - ~azure.keyvault.v2016_10_01.models.JsonWebKeySignatureAlgorithm - :param value: - :type value: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyOperationResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.KeyOperationResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeySignParameters(algorithm=algorithm, value=value) - - # Construct URL - url = self.sign.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeySignParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyOperationResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - sign.metadata = {'url': '/keys/{key-name}/{key-version}/sign'} - - def verify( - self, vault_base_url, key_name, key_version, algorithm, digest, signature, custom_headers=None, raw=False, **operation_config): - """Verifies a signature using a specified key. - - The VERIFY operation is applicable to symmetric keys stored in Azure - Key Vault. VERIFY is not strictly necessary for asymmetric keys stored - in Azure Key Vault since signature verification can be performed using - the public portion of the key but this operation is supported as a - convenience for callers that only have a key-reference and not the - public portion of the key. This operation requires the keys/verify - permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param key_version: The version of the key. - :type key_version: str - :param algorithm: The signing/verification algorithm. For more - information on possible algorithm types, see - JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', - 'PS384', 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', - 'ES384', 'ES512', 'ECDSA256' - :type algorithm: str or - ~azure.keyvault.v2016_10_01.models.JsonWebKeySignatureAlgorithm - :param digest: The digest used for signing. - :type digest: bytes - :param signature: The signature to be verified. - :type signature: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyVerifyResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.KeyVerifyResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyVerifyParameters(algorithm=algorithm, digest=digest, signature=signature) - - # Construct URL - url = self.verify.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyVerifyParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyVerifyResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - verify.metadata = {'url': '/keys/{key-name}/{key-version}/verify'} - - def wrap_key( - self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): - """Wraps a symmetric key using a specified key. - - The WRAP operation supports encryption of a symmetric key using a key - encryption key that has previously been stored in an Azure Key Vault. - The WRAP operation is only strictly necessary for symmetric keys stored - in Azure Key Vault since protection with an asymmetric key can be - performed using the public portion of the key. This operation is - supported for asymmetric keys as a convenience for callers that have a - key-reference but do not have access to the public key material. This - operation requires the keys/wrapKey permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param key_version: The version of the key. - :type key_version: str - :param algorithm: algorithm identifier. Possible values include: - 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' - :type algorithm: str or - ~azure.keyvault.v2016_10_01.models.JsonWebKeyEncryptionAlgorithm - :param value: - :type value: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyOperationResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.KeyOperationResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyOperationsParameters(algorithm=algorithm, value=value) - - # Construct URL - url = self.wrap_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyOperationsParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyOperationResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - wrap_key.metadata = {'url': '/keys/{key-name}/{key-version}/wrapkey'} - - def unwrap_key( - self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): - """Unwraps a symmetric key using the specified key that was initially used - for wrapping that key. - - The UNWRAP operation supports decryption of a symmetric key using the - target key encryption key. This operation is the reverse of the WRAP - operation. The UNWRAP operation applies to asymmetric and symmetric - keys stored in Azure Key Vault since it uses the private portion of the - key. This operation requires the keys/unwrapKey permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param key_version: The version of the key. - :type key_version: str - :param algorithm: algorithm identifier. Possible values include: - 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' - :type algorithm: str or - ~azure.keyvault.v2016_10_01.models.JsonWebKeyEncryptionAlgorithm - :param value: - :type value: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyOperationResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.KeyOperationResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyOperationsParameters(algorithm=algorithm, value=value) - - # Construct URL - url = self.unwrap_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyOperationsParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyOperationResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - unwrap_key.metadata = {'url': '/keys/{key-name}/{key-version}/unwrapkey'} - - def get_deleted_keys( - self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): - """Lists the deleted keys in the specified vault. - - Retrieves a list of the keys in the Key Vault as JSON Web Key - structures that contain the public part of a deleted key. This - operation includes deletion-specific information. The Get Deleted Keys - operation is applicable for vaults enabled for soft-delete. While the - operation can be invoked on any vault, it will return an error if - invoked on a non soft-delete enabled vault. This operation requires the - keys/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of DeletedKeyItem - :rtype: - ~azure.keyvault.v2016_10_01.models.DeletedKeyItemPaged[~azure.keyvault.v2016_10_01.models.DeletedKeyItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_deleted_keys.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.DeletedKeyItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.DeletedKeyItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_deleted_keys.metadata = {'url': '/deletedkeys'} - - def get_deleted_key( - self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): - """Gets the public part of a deleted key. - - The Get Deleted Key operation is applicable for soft-delete enabled - vaults. While the operation can be invoked on any vault, it will return - an error if invoked on a non soft-delete enabled vault. This operation - requires the keys/get permission. . - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedKeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.DeletedKeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_deleted_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedKeyBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_deleted_key.metadata = {'url': '/deletedkeys/{key-name}'} - - def purge_deleted_key( - self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): - """Permanently deletes the specified key. - - The Purge Deleted Key operation is applicable for soft-delete enabled - vaults. While the operation can be invoked on any vault, it will return - an error if invoked on a non soft-delete enabled vault. This operation - requires the keys/purge permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key - :type key_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.purge_deleted_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [204]: - raise models.KeyVaultErrorException(self._deserialize, response) - - if raw: - client_raw_response = ClientRawResponse(None, response) - return client_raw_response - purge_deleted_key.metadata = {'url': '/deletedkeys/{key-name}'} - - def recover_deleted_key( - self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): - """Recovers the deleted key to its latest version. - - The Recover Deleted Key operation is applicable for deleted keys in - soft-delete enabled vaults. It recovers the deleted key back to its - latest version under /keys. An attempt to recover an non-deleted key - will return an error. Consider this the inverse of the delete operation - on soft-delete enabled vaults. This operation requires the keys/recover - permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the deleted key. - :type key_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.KeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.recover_deleted_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - recover_deleted_key.metadata = {'url': '/deletedkeys/{key-name}/recover'} - - def set_secret( - self, vault_base_url, secret_name, value, tags=None, content_type=None, secret_attributes=None, custom_headers=None, raw=False, **operation_config): - """Sets a secret in a specified key vault. - - The SET operation adds a secret to the Azure Key Vault. If the named - secret already exists, Azure Key Vault creates a new version of that - secret. This operation requires the secrets/set permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param value: The value of the secret. - :type value: str - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param content_type: Type of the secret value such as a password. - :type content_type: str - :param secret_attributes: The secret management attributes. - :type secret_attributes: - ~azure.keyvault.v2016_10_01.models.SecretAttributes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SecretBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.SecretBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.SecretSetParameters(value=value, tags=tags, content_type=content_type, secret_attributes=secret_attributes) - - # Construct URL - url = self.set_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'SecretSetParameters') - - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SecretBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - set_secret.metadata = {'url': '/secrets/{secret-name}'} - - def delete_secret( - self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): - """Deletes a secret from a specified key vault. - - The DELETE operation applies to any secret stored in Azure Key Vault. - DELETE cannot be applied to an individual version of a secret. This - operation requires the secrets/delete permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedSecretBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.DeletedSecretBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.delete_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedSecretBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_secret.metadata = {'url': '/secrets/{secret-name}'} - - def update_secret( - self, vault_base_url, secret_name, secret_version, content_type=None, secret_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Updates the attributes associated with a specified secret in a given - key vault. - - The UPDATE operation changes specified attributes of an existing stored - secret. Attributes that are not specified in the request are left - unchanged. The value of a secret itself cannot be changed. This - operation requires the secrets/set permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param secret_version: The version of the secret. - :type secret_version: str - :param content_type: Type of the secret value such as a password. - :type content_type: str - :param secret_attributes: The secret management attributes. - :type secret_attributes: - ~azure.keyvault.v2016_10_01.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SecretBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.SecretBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.SecretUpdateParameters(content_type=content_type, secret_attributes=secret_attributes, tags=tags) - - # Construct URL - url = self.update_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str'), - 'secret-version': self._serialize.url("secret_version", secret_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'SecretUpdateParameters') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SecretBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_secret.metadata = {'url': '/secrets/{secret-name}/{secret-version}'} - - def get_secret( - self, vault_base_url, secret_name, secret_version, custom_headers=None, raw=False, **operation_config): - """Get a specified secret from a given key vault. - - The GET operation is applicable to any secret stored in Azure Key - Vault. This operation requires the secrets/get permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param secret_version: The version of the secret. - :type secret_version: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SecretBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.SecretBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str'), - 'secret-version': self._serialize.url("secret_version", secret_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SecretBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_secret.metadata = {'url': '/secrets/{secret-name}/{secret-version}'} - - def get_secrets( - self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): - """List secrets in a specified key vault. - - The Get Secrets operation is applicable to the entire vault. However, - only the base secret identifier and its attributes are provided in the - response. Individual secret versions are not listed in the response. - This operation requires the secrets/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified, the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of SecretItem - :rtype: - ~azure.keyvault.v2016_10_01.models.SecretItemPaged[~azure.keyvault.v2016_10_01.models.SecretItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_secrets.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.SecretItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.SecretItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_secrets.metadata = {'url': '/secrets'} - - def get_secret_versions( - self, vault_base_url, secret_name, maxresults=None, custom_headers=None, raw=False, **operation_config): - """List all versions of the specified secret. - - The full secret identifier and attributes are provided in the response. - No values are returned for the secrets. This operations requires the - secrets/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param maxresults: Maximum number of results to return in a page. If - not specified, the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of SecretItem - :rtype: - ~azure.keyvault.v2016_10_01.models.SecretItemPaged[~azure.keyvault.v2016_10_01.models.SecretItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_secret_versions.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.SecretItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.SecretItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_secret_versions.metadata = {'url': '/secrets/{secret-name}/versions'} - - def get_deleted_secrets( - self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): - """Lists deleted secrets for the specified vault. - - The Get Deleted Secrets operation returns the secrets that have been - deleted for a vault enabled for soft-delete. This operation requires - the secrets/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of DeletedSecretItem - :rtype: - ~azure.keyvault.v2016_10_01.models.DeletedSecretItemPaged[~azure.keyvault.v2016_10_01.models.DeletedSecretItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_deleted_secrets.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.DeletedSecretItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.DeletedSecretItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_deleted_secrets.metadata = {'url': '/deletedsecrets'} - - def get_deleted_secret( - self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): - """Gets the specified deleted secret. - - The Get Deleted Secret operation returns the specified deleted secret - along with its attributes. This operation requires the secrets/get - permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedSecretBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.DeletedSecretBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_deleted_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedSecretBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_deleted_secret.metadata = {'url': '/deletedsecrets/{secret-name}'} - - def purge_deleted_secret( - self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): - """Permanently deletes the specified secret. - - The purge deleted secret operation removes the secret permanently, - without the possibility of recovery. This operation can only be enabled - on a soft-delete enabled vault. This operation requires the - secrets/purge permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.purge_deleted_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [204]: - raise models.KeyVaultErrorException(self._deserialize, response) - - if raw: - client_raw_response = ClientRawResponse(None, response) - return client_raw_response - purge_deleted_secret.metadata = {'url': '/deletedsecrets/{secret-name}'} - - def recover_deleted_secret( - self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): - """Recovers the deleted secret to the latest version. - - Recovers the deleted secret in the specified vault. This operation can - only be performed on a soft-delete enabled vault. This operation - requires the secrets/recover permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the deleted secret. - :type secret_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SecretBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.SecretBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.recover_deleted_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SecretBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - recover_deleted_secret.metadata = {'url': '/deletedsecrets/{secret-name}/recover'} - - def backup_secret( - self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): - """Backs up the specified secret. - - Requests that a backup of the specified secret be downloaded to the - client. All versions of the secret will be downloaded. This operation - requires the secrets/backup permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: BackupSecretResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.BackupSecretResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.backup_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('BackupSecretResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - backup_secret.metadata = {'url': '/secrets/{secret-name}/backup'} - - def restore_secret( - self, vault_base_url, secret_bundle_backup, custom_headers=None, raw=False, **operation_config): - """Restores a backed up secret to a vault. - - Restores a backed up secret, and all its versions, to a vault. This - operation requires the secrets/restore permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_bundle_backup: The backup blob associated with a secret - bundle. - :type secret_bundle_backup: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SecretBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.SecretBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.SecretRestoreParameters(secret_bundle_backup=secret_bundle_backup) - - # Construct URL - url = self.restore_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'SecretRestoreParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SecretBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - restore_secret.metadata = {'url': '/secrets/restore'} - - def get_certificates( - self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): - """List certificates in a specified key vault. - - The GetCertificates operation returns the set of certificates resources - in the specified key vault. This operation requires the - certificates/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of CertificateItem - :rtype: - ~azure.keyvault.v2016_10_01.models.CertificateItemPaged[~azure.keyvault.v2016_10_01.models.CertificateItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_certificates.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.CertificateItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.CertificateItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_certificates.metadata = {'url': '/certificates'} - - def delete_certificate( - self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Deletes a certificate from a specified key vault. - - Deletes all versions of a certificate object along with its associated - policy. Delete certificate cannot be used to remove individual versions - of a certificate object. This operation requires the - certificates/delete permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedCertificateBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.DeletedCertificateBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.delete_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedCertificateBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_certificate.metadata = {'url': '/certificates/{certificate-name}'} - - def set_certificate_contacts( - self, vault_base_url, contact_list=None, custom_headers=None, raw=False, **operation_config): - """Sets the certificate contacts for the specified key vault. - - Sets the certificate contacts for the specified key vault. This - operation requires the certificates/managecontacts permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param contact_list: The contact list for the vault certificates. - :type contact_list: list[~azure.keyvault.v2016_10_01.models.Contact] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: Contacts or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.Contacts or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - contacts = models.Contacts(contact_list=contact_list) - - # Construct URL - url = self.set_certificate_contacts.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(contacts, 'Contacts') - - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('Contacts', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - set_certificate_contacts.metadata = {'url': '/certificates/contacts'} - - def get_certificate_contacts( - self, vault_base_url, custom_headers=None, raw=False, **operation_config): - """Lists the certificate contacts for a specified key vault. - - The GetCertificateContacts operation returns the set of certificate - contact resources in the specified key vault. This operation requires - the certificates/managecontacts permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: Contacts or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.Contacts or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_certificate_contacts.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('Contacts', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_certificate_contacts.metadata = {'url': '/certificates/contacts'} - - def delete_certificate_contacts( - self, vault_base_url, custom_headers=None, raw=False, **operation_config): - """Deletes the certificate contacts for a specified key vault. - - Deletes the certificate contacts for a specified key vault certificate. - This operation requires the certificates/managecontacts permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: Contacts or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.Contacts or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.delete_certificate_contacts.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('Contacts', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_certificate_contacts.metadata = {'url': '/certificates/contacts'} - - def get_certificate_issuers( - self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): - """List certificate issuers for a specified key vault. - - The GetCertificateIssuers operation returns the set of certificate - issuer resources in the specified key vault. This operation requires - the certificates/manageissuers/getissuers permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of CertificateIssuerItem - :rtype: - ~azure.keyvault.v2016_10_01.models.CertificateIssuerItemPaged[~azure.keyvault.v2016_10_01.models.CertificateIssuerItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_certificate_issuers.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.CertificateIssuerItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.CertificateIssuerItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_certificate_issuers.metadata = {'url': '/certificates/issuers'} - - def set_certificate_issuer( - self, vault_base_url, issuer_name, provider, credentials=None, organization_details=None, attributes=None, custom_headers=None, raw=False, **operation_config): - """Sets the specified certificate issuer. - - The SetCertificateIssuer operation adds or updates the specified - certificate issuer. This operation requires the certificates/setissuers - permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param issuer_name: The name of the issuer. - :type issuer_name: str - :param provider: The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: - ~azure.keyvault.v2016_10_01.models.IssuerCredentials - :param organization_details: Details of the organization as provided - to the issuer. - :type organization_details: - ~azure.keyvault.v2016_10_01.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.v2016_10_01.models.IssuerAttributes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: IssuerBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.IssuerBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameter = models.CertificateIssuerSetParameters(provider=provider, credentials=credentials, organization_details=organization_details, attributes=attributes) - - # Construct URL - url = self.set_certificate_issuer.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'issuer-name': self._serialize.url("issuer_name", issuer_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameter, 'CertificateIssuerSetParameters') - - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('IssuerBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - set_certificate_issuer.metadata = {'url': '/certificates/issuers/{issuer-name}'} - - def update_certificate_issuer( - self, vault_base_url, issuer_name, provider=None, credentials=None, organization_details=None, attributes=None, custom_headers=None, raw=False, **operation_config): - """Updates the specified certificate issuer. - - The UpdateCertificateIssuer operation performs an update on the - specified certificate issuer entity. This operation requires the - certificates/setissuers permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param issuer_name: The name of the issuer. - :type issuer_name: str - :param provider: The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: - ~azure.keyvault.v2016_10_01.models.IssuerCredentials - :param organization_details: Details of the organization as provided - to the issuer. - :type organization_details: - ~azure.keyvault.v2016_10_01.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.v2016_10_01.models.IssuerAttributes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: IssuerBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.IssuerBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameter = models.CertificateIssuerUpdateParameters(provider=provider, credentials=credentials, organization_details=organization_details, attributes=attributes) - - # Construct URL - url = self.update_certificate_issuer.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'issuer-name': self._serialize.url("issuer_name", issuer_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameter, 'CertificateIssuerUpdateParameters') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('IssuerBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_certificate_issuer.metadata = {'url': '/certificates/issuers/{issuer-name}'} - - def get_certificate_issuer( - self, vault_base_url, issuer_name, custom_headers=None, raw=False, **operation_config): - """Lists the specified certificate issuer. - - The GetCertificateIssuer operation returns the specified certificate - issuer resources in the specified key vault. This operation requires - the certificates/manageissuers/getissuers permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param issuer_name: The name of the issuer. - :type issuer_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: IssuerBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.IssuerBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_certificate_issuer.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'issuer-name': self._serialize.url("issuer_name", issuer_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('IssuerBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_certificate_issuer.metadata = {'url': '/certificates/issuers/{issuer-name}'} - - def delete_certificate_issuer( - self, vault_base_url, issuer_name, custom_headers=None, raw=False, **operation_config): - """Deletes the specified certificate issuer. - - The DeleteCertificateIssuer operation permanently removes the specified - certificate issuer from the vault. This operation requires the - certificates/manageissuers/deleteissuers permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param issuer_name: The name of the issuer. - :type issuer_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: IssuerBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.IssuerBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.delete_certificate_issuer.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'issuer-name': self._serialize.url("issuer_name", issuer_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('IssuerBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_certificate_issuer.metadata = {'url': '/certificates/issuers/{issuer-name}'} - - def create_certificate( - self, vault_base_url, certificate_name, certificate_policy=None, certificate_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Creates a new certificate. - - If this is the first version, the certificate resource is created. This - operation requires the certificates/create permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: - ~azure.keyvault.v2016_10_01.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v2016_10_01.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateOperation or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.CertificateOperation or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.CertificateCreateParameters(certificate_policy=certificate_policy, certificate_attributes=certificate_attributes, tags=tags) - - # Construct URL - url = self.create_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'CertificateCreateParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [202]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 202: - deserialized = self._deserialize('CertificateOperation', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - create_certificate.metadata = {'url': '/certificates/{certificate-name}/create'} - - def import_certificate( - self, vault_base_url, certificate_name, base64_encoded_certificate, password=None, certificate_policy=None, certificate_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Imports a certificate into a specified key vault. - - Imports an existing valid certificate, containing a private key, into - Azure Key Vault. The certificate to be imported can be in either PFX or - PEM format. If the certificate is in PEM format the PEM file must - contain the key as well as x509 certificates. This operation requires - the certificates/import permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param base64_encoded_certificate: Base64 encoded representation of - the certificate object to import. This certificate needs to contain - the private key. - :type base64_encoded_certificate: str - :param password: If the private key in base64EncodedCertificate is - encrypted, the password used for encryption. - :type password: str - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: - ~azure.keyvault.v2016_10_01.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v2016_10_01.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.CertificateBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.CertificateImportParameters(base64_encoded_certificate=base64_encoded_certificate, password=password, certificate_policy=certificate_policy, certificate_attributes=certificate_attributes, tags=tags) - - # Construct URL - url = self.import_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'CertificateImportParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificateBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - import_certificate.metadata = {'url': '/certificates/{certificate-name}/import'} - - def get_certificate_versions( - self, vault_base_url, certificate_name, maxresults=None, custom_headers=None, raw=False, **operation_config): - """List the versions of a certificate. - - The GetCertificateVersions operation returns the versions of a - certificate in the specified key vault. This operation requires the - certificates/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of CertificateItem - :rtype: - ~azure.keyvault.v2016_10_01.models.CertificateItemPaged[~azure.keyvault.v2016_10_01.models.CertificateItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_certificate_versions.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.CertificateItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.CertificateItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_certificate_versions.metadata = {'url': '/certificates/{certificate-name}/versions'} - - def get_certificate_policy( - self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Lists the policy for a certificate. - - The GetCertificatePolicy operation returns the specified certificate - policy resources in the specified key vault. This operation requires - the certificates/get permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate in a given key - vault. - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificatePolicy or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.CertificatePolicy or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_certificate_policy.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificatePolicy', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_certificate_policy.metadata = {'url': '/certificates/{certificate-name}/policy'} - - def update_certificate_policy( - self, vault_base_url, certificate_name, certificate_policy, custom_headers=None, raw=False, **operation_config): - """Updates the policy for a certificate. - - Set specified members in the certificate policy. Leave others as null. - This operation requires the certificates/update permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate in the given - vault. - :type certificate_name: str - :param certificate_policy: The policy for the certificate. - :type certificate_policy: - ~azure.keyvault.v2016_10_01.models.CertificatePolicy - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificatePolicy or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.CertificatePolicy or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.update_certificate_policy.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(certificate_policy, 'CertificatePolicy') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificatePolicy', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_certificate_policy.metadata = {'url': '/certificates/{certificate-name}/policy'} - - def update_certificate( - self, vault_base_url, certificate_name, certificate_version, certificate_policy=None, certificate_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Updates the specified attributes associated with the given certificate. - - The UpdateCertificate operation applies the specified update on the - given certificate; the only elements updated are the certificate's - attributes. This operation requires the certificates/update permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate in the given key - vault. - :type certificate_name: str - :param certificate_version: The version of the certificate. - :type certificate_version: str - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: - ~azure.keyvault.v2016_10_01.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v2016_10_01.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.CertificateBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.CertificateUpdateParameters(certificate_policy=certificate_policy, certificate_attributes=certificate_attributes, tags=tags) - - # Construct URL - url = self.update_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str'), - 'certificate-version': self._serialize.url("certificate_version", certificate_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'CertificateUpdateParameters') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificateBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_certificate.metadata = {'url': '/certificates/{certificate-name}/{certificate-version}'} - - def get_certificate( - self, vault_base_url, certificate_name, certificate_version, custom_headers=None, raw=False, **operation_config): - """Gets information about a certificate. - - Gets information about a specific certificate. This operation requires - the certificates/get permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate in the given - vault. - :type certificate_name: str - :param certificate_version: The version of the certificate. - :type certificate_version: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.CertificateBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str'), - 'certificate-version': self._serialize.url("certificate_version", certificate_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificateBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_certificate.metadata = {'url': '/certificates/{certificate-name}/{certificate-version}'} - - def update_certificate_operation( - self, vault_base_url, certificate_name, cancellation_requested, custom_headers=None, raw=False, **operation_config): - """Updates a certificate operation. - - Updates a certificate creation operation that is already in progress. - This operation requires the certificates/update permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param cancellation_requested: Indicates if cancellation was requested - on the certificate operation. - :type cancellation_requested: bool - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateOperation or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.CertificateOperation or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - certificate_operation = models.CertificateOperationUpdateParameter(cancellation_requested=cancellation_requested) - - # Construct URL - url = self.update_certificate_operation.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(certificate_operation, 'CertificateOperationUpdateParameter') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificateOperation', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_certificate_operation.metadata = {'url': '/certificates/{certificate-name}/pending'} - - def get_certificate_operation( - self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Gets the creation operation of a certificate. - - Gets the creation operation associated with a specified certificate. - This operation requires the certificates/get permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateOperation or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.CertificateOperation or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_certificate_operation.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificateOperation', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_certificate_operation.metadata = {'url': '/certificates/{certificate-name}/pending'} - - def delete_certificate_operation( - self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Deletes the creation operation for a specific certificate. - - Deletes the creation operation for a specified certificate that is in - the process of being created. The certificate is no longer created. - This operation requires the certificates/update permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateOperation or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.CertificateOperation or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.delete_certificate_operation.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificateOperation', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_certificate_operation.metadata = {'url': '/certificates/{certificate-name}/pending'} - - def merge_certificate( - self, vault_base_url, certificate_name, x509_certificates, certificate_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Merges a certificate or a certificate chain with a key pair existing on - the server. - - The MergeCertificate operation performs the merging of a certificate or - certificate chain with a key pair currently available in the service. - This operation requires the certificates/create permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param x509_certificates: The certificate or the certificate chain to - merge. - :type x509_certificates: list[bytearray] - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v2016_10_01.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.CertificateBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.CertificateMergeParameters(x509_certificates=x509_certificates, certificate_attributes=certificate_attributes, tags=tags) - - # Construct URL - url = self.merge_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'CertificateMergeParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [201]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 201: - deserialized = self._deserialize('CertificateBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - merge_certificate.metadata = {'url': '/certificates/{certificate-name}/pending/merge'} - - def get_deleted_certificates( - self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): - """Lists the deleted certificates in the specified vault currently - available for recovery. - - The GetDeletedCertificates operation retrieves the certificates in the - current vault which are in a deleted state and ready for recovery or - purging. This operation includes deletion-specific information. This - operation requires the certificates/get/list permission. This operation - can only be enabled on soft-delete enabled vaults. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of DeletedCertificateItem - :rtype: - ~azure.keyvault.v2016_10_01.models.DeletedCertificateItemPaged[~azure.keyvault.v2016_10_01.models.DeletedCertificateItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_deleted_certificates.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.DeletedCertificateItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.DeletedCertificateItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_deleted_certificates.metadata = {'url': '/deletedcertificates'} - - def get_deleted_certificate( - self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Retrieves information about the specified deleted certificate. - - The GetDeletedCertificate operation retrieves the deleted certificate - information plus its attributes, such as retention interval, scheduled - permanent deletion and the current deletion recovery level. This - operation requires the certificates/get permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedCertificateBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.DeletedCertificateBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_deleted_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedCertificateBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_deleted_certificate.metadata = {'url': '/deletedcertificates/{certificate-name}'} - - def purge_deleted_certificate( - self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Permanently deletes the specified deleted certificate. - - The PurgeDeletedCertificate operation performs an irreversible deletion - of the specified certificate, without possibility for recovery. The - operation is not available if the recovery level does not specify - 'Purgeable'. This operation requires the certificate/purge permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.purge_deleted_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [204]: - raise models.KeyVaultErrorException(self._deserialize, response) - - if raw: - client_raw_response = ClientRawResponse(None, response) - return client_raw_response - purge_deleted_certificate.metadata = {'url': '/deletedcertificates/{certificate-name}'} - - def recover_deleted_certificate( - self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Recovers the deleted certificate back to its current version under - /certificates. - - The RecoverDeletedCertificate operation performs the reversal of the - Delete operation. The operation is applicable in vaults enabled for - soft-delete, and must be issued during the retention interval - (available in the deleted certificate's attributes). This operation - requires the certificates/recover permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the deleted certificate - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.CertificateBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.recover_deleted_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificateBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - recover_deleted_certificate.metadata = {'url': '/deletedcertificates/{certificate-name}/recover'} - - def get_storage_accounts( - self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): - """List storage accounts managed by the specified key vault. This - operation requires the storage/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of StorageAccountItem - :rtype: - ~azure.keyvault.v2016_10_01.models.StorageAccountItemPaged[~azure.keyvault.v2016_10_01.models.StorageAccountItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_storage_accounts.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.StorageAccountItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.StorageAccountItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_storage_accounts.metadata = {'url': '/storage'} - - def delete_storage_account( - self, vault_base_url, storage_account_name, custom_headers=None, raw=False, **operation_config): - """Deletes a storage account. This operation requires the storage/delete - permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: StorageBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.StorageBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.delete_storage_account.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('StorageBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_storage_account.metadata = {'url': '/storage/{storage-account-name}'} - - def get_storage_account( - self, vault_base_url, storage_account_name, custom_headers=None, raw=False, **operation_config): - """Gets information about a specified storage account. This operation - requires the storage/get permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: StorageBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.StorageBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_storage_account.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('StorageBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_storage_account.metadata = {'url': '/storage/{storage-account-name}'} - - def set_storage_account( - self, vault_base_url, storage_account_name, resource_id, active_key_name, auto_regenerate_key, regeneration_period=None, storage_account_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Creates or updates a new storage account. This operation requires the - storage/set permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param resource_id: Storage account resource id. - :type resource_id: str - :param active_key_name: Current active storage account key name. - :type active_key_name: str - :param auto_regenerate_key: whether keyvault should manage the storage - account for the user. - :type auto_regenerate_key: bool - :param regeneration_period: The key regeneration time duration - specified in ISO-8601 format. - :type regeneration_period: str - :param storage_account_attributes: The attributes of the storage - account. - :type storage_account_attributes: - ~azure.keyvault.v2016_10_01.models.StorageAccountAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: StorageBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.StorageBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.StorageAccountCreateParameters(resource_id=resource_id, active_key_name=active_key_name, auto_regenerate_key=auto_regenerate_key, regeneration_period=regeneration_period, storage_account_attributes=storage_account_attributes, tags=tags) - - # Construct URL - url = self.set_storage_account.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'StorageAccountCreateParameters') - - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('StorageBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - set_storage_account.metadata = {'url': '/storage/{storage-account-name}'} - - def update_storage_account( - self, vault_base_url, storage_account_name, active_key_name=None, auto_regenerate_key=None, regeneration_period=None, storage_account_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Updates the specified attributes associated with the given storage - account. This operation requires the storage/set/update permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param active_key_name: The current active storage account key name. - :type active_key_name: str - :param auto_regenerate_key: whether keyvault should manage the storage - account for the user. - :type auto_regenerate_key: bool - :param regeneration_period: The key regeneration time duration - specified in ISO-8601 format. - :type regeneration_period: str - :param storage_account_attributes: The attributes of the storage - account. - :type storage_account_attributes: - ~azure.keyvault.v2016_10_01.models.StorageAccountAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: StorageBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.StorageBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.StorageAccountUpdateParameters(active_key_name=active_key_name, auto_regenerate_key=auto_regenerate_key, regeneration_period=regeneration_period, storage_account_attributes=storage_account_attributes, tags=tags) - - # Construct URL - url = self.update_storage_account.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'StorageAccountUpdateParameters') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('StorageBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_storage_account.metadata = {'url': '/storage/{storage-account-name}'} - - def regenerate_storage_account_key( - self, vault_base_url, storage_account_name, key_name, custom_headers=None, raw=False, **operation_config): - """Regenerates the specified key value for the given storage account. This - operation requires the storage/regeneratekey permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param key_name: The storage account key name. - :type key_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: StorageBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.StorageBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.StorageAccountRegenerteKeyParameters(key_name=key_name) - - # Construct URL - url = self.regenerate_storage_account_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'StorageAccountRegenerteKeyParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('StorageBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - regenerate_storage_account_key.metadata = {'url': '/storage/{storage-account-name}/regeneratekey'} - - def get_sas_definitions( - self, vault_base_url, storage_account_name, maxresults=None, custom_headers=None, raw=False, **operation_config): - """List storage SAS definitions for the given storage account. This - operation requires the storage/listsas permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of SasDefinitionItem - :rtype: - ~azure.keyvault.v2016_10_01.models.SasDefinitionItemPaged[~azure.keyvault.v2016_10_01.models.SasDefinitionItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_sas_definitions.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.SasDefinitionItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.SasDefinitionItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_sas_definitions.metadata = {'url': '/storage/{storage-account-name}/sas'} - - def delete_sas_definition( - self, vault_base_url, storage_account_name, sas_definition_name, custom_headers=None, raw=False, **operation_config): - """Deletes a SAS definition from a specified storage account. This - operation requires the storage/deletesas permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param sas_definition_name: The name of the SAS definition. - :type sas_definition_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SasDefinitionBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.SasDefinitionBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.delete_sas_definition.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), - 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SasDefinitionBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_sas_definition.metadata = {'url': '/storage/{storage-account-name}/sas/{sas-definition-name}'} - - def get_sas_definition( - self, vault_base_url, storage_account_name, sas_definition_name, custom_headers=None, raw=False, **operation_config): - """Gets information about a SAS definition for the specified storage - account. This operation requires the storage/getsas permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param sas_definition_name: The name of the SAS definition. - :type sas_definition_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SasDefinitionBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.SasDefinitionBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_sas_definition.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), - 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SasDefinitionBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_sas_definition.metadata = {'url': '/storage/{storage-account-name}/sas/{sas-definition-name}'} - - def set_sas_definition( - self, vault_base_url, storage_account_name, sas_definition_name, parameters, sas_definition_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Creates or updates a new SAS definition for the specified storage - account. This operation requires the storage/setsas permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param sas_definition_name: The name of the SAS definition. - :type sas_definition_name: str - :param parameters: Sas definition creation metadata in the form of - key-value pairs. - :type parameters: dict[str, str] - :param sas_definition_attributes: The attributes of the SAS - definition. - :type sas_definition_attributes: - ~azure.keyvault.v2016_10_01.models.SasDefinitionAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SasDefinitionBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.SasDefinitionBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters1 = models.SasDefinitionCreateParameters(parameters=parameters, sas_definition_attributes=sas_definition_attributes, tags=tags) - - # Construct URL - url = self.set_sas_definition.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), - 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters1, 'SasDefinitionCreateParameters') - - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SasDefinitionBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - set_sas_definition.metadata = {'url': '/storage/{storage-account-name}/sas/{sas-definition-name}'} - - def update_sas_definition( - self, vault_base_url, storage_account_name, sas_definition_name, parameters=None, sas_definition_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Updates the specified attributes associated with the given SAS - definition. This operation requires the storage/setsas permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param sas_definition_name: The name of the SAS definition. - :type sas_definition_name: str - :param parameters: Sas definition update metadata in the form of - key-value pairs. - :type parameters: dict[str, str] - :param sas_definition_attributes: The attributes of the SAS - definition. - :type sas_definition_attributes: - ~azure.keyvault.v2016_10_01.models.SasDefinitionAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SasDefinitionBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v2016_10_01.models.SasDefinitionBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters1 = models.SasDefinitionUpdateParameters(parameters=parameters, sas_definition_attributes=sas_definition_attributes, tags=tags) - - # Construct URL - url = self.update_sas_definition.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), - 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters1, 'SasDefinitionUpdateParameters') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SasDefinitionBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_sas_definition.metadata = {'url': '/storage/{storage-account-name}/sas/{sas-definition-name}'} diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/__init__.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/__init__.py deleted file mode 100644 index 4a5ccbd72829..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/__init__.py +++ /dev/null @@ -1,262 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -try: - from .attributes_py3 import Attributes - from .json_web_key_py3 import JsonWebKey - from .key_attributes_py3 import KeyAttributes - from .key_bundle_py3 import KeyBundle - from .key_item_py3 import KeyItem - from .deleted_key_bundle_py3 import DeletedKeyBundle - from .deleted_key_item_py3 import DeletedKeyItem - from .secret_attributes_py3 import SecretAttributes - from .secret_bundle_py3 import SecretBundle - from .secret_item_py3 import SecretItem - from .deleted_secret_bundle_py3 import DeletedSecretBundle - from .deleted_secret_item_py3 import DeletedSecretItem - from .secret_restore_parameters_py3 import SecretRestoreParameters - from .certificate_attributes_py3 import CertificateAttributes - from .certificate_item_py3 import CertificateItem - from .certificate_issuer_item_py3 import CertificateIssuerItem - from .key_properties_py3 import KeyProperties - from .secret_properties_py3 import SecretProperties - from .subject_alternative_names_py3 import SubjectAlternativeNames - from .x509_certificate_properties_py3 import X509CertificateProperties - from .trigger_py3 import Trigger - from .action_py3 import Action - from .lifetime_action_py3 import LifetimeAction - from .issuer_parameters_py3 import IssuerParameters - from .certificate_policy_py3 import CertificatePolicy - from .certificate_bundle_py3 import CertificateBundle - from .deleted_certificate_bundle_py3 import DeletedCertificateBundle - from .deleted_certificate_item_py3 import DeletedCertificateItem - from .error_py3 import Error - from .certificate_operation_py3 import CertificateOperation - from .issuer_credentials_py3 import IssuerCredentials - from .administrator_details_py3 import AdministratorDetails - from .organization_details_py3 import OrganizationDetails - from .issuer_attributes_py3 import IssuerAttributes - from .issuer_bundle_py3 import IssuerBundle - from .contact_py3 import Contact - from .contacts_py3 import Contacts - from .key_create_parameters_py3 import KeyCreateParameters - from .key_import_parameters_py3 import KeyImportParameters - from .key_operations_parameters_py3 import KeyOperationsParameters - from .key_sign_parameters_py3 import KeySignParameters - from .key_verify_parameters_py3 import KeyVerifyParameters - from .key_update_parameters_py3 import KeyUpdateParameters - from .key_restore_parameters_py3 import KeyRestoreParameters - from .secret_set_parameters_py3 import SecretSetParameters - from .secret_update_parameters_py3 import SecretUpdateParameters - from .certificate_create_parameters_py3 import CertificateCreateParameters - from .certificate_import_parameters_py3 import CertificateImportParameters - from .certificate_update_parameters_py3 import CertificateUpdateParameters - from .certificate_merge_parameters_py3 import CertificateMergeParameters - from .certificate_issuer_set_parameters_py3 import CertificateIssuerSetParameters - from .certificate_issuer_update_parameters_py3 import CertificateIssuerUpdateParameters - from .certificate_operation_update_parameter_py3 import CertificateOperationUpdateParameter - from .key_operation_result_py3 import KeyOperationResult - from .key_verify_result_py3 import KeyVerifyResult - from .backup_key_result_py3 import BackupKeyResult - from .backup_secret_result_py3 import BackupSecretResult - from .pending_certificate_signing_request_result_py3 import PendingCertificateSigningRequestResult - from .storage_account_attributes_py3 import StorageAccountAttributes - from .storage_bundle_py3 import StorageBundle - from .storage_account_create_parameters_py3 import StorageAccountCreateParameters - from .storage_account_update_parameters_py3 import StorageAccountUpdateParameters - from .storage_account_regenerte_key_parameters_py3 import StorageAccountRegenerteKeyParameters - from .storage_account_item_py3 import StorageAccountItem - from .sas_definition_attributes_py3 import SasDefinitionAttributes - from .sas_definition_bundle_py3 import SasDefinitionBundle - from .sas_definition_item_py3 import SasDefinitionItem - from .sas_definition_create_parameters_py3 import SasDefinitionCreateParameters - from .sas_definition_update_parameters_py3 import SasDefinitionUpdateParameters - from .key_vault_error_py3 import KeyVaultError, KeyVaultErrorException -except (SyntaxError, ImportError): - from .attributes import Attributes - from .json_web_key import JsonWebKey - from .key_attributes import KeyAttributes - from .key_bundle import KeyBundle - from .key_item import KeyItem - from .deleted_key_bundle import DeletedKeyBundle - from .deleted_key_item import DeletedKeyItem - from .secret_attributes import SecretAttributes - from .secret_bundle import SecretBundle - from .secret_item import SecretItem - from .deleted_secret_bundle import DeletedSecretBundle - from .deleted_secret_item import DeletedSecretItem - from .secret_restore_parameters import SecretRestoreParameters - from .certificate_attributes import CertificateAttributes - from .certificate_item import CertificateItem - from .certificate_issuer_item import CertificateIssuerItem - from .key_properties import KeyProperties - from .secret_properties import SecretProperties - from .subject_alternative_names import SubjectAlternativeNames - from .x509_certificate_properties import X509CertificateProperties - from .trigger import Trigger - from .action import Action - from .lifetime_action import LifetimeAction - from .issuer_parameters import IssuerParameters - from .certificate_policy import CertificatePolicy - from .certificate_bundle import CertificateBundle - from .deleted_certificate_bundle import DeletedCertificateBundle - from .deleted_certificate_item import DeletedCertificateItem - from .error import Error - from .certificate_operation import CertificateOperation - from .issuer_credentials import IssuerCredentials - from .administrator_details import AdministratorDetails - from .organization_details import OrganizationDetails - from .issuer_attributes import IssuerAttributes - from .issuer_bundle import IssuerBundle - from .contact import Contact - from .contacts import Contacts - from .key_create_parameters import KeyCreateParameters - from .key_import_parameters import KeyImportParameters - from .key_operations_parameters import KeyOperationsParameters - from .key_sign_parameters import KeySignParameters - from .key_verify_parameters import KeyVerifyParameters - from .key_update_parameters import KeyUpdateParameters - from .key_restore_parameters import KeyRestoreParameters - from .secret_set_parameters import SecretSetParameters - from .secret_update_parameters import SecretUpdateParameters - from .certificate_create_parameters import CertificateCreateParameters - from .certificate_import_parameters import CertificateImportParameters - from .certificate_update_parameters import CertificateUpdateParameters - from .certificate_merge_parameters import CertificateMergeParameters - from .certificate_issuer_set_parameters import CertificateIssuerSetParameters - from .certificate_issuer_update_parameters import CertificateIssuerUpdateParameters - from .certificate_operation_update_parameter import CertificateOperationUpdateParameter - from .key_operation_result import KeyOperationResult - from .key_verify_result import KeyVerifyResult - from .backup_key_result import BackupKeyResult - from .backup_secret_result import BackupSecretResult - from .pending_certificate_signing_request_result import PendingCertificateSigningRequestResult - from .storage_account_attributes import StorageAccountAttributes - from .storage_bundle import StorageBundle - from .storage_account_create_parameters import StorageAccountCreateParameters - from .storage_account_update_parameters import StorageAccountUpdateParameters - from .storage_account_regenerte_key_parameters import StorageAccountRegenerteKeyParameters - from .storage_account_item import StorageAccountItem - from .sas_definition_attributes import SasDefinitionAttributes - from .sas_definition_bundle import SasDefinitionBundle - from .sas_definition_item import SasDefinitionItem - from .sas_definition_create_parameters import SasDefinitionCreateParameters - from .sas_definition_update_parameters import SasDefinitionUpdateParameters - from .key_vault_error import KeyVaultError, KeyVaultErrorException -from .key_item_paged import KeyItemPaged -from .deleted_key_item_paged import DeletedKeyItemPaged -from .secret_item_paged import SecretItemPaged -from .deleted_secret_item_paged import DeletedSecretItemPaged -from .certificate_item_paged import CertificateItemPaged -from .certificate_issuer_item_paged import CertificateIssuerItemPaged -from .deleted_certificate_item_paged import DeletedCertificateItemPaged -from .storage_account_item_paged import StorageAccountItemPaged -from .sas_definition_item_paged import SasDefinitionItemPaged -from .key_vault_client_enums import ( - JsonWebKeyType, - JsonWebKeyCurveName, - DeletionRecoveryLevel, - KeyUsageType, - ActionType, - JsonWebKeyOperation, - JsonWebKeyEncryptionAlgorithm, - JsonWebKeySignatureAlgorithm, -) - -__all__ = [ - 'Attributes', - 'JsonWebKey', - 'KeyAttributes', - 'KeyBundle', - 'KeyItem', - 'DeletedKeyBundle', - 'DeletedKeyItem', - 'SecretAttributes', - 'SecretBundle', - 'SecretItem', - 'DeletedSecretBundle', - 'DeletedSecretItem', - 'SecretRestoreParameters', - 'CertificateAttributes', - 'CertificateItem', - 'CertificateIssuerItem', - 'KeyProperties', - 'SecretProperties', - 'SubjectAlternativeNames', - 'X509CertificateProperties', - 'Trigger', - 'Action', - 'LifetimeAction', - 'IssuerParameters', - 'CertificatePolicy', - 'CertificateBundle', - 'DeletedCertificateBundle', - 'DeletedCertificateItem', - 'Error', - 'CertificateOperation', - 'IssuerCredentials', - 'AdministratorDetails', - 'OrganizationDetails', - 'IssuerAttributes', - 'IssuerBundle', - 'Contact', - 'Contacts', - 'KeyCreateParameters', - 'KeyImportParameters', - 'KeyOperationsParameters', - 'KeySignParameters', - 'KeyVerifyParameters', - 'KeyUpdateParameters', - 'KeyRestoreParameters', - 'SecretSetParameters', - 'SecretUpdateParameters', - 'CertificateCreateParameters', - 'CertificateImportParameters', - 'CertificateUpdateParameters', - 'CertificateMergeParameters', - 'CertificateIssuerSetParameters', - 'CertificateIssuerUpdateParameters', - 'CertificateOperationUpdateParameter', - 'KeyOperationResult', - 'KeyVerifyResult', - 'BackupKeyResult', - 'BackupSecretResult', - 'PendingCertificateSigningRequestResult', - 'StorageAccountAttributes', - 'StorageBundle', - 'StorageAccountCreateParameters', - 'StorageAccountUpdateParameters', - 'StorageAccountRegenerteKeyParameters', - 'StorageAccountItem', - 'SasDefinitionAttributes', - 'SasDefinitionBundle', - 'SasDefinitionItem', - 'SasDefinitionCreateParameters', - 'SasDefinitionUpdateParameters', - 'KeyVaultError', 'KeyVaultErrorException', - 'KeyItemPaged', - 'DeletedKeyItemPaged', - 'SecretItemPaged', - 'DeletedSecretItemPaged', - 'CertificateItemPaged', - 'CertificateIssuerItemPaged', - 'DeletedCertificateItemPaged', - 'StorageAccountItemPaged', - 'SasDefinitionItemPaged', - 'JsonWebKeyType', - 'JsonWebKeyCurveName', - 'DeletionRecoveryLevel', - 'KeyUsageType', - 'ActionType', - 'JsonWebKeyOperation', - 'JsonWebKeyEncryptionAlgorithm', - 'JsonWebKeySignatureAlgorithm', -] diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/action.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/action.py deleted file mode 100644 index 1ada9a5eedb6..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/action.py +++ /dev/null @@ -1,29 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Action(Model): - """The action that will be executed. - - :param action_type: The type of the action. Possible values include: - 'EmailContacts', 'AutoRenew' - :type action_type: str or ~azure.keyvault.v2016_10_01.models.ActionType - """ - - _attribute_map = { - 'action_type': {'key': 'action_type', 'type': 'ActionType'}, - } - - def __init__(self, **kwargs): - super(Action, self).__init__(**kwargs) - self.action_type = kwargs.get('action_type', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/action_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/action_py3.py deleted file mode 100644 index 4e0c61219757..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/action_py3.py +++ /dev/null @@ -1,29 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Action(Model): - """The action that will be executed. - - :param action_type: The type of the action. Possible values include: - 'EmailContacts', 'AutoRenew' - :type action_type: str or ~azure.keyvault.v2016_10_01.models.ActionType - """ - - _attribute_map = { - 'action_type': {'key': 'action_type', 'type': 'ActionType'}, - } - - def __init__(self, *, action_type=None, **kwargs) -> None: - super(Action, self).__init__(**kwargs) - self.action_type = action_type diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/administrator_details.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/administrator_details.py deleted file mode 100644 index 4026a83a5da4..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/administrator_details.py +++ /dev/null @@ -1,40 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class AdministratorDetails(Model): - """Details of the organization administrator of the certificate issuer. - - :param first_name: First name. - :type first_name: str - :param last_name: Last name. - :type last_name: str - :param email_address: Email addresss. - :type email_address: str - :param phone: Phone number. - :type phone: str - """ - - _attribute_map = { - 'first_name': {'key': 'first_name', 'type': 'str'}, - 'last_name': {'key': 'last_name', 'type': 'str'}, - 'email_address': {'key': 'email', 'type': 'str'}, - 'phone': {'key': 'phone', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(AdministratorDetails, self).__init__(**kwargs) - self.first_name = kwargs.get('first_name', None) - self.last_name = kwargs.get('last_name', None) - self.email_address = kwargs.get('email_address', None) - self.phone = kwargs.get('phone', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/administrator_details_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/administrator_details_py3.py deleted file mode 100644 index 24a8ef8a3a1b..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/administrator_details_py3.py +++ /dev/null @@ -1,40 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class AdministratorDetails(Model): - """Details of the organization administrator of the certificate issuer. - - :param first_name: First name. - :type first_name: str - :param last_name: Last name. - :type last_name: str - :param email_address: Email addresss. - :type email_address: str - :param phone: Phone number. - :type phone: str - """ - - _attribute_map = { - 'first_name': {'key': 'first_name', 'type': 'str'}, - 'last_name': {'key': 'last_name', 'type': 'str'}, - 'email_address': {'key': 'email', 'type': 'str'}, - 'phone': {'key': 'phone', 'type': 'str'}, - } - - def __init__(self, *, first_name: str=None, last_name: str=None, email_address: str=None, phone: str=None, **kwargs) -> None: - super(AdministratorDetails, self).__init__(**kwargs) - self.first_name = first_name - self.last_name = last_name - self.email_address = email_address - self.phone = phone diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/attributes.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/attributes.py deleted file mode 100644 index 5c89678b313f..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/attributes.py +++ /dev/null @@ -1,52 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Attributes(Model): - """The object attributes managed by the KeyVault service. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the object is enabled. - :type enabled: bool - :param not_before: Not before date in UTC. - :type not_before: datetime - :param expires: Expiry date in UTC. - :type expires: datetime - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'not_before': {'key': 'nbf', 'type': 'unix-time'}, - 'expires': {'key': 'exp', 'type': 'unix-time'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(Attributes, self).__init__(**kwargs) - self.enabled = kwargs.get('enabled', None) - self.not_before = kwargs.get('not_before', None) - self.expires = kwargs.get('expires', None) - self.created = None - self.updated = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/attributes_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/attributes_py3.py deleted file mode 100644 index 16fe316c84cb..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/attributes_py3.py +++ /dev/null @@ -1,52 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Attributes(Model): - """The object attributes managed by the KeyVault service. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the object is enabled. - :type enabled: bool - :param not_before: Not before date in UTC. - :type not_before: datetime - :param expires: Expiry date in UTC. - :type expires: datetime - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'not_before': {'key': 'nbf', 'type': 'unix-time'}, - 'expires': {'key': 'exp', 'type': 'unix-time'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - } - - def __init__(self, *, enabled: bool=None, not_before=None, expires=None, **kwargs) -> None: - super(Attributes, self).__init__(**kwargs) - self.enabled = enabled - self.not_before = not_before - self.expires = expires - self.created = None - self.updated = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/backup_key_result.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/backup_key_result.py deleted file mode 100644 index 4aaa5fc2ebe8..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/backup_key_result.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class BackupKeyResult(Model): - """The backup key result, containing the backup blob. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar value: The backup blob containing the backed up key. - :vartype value: bytes - """ - - _validation = { - 'value': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(BackupKeyResult, self).__init__(**kwargs) - self.value = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/backup_key_result_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/backup_key_result_py3.py deleted file mode 100644 index 7865e8701f76..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/backup_key_result_py3.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class BackupKeyResult(Model): - """The backup key result, containing the backup blob. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar value: The backup blob containing the backed up key. - :vartype value: bytes - """ - - _validation = { - 'value': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs) -> None: - super(BackupKeyResult, self).__init__(**kwargs) - self.value = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/backup_secret_result.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/backup_secret_result.py deleted file mode 100644 index 4f803fc0cefe..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/backup_secret_result.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class BackupSecretResult(Model): - """The backup secret result, containing the backup blob. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar value: The backup blob containing the backed up secret. - :vartype value: bytes - """ - - _validation = { - 'value': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(BackupSecretResult, self).__init__(**kwargs) - self.value = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/backup_secret_result_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/backup_secret_result_py3.py deleted file mode 100644 index 444ba7fe0fb5..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/backup_secret_result_py3.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class BackupSecretResult(Model): - """The backup secret result, containing the backup blob. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar value: The backup blob containing the backed up secret. - :vartype value: bytes - """ - - _validation = { - 'value': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs) -> None: - super(BackupSecretResult, self).__init__(**kwargs) - self.value = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_attributes.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_attributes.py deleted file mode 100644 index 84fb68baaa42..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_attributes.py +++ /dev/null @@ -1,59 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .attributes import Attributes - - -class CertificateAttributes(Attributes): - """The certificate management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the object is enabled. - :type enabled: bool - :param not_before: Not before date in UTC. - :type not_before: datetime - :param expires: Expiry date in UTC. - :type expires: datetime - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for certificates in the current vault. If it contains 'Purgeable', - the certificate can be permanently deleted by a privileged user; - otherwise, only the system can purge the certificate, at the end of the - retention interval. Possible values include: 'Purgeable', - 'Recoverable+Purgeable', 'Recoverable', - 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.v2016_10_01.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'not_before': {'key': 'nbf', 'type': 'unix-time'}, - 'expires': {'key': 'exp', 'type': 'unix-time'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(CertificateAttributes, self).__init__(**kwargs) - self.recovery_level = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_attributes_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_attributes_py3.py deleted file mode 100644 index bf0fb99549f8..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_attributes_py3.py +++ /dev/null @@ -1,59 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .attributes_py3 import Attributes - - -class CertificateAttributes(Attributes): - """The certificate management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the object is enabled. - :type enabled: bool - :param not_before: Not before date in UTC. - :type not_before: datetime - :param expires: Expiry date in UTC. - :type expires: datetime - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for certificates in the current vault. If it contains 'Purgeable', - the certificate can be permanently deleted by a privileged user; - otherwise, only the system can purge the certificate, at the end of the - retention interval. Possible values include: 'Purgeable', - 'Recoverable+Purgeable', 'Recoverable', - 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.v2016_10_01.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'not_before': {'key': 'nbf', 'type': 'unix-time'}, - 'expires': {'key': 'exp', 'type': 'unix-time'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, *, enabled: bool=None, not_before=None, expires=None, **kwargs) -> None: - super(CertificateAttributes, self).__init__(enabled=enabled, not_before=not_before, expires=expires, **kwargs) - self.recovery_level = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_bundle.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_bundle.py deleted file mode 100644 index 2783b3020397..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_bundle.py +++ /dev/null @@ -1,71 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateBundle(Model): - """A certificate bundle consists of a certificate (X509) plus its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :ivar kid: The key id. - :vartype kid: str - :ivar sid: The secret id. - :vartype sid: str - :ivar x509_thumbprint: Thumbprint of the certificate. - :vartype x509_thumbprint: bytes - :ivar policy: The management policy. - :vartype policy: ~azure.keyvault.v2016_10_01.models.CertificatePolicy - :param cer: CER contents of x509 certificate. - :type cer: bytearray - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The certificate attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs - :type tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'kid': {'readonly': True}, - 'sid': {'readonly': True}, - 'x509_thumbprint': {'readonly': True}, - 'policy': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'sid': {'key': 'sid', 'type': 'str'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - 'policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'cer': {'key': 'cer', 'type': 'bytearray'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(CertificateBundle, self).__init__(**kwargs) - self.id = None - self.kid = None - self.sid = None - self.x509_thumbprint = None - self.policy = None - self.cer = kwargs.get('cer', None) - self.content_type = kwargs.get('content_type', None) - self.attributes = kwargs.get('attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_bundle_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_bundle_py3.py deleted file mode 100644 index 3c8dcb437bb6..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_bundle_py3.py +++ /dev/null @@ -1,71 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateBundle(Model): - """A certificate bundle consists of a certificate (X509) plus its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :ivar kid: The key id. - :vartype kid: str - :ivar sid: The secret id. - :vartype sid: str - :ivar x509_thumbprint: Thumbprint of the certificate. - :vartype x509_thumbprint: bytes - :ivar policy: The management policy. - :vartype policy: ~azure.keyvault.v2016_10_01.models.CertificatePolicy - :param cer: CER contents of x509 certificate. - :type cer: bytearray - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The certificate attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs - :type tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'kid': {'readonly': True}, - 'sid': {'readonly': True}, - 'x509_thumbprint': {'readonly': True}, - 'policy': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'sid': {'key': 'sid', 'type': 'str'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - 'policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'cer': {'key': 'cer', 'type': 'bytearray'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, cer: bytearray=None, content_type: str=None, attributes=None, tags=None, **kwargs) -> None: - super(CertificateBundle, self).__init__(**kwargs) - self.id = None - self.kid = None - self.sid = None - self.x509_thumbprint = None - self.policy = None - self.cer = cer - self.content_type = content_type - self.attributes = attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_create_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_create_parameters.py deleted file mode 100644 index 5e1b808bb95d..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_create_parameters.py +++ /dev/null @@ -1,39 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateCreateParameters(Model): - """The certificate create parameters. - - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: - ~azure.keyvault.v2016_10_01.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v2016_10_01.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(CertificateCreateParameters, self).__init__(**kwargs) - self.certificate_policy = kwargs.get('certificate_policy', None) - self.certificate_attributes = kwargs.get('certificate_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_create_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_create_parameters_py3.py deleted file mode 100644 index 2f6c02bd3dc1..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_create_parameters_py3.py +++ /dev/null @@ -1,39 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateCreateParameters(Model): - """The certificate create parameters. - - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: - ~azure.keyvault.v2016_10_01.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v2016_10_01.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, certificate_policy=None, certificate_attributes=None, tags=None, **kwargs) -> None: - super(CertificateCreateParameters, self).__init__(**kwargs) - self.certificate_policy = certificate_policy - self.certificate_attributes = certificate_attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_import_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_import_parameters.py deleted file mode 100644 index 09b94b6fa30b..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_import_parameters.py +++ /dev/null @@ -1,56 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateImportParameters(Model): - """The certificate import parameters. - - All required parameters must be populated in order to send to Azure. - - :param base64_encoded_certificate: Required. Base64 encoded representation - of the certificate object to import. This certificate needs to contain the - private key. - :type base64_encoded_certificate: str - :param password: If the private key in base64EncodedCertificate is - encrypted, the password used for encryption. - :type password: str - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: - ~azure.keyvault.v2016_10_01.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v2016_10_01.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'base64_encoded_certificate': {'required': True}, - } - - _attribute_map = { - 'base64_encoded_certificate': {'key': 'value', 'type': 'str'}, - 'password': {'key': 'pwd', 'type': 'str'}, - 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(CertificateImportParameters, self).__init__(**kwargs) - self.base64_encoded_certificate = kwargs.get('base64_encoded_certificate', None) - self.password = kwargs.get('password', None) - self.certificate_policy = kwargs.get('certificate_policy', None) - self.certificate_attributes = kwargs.get('certificate_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_import_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_import_parameters_py3.py deleted file mode 100644 index e05b4a5bd209..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_import_parameters_py3.py +++ /dev/null @@ -1,56 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateImportParameters(Model): - """The certificate import parameters. - - All required parameters must be populated in order to send to Azure. - - :param base64_encoded_certificate: Required. Base64 encoded representation - of the certificate object to import. This certificate needs to contain the - private key. - :type base64_encoded_certificate: str - :param password: If the private key in base64EncodedCertificate is - encrypted, the password used for encryption. - :type password: str - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: - ~azure.keyvault.v2016_10_01.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v2016_10_01.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'base64_encoded_certificate': {'required': True}, - } - - _attribute_map = { - 'base64_encoded_certificate': {'key': 'value', 'type': 'str'}, - 'password': {'key': 'pwd', 'type': 'str'}, - 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, base64_encoded_certificate: str, password: str=None, certificate_policy=None, certificate_attributes=None, tags=None, **kwargs) -> None: - super(CertificateImportParameters, self).__init__(**kwargs) - self.base64_encoded_certificate = base64_encoded_certificate - self.password = password - self.certificate_policy = certificate_policy - self.certificate_attributes = certificate_attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_item.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_item.py deleted file mode 100644 index 98713b2ab4c1..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_item.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateIssuerItem(Model): - """The certificate issuer item containing certificate issuer metadata. - - :param id: Certificate Identifier. - :type id: str - :param provider: The issuer provider. - :type provider: str - """ - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'provider': {'key': 'provider', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(CertificateIssuerItem, self).__init__(**kwargs) - self.id = kwargs.get('id', None) - self.provider = kwargs.get('provider', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_item_paged.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_item_paged.py deleted file mode 100644 index 38cd67af1dc0..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.paging import Paged - - -class CertificateIssuerItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`CertificateIssuerItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[CertificateIssuerItem]'} - } - - def __init__(self, *args, **kwargs): - - super(CertificateIssuerItemPaged, self).__init__(*args, **kwargs) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_item_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_item_py3.py deleted file mode 100644 index f11aa78f8cdd..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_item_py3.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateIssuerItem(Model): - """The certificate issuer item containing certificate issuer metadata. - - :param id: Certificate Identifier. - :type id: str - :param provider: The issuer provider. - :type provider: str - """ - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'provider': {'key': 'provider', 'type': 'str'}, - } - - def __init__(self, *, id: str=None, provider: str=None, **kwargs) -> None: - super(CertificateIssuerItem, self).__init__(**kwargs) - self.id = id - self.provider = provider diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_set_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_set_parameters.py deleted file mode 100644 index 2a60e70055a0..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_set_parameters.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateIssuerSetParameters(Model): - """The certificate issuer set parameters. - - All required parameters must be populated in order to send to Azure. - - :param provider: Required. The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: ~azure.keyvault.v2016_10_01.models.IssuerCredentials - :param organization_details: Details of the organization as provided to - the issuer. - :type organization_details: - ~azure.keyvault.v2016_10_01.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.v2016_10_01.models.IssuerAttributes - """ - - _validation = { - 'provider': {'required': True}, - } - - _attribute_map = { - 'provider': {'key': 'provider', 'type': 'str'}, - 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, - 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, - 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, - } - - def __init__(self, **kwargs): - super(CertificateIssuerSetParameters, self).__init__(**kwargs) - self.provider = kwargs.get('provider', None) - self.credentials = kwargs.get('credentials', None) - self.organization_details = kwargs.get('organization_details', None) - self.attributes = kwargs.get('attributes', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_set_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_set_parameters_py3.py deleted file mode 100644 index cac1eac37e99..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_set_parameters_py3.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateIssuerSetParameters(Model): - """The certificate issuer set parameters. - - All required parameters must be populated in order to send to Azure. - - :param provider: Required. The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: ~azure.keyvault.v2016_10_01.models.IssuerCredentials - :param organization_details: Details of the organization as provided to - the issuer. - :type organization_details: - ~azure.keyvault.v2016_10_01.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.v2016_10_01.models.IssuerAttributes - """ - - _validation = { - 'provider': {'required': True}, - } - - _attribute_map = { - 'provider': {'key': 'provider', 'type': 'str'}, - 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, - 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, - 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, - } - - def __init__(self, *, provider: str, credentials=None, organization_details=None, attributes=None, **kwargs) -> None: - super(CertificateIssuerSetParameters, self).__init__(**kwargs) - self.provider = provider - self.credentials = credentials - self.organization_details = organization_details - self.attributes = attributes diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_update_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_update_parameters.py deleted file mode 100644 index 0fe531e1bdb0..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_update_parameters.py +++ /dev/null @@ -1,42 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateIssuerUpdateParameters(Model): - """The certificate issuer update parameters. - - :param provider: The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: ~azure.keyvault.v2016_10_01.models.IssuerCredentials - :param organization_details: Details of the organization as provided to - the issuer. - :type organization_details: - ~azure.keyvault.v2016_10_01.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.v2016_10_01.models.IssuerAttributes - """ - - _attribute_map = { - 'provider': {'key': 'provider', 'type': 'str'}, - 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, - 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, - 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, - } - - def __init__(self, **kwargs): - super(CertificateIssuerUpdateParameters, self).__init__(**kwargs) - self.provider = kwargs.get('provider', None) - self.credentials = kwargs.get('credentials', None) - self.organization_details = kwargs.get('organization_details', None) - self.attributes = kwargs.get('attributes', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_update_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_update_parameters_py3.py deleted file mode 100644 index 040bda01a75a..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_update_parameters_py3.py +++ /dev/null @@ -1,42 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateIssuerUpdateParameters(Model): - """The certificate issuer update parameters. - - :param provider: The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: ~azure.keyvault.v2016_10_01.models.IssuerCredentials - :param organization_details: Details of the organization as provided to - the issuer. - :type organization_details: - ~azure.keyvault.v2016_10_01.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.v2016_10_01.models.IssuerAttributes - """ - - _attribute_map = { - 'provider': {'key': 'provider', 'type': 'str'}, - 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, - 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, - 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, - } - - def __init__(self, *, provider: str=None, credentials=None, organization_details=None, attributes=None, **kwargs) -> None: - super(CertificateIssuerUpdateParameters, self).__init__(**kwargs) - self.provider = provider - self.credentials = credentials - self.organization_details = organization_details - self.attributes = attributes diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_item.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_item.py deleted file mode 100644 index 7c13d47a49c1..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_item.py +++ /dev/null @@ -1,40 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateItem(Model): - """The certificate item containing certificate metadata. - - :param id: Certificate identifier. - :type id: str - :param attributes: The certificate management attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param x509_thumbprint: Thumbprint of the certificate. - :type x509_thumbprint: bytes - """ - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(CertificateItem, self).__init__(**kwargs) - self.id = kwargs.get('id', None) - self.attributes = kwargs.get('attributes', None) - self.tags = kwargs.get('tags', None) - self.x509_thumbprint = kwargs.get('x509_thumbprint', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_item_paged.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_item_paged.py deleted file mode 100644 index a783ef455782..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.paging import Paged - - -class CertificateItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`CertificateItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[CertificateItem]'} - } - - def __init__(self, *args, **kwargs): - - super(CertificateItemPaged, self).__init__(*args, **kwargs) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_item_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_item_py3.py deleted file mode 100644 index 6b0487018cb8..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_item_py3.py +++ /dev/null @@ -1,40 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateItem(Model): - """The certificate item containing certificate metadata. - - :param id: Certificate identifier. - :type id: str - :param attributes: The certificate management attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param x509_thumbprint: Thumbprint of the certificate. - :type x509_thumbprint: bytes - """ - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - } - - def __init__(self, *, id: str=None, attributes=None, tags=None, x509_thumbprint: bytes=None, **kwargs) -> None: - super(CertificateItem, self).__init__(**kwargs) - self.id = id - self.attributes = attributes - self.tags = tags - self.x509_thumbprint = x509_thumbprint diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_merge_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_merge_parameters.py deleted file mode 100644 index cc3d27d24e78..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_merge_parameters.py +++ /dev/null @@ -1,45 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateMergeParameters(Model): - """The certificate merge parameters. - - All required parameters must be populated in order to send to Azure. - - :param x509_certificates: Required. The certificate or the certificate - chain to merge. - :type x509_certificates: list[bytearray] - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v2016_10_01.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'x509_certificates': {'required': True}, - } - - _attribute_map = { - 'x509_certificates': {'key': 'x5c', 'type': '[bytearray]'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(CertificateMergeParameters, self).__init__(**kwargs) - self.x509_certificates = kwargs.get('x509_certificates', None) - self.certificate_attributes = kwargs.get('certificate_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_merge_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_merge_parameters_py3.py deleted file mode 100644 index fc90a8732302..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_merge_parameters_py3.py +++ /dev/null @@ -1,45 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateMergeParameters(Model): - """The certificate merge parameters. - - All required parameters must be populated in order to send to Azure. - - :param x509_certificates: Required. The certificate or the certificate - chain to merge. - :type x509_certificates: list[bytearray] - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v2016_10_01.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'x509_certificates': {'required': True}, - } - - _attribute_map = { - 'x509_certificates': {'key': 'x5c', 'type': '[bytearray]'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, x509_certificates, certificate_attributes=None, tags=None, **kwargs) -> None: - super(CertificateMergeParameters, self).__init__(**kwargs) - self.x509_certificates = x509_certificates - self.certificate_attributes = certificate_attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_operation.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_operation.py deleted file mode 100644 index 0cdad7c47c9d..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_operation.py +++ /dev/null @@ -1,72 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateOperation(Model): - """A certificate operation is returned in case of asynchronous requests. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :param issuer_parameters: Parameters for the issuer of the X509 component - of a certificate. - :type issuer_parameters: - ~azure.keyvault.v2016_10_01.models.IssuerParameters - :param csr: The certificate signing request (CSR) that is being used in - the certificate operation. - :type csr: bytearray - :param cancellation_requested: Indicates if cancellation was requested on - the certificate operation. - :type cancellation_requested: bool - :param status: Status of the certificate operation. - :type status: str - :param status_details: The status details of the certificate operation. - :type status_details: str - :param error: Error encountered, if any, during the certificate operation. - :type error: ~azure.keyvault.v2016_10_01.models.Error - :param target: Location which contains the result of the certificate - operation. - :type target: str - :param request_id: Identifier for the certificate operation. - :type request_id: str - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'issuer_parameters': {'key': 'issuer', 'type': 'IssuerParameters'}, - 'csr': {'key': 'csr', 'type': 'bytearray'}, - 'cancellation_requested': {'key': 'cancellation_requested', 'type': 'bool'}, - 'status': {'key': 'status', 'type': 'str'}, - 'status_details': {'key': 'status_details', 'type': 'str'}, - 'error': {'key': 'error', 'type': 'Error'}, - 'target': {'key': 'target', 'type': 'str'}, - 'request_id': {'key': 'request_id', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(CertificateOperation, self).__init__(**kwargs) - self.id = None - self.issuer_parameters = kwargs.get('issuer_parameters', None) - self.csr = kwargs.get('csr', None) - self.cancellation_requested = kwargs.get('cancellation_requested', None) - self.status = kwargs.get('status', None) - self.status_details = kwargs.get('status_details', None) - self.error = kwargs.get('error', None) - self.target = kwargs.get('target', None) - self.request_id = kwargs.get('request_id', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_operation_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_operation_py3.py deleted file mode 100644 index eb1179ce1158..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_operation_py3.py +++ /dev/null @@ -1,72 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateOperation(Model): - """A certificate operation is returned in case of asynchronous requests. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :param issuer_parameters: Parameters for the issuer of the X509 component - of a certificate. - :type issuer_parameters: - ~azure.keyvault.v2016_10_01.models.IssuerParameters - :param csr: The certificate signing request (CSR) that is being used in - the certificate operation. - :type csr: bytearray - :param cancellation_requested: Indicates if cancellation was requested on - the certificate operation. - :type cancellation_requested: bool - :param status: Status of the certificate operation. - :type status: str - :param status_details: The status details of the certificate operation. - :type status_details: str - :param error: Error encountered, if any, during the certificate operation. - :type error: ~azure.keyvault.v2016_10_01.models.Error - :param target: Location which contains the result of the certificate - operation. - :type target: str - :param request_id: Identifier for the certificate operation. - :type request_id: str - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'issuer_parameters': {'key': 'issuer', 'type': 'IssuerParameters'}, - 'csr': {'key': 'csr', 'type': 'bytearray'}, - 'cancellation_requested': {'key': 'cancellation_requested', 'type': 'bool'}, - 'status': {'key': 'status', 'type': 'str'}, - 'status_details': {'key': 'status_details', 'type': 'str'}, - 'error': {'key': 'error', 'type': 'Error'}, - 'target': {'key': 'target', 'type': 'str'}, - 'request_id': {'key': 'request_id', 'type': 'str'}, - } - - def __init__(self, *, issuer_parameters=None, csr: bytearray=None, cancellation_requested: bool=None, status: str=None, status_details: str=None, error=None, target: str=None, request_id: str=None, **kwargs) -> None: - super(CertificateOperation, self).__init__(**kwargs) - self.id = None - self.issuer_parameters = issuer_parameters - self.csr = csr - self.cancellation_requested = cancellation_requested - self.status = status - self.status_details = status_details - self.error = error - self.target = target - self.request_id = request_id diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_operation_update_parameter.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_operation_update_parameter.py deleted file mode 100644 index fadc2e3ea734..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_operation_update_parameter.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateOperationUpdateParameter(Model): - """The certificate operation update parameters. - - All required parameters must be populated in order to send to Azure. - - :param cancellation_requested: Required. Indicates if cancellation was - requested on the certificate operation. - :type cancellation_requested: bool - """ - - _validation = { - 'cancellation_requested': {'required': True}, - } - - _attribute_map = { - 'cancellation_requested': {'key': 'cancellation_requested', 'type': 'bool'}, - } - - def __init__(self, **kwargs): - super(CertificateOperationUpdateParameter, self).__init__(**kwargs) - self.cancellation_requested = kwargs.get('cancellation_requested', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_operation_update_parameter_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_operation_update_parameter_py3.py deleted file mode 100644 index c9fea79090ee..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_operation_update_parameter_py3.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateOperationUpdateParameter(Model): - """The certificate operation update parameters. - - All required parameters must be populated in order to send to Azure. - - :param cancellation_requested: Required. Indicates if cancellation was - requested on the certificate operation. - :type cancellation_requested: bool - """ - - _validation = { - 'cancellation_requested': {'required': True}, - } - - _attribute_map = { - 'cancellation_requested': {'key': 'cancellation_requested', 'type': 'bool'}, - } - - def __init__(self, *, cancellation_requested: bool, **kwargs) -> None: - super(CertificateOperationUpdateParameter, self).__init__(**kwargs) - self.cancellation_requested = cancellation_requested diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_policy.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_policy.py deleted file mode 100644 index 359f1a4c1fd6..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_policy.py +++ /dev/null @@ -1,66 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificatePolicy(Model): - """Management policy for a certificate. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :param key_properties: Properties of the key backing a certificate. - :type key_properties: ~azure.keyvault.v2016_10_01.models.KeyProperties - :param secret_properties: Properties of the secret backing a certificate. - :type secret_properties: - ~azure.keyvault.v2016_10_01.models.SecretProperties - :param x509_certificate_properties: Properties of the X509 component of a - certificate. - :type x509_certificate_properties: - ~azure.keyvault.v2016_10_01.models.X509CertificateProperties - :param lifetime_actions: Actions that will be performed by Key Vault over - the lifetime of a certificate. - :type lifetime_actions: - list[~azure.keyvault.v2016_10_01.models.LifetimeAction] - :param issuer_parameters: Parameters for the issuer of the X509 component - of a certificate. - :type issuer_parameters: - ~azure.keyvault.v2016_10_01.models.IssuerParameters - :param attributes: The certificate attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.CertificateAttributes - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'key_properties': {'key': 'key_props', 'type': 'KeyProperties'}, - 'secret_properties': {'key': 'secret_props', 'type': 'SecretProperties'}, - 'x509_certificate_properties': {'key': 'x509_props', 'type': 'X509CertificateProperties'}, - 'lifetime_actions': {'key': 'lifetime_actions', 'type': '[LifetimeAction]'}, - 'issuer_parameters': {'key': 'issuer', 'type': 'IssuerParameters'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - } - - def __init__(self, **kwargs): - super(CertificatePolicy, self).__init__(**kwargs) - self.id = None - self.key_properties = kwargs.get('key_properties', None) - self.secret_properties = kwargs.get('secret_properties', None) - self.x509_certificate_properties = kwargs.get('x509_certificate_properties', None) - self.lifetime_actions = kwargs.get('lifetime_actions', None) - self.issuer_parameters = kwargs.get('issuer_parameters', None) - self.attributes = kwargs.get('attributes', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_policy_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_policy_py3.py deleted file mode 100644 index e0256f1955f3..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_policy_py3.py +++ /dev/null @@ -1,66 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificatePolicy(Model): - """Management policy for a certificate. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :param key_properties: Properties of the key backing a certificate. - :type key_properties: ~azure.keyvault.v2016_10_01.models.KeyProperties - :param secret_properties: Properties of the secret backing a certificate. - :type secret_properties: - ~azure.keyvault.v2016_10_01.models.SecretProperties - :param x509_certificate_properties: Properties of the X509 component of a - certificate. - :type x509_certificate_properties: - ~azure.keyvault.v2016_10_01.models.X509CertificateProperties - :param lifetime_actions: Actions that will be performed by Key Vault over - the lifetime of a certificate. - :type lifetime_actions: - list[~azure.keyvault.v2016_10_01.models.LifetimeAction] - :param issuer_parameters: Parameters for the issuer of the X509 component - of a certificate. - :type issuer_parameters: - ~azure.keyvault.v2016_10_01.models.IssuerParameters - :param attributes: The certificate attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.CertificateAttributes - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'key_properties': {'key': 'key_props', 'type': 'KeyProperties'}, - 'secret_properties': {'key': 'secret_props', 'type': 'SecretProperties'}, - 'x509_certificate_properties': {'key': 'x509_props', 'type': 'X509CertificateProperties'}, - 'lifetime_actions': {'key': 'lifetime_actions', 'type': '[LifetimeAction]'}, - 'issuer_parameters': {'key': 'issuer', 'type': 'IssuerParameters'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - } - - def __init__(self, *, key_properties=None, secret_properties=None, x509_certificate_properties=None, lifetime_actions=None, issuer_parameters=None, attributes=None, **kwargs) -> None: - super(CertificatePolicy, self).__init__(**kwargs) - self.id = None - self.key_properties = key_properties - self.secret_properties = secret_properties - self.x509_certificate_properties = x509_certificate_properties - self.lifetime_actions = lifetime_actions - self.issuer_parameters = issuer_parameters - self.attributes = attributes diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_update_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_update_parameters.py deleted file mode 100644 index e051a85b45f8..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_update_parameters.py +++ /dev/null @@ -1,39 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateUpdateParameters(Model): - """The certificate update parameters. - - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: - ~azure.keyvault.v2016_10_01.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v2016_10_01.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(CertificateUpdateParameters, self).__init__(**kwargs) - self.certificate_policy = kwargs.get('certificate_policy', None) - self.certificate_attributes = kwargs.get('certificate_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_update_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_update_parameters_py3.py deleted file mode 100644 index aa3943305761..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_update_parameters_py3.py +++ /dev/null @@ -1,39 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateUpdateParameters(Model): - """The certificate update parameters. - - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: - ~azure.keyvault.v2016_10_01.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v2016_10_01.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, certificate_policy=None, certificate_attributes=None, tags=None, **kwargs) -> None: - super(CertificateUpdateParameters, self).__init__(**kwargs) - self.certificate_policy = certificate_policy - self.certificate_attributes = certificate_attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/contact.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/contact.py deleted file mode 100644 index 217a04fb85d0..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/contact.py +++ /dev/null @@ -1,36 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Contact(Model): - """The contact information for the vault certificates. - - :param email_address: Email addresss. - :type email_address: str - :param name: Name. - :type name: str - :param phone: Phone number. - :type phone: str - """ - - _attribute_map = { - 'email_address': {'key': 'email', 'type': 'str'}, - 'name': {'key': 'name', 'type': 'str'}, - 'phone': {'key': 'phone', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(Contact, self).__init__(**kwargs) - self.email_address = kwargs.get('email_address', None) - self.name = kwargs.get('name', None) - self.phone = kwargs.get('phone', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/contact_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/contact_py3.py deleted file mode 100644 index 56569b0d9912..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/contact_py3.py +++ /dev/null @@ -1,36 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Contact(Model): - """The contact information for the vault certificates. - - :param email_address: Email addresss. - :type email_address: str - :param name: Name. - :type name: str - :param phone: Phone number. - :type phone: str - """ - - _attribute_map = { - 'email_address': {'key': 'email', 'type': 'str'}, - 'name': {'key': 'name', 'type': 'str'}, - 'phone': {'key': 'phone', 'type': 'str'}, - } - - def __init__(self, *, email_address: str=None, name: str=None, phone: str=None, **kwargs) -> None: - super(Contact, self).__init__(**kwargs) - self.email_address = email_address - self.name = name - self.phone = phone diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/contacts.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/contacts.py deleted file mode 100644 index 31c29274a740..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/contacts.py +++ /dev/null @@ -1,39 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Contacts(Model): - """The contacts for the vault certificates. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Identifier for the contacts collection. - :vartype id: str - :param contact_list: The contact list for the vault certificates. - :type contact_list: list[~azure.keyvault.v2016_10_01.models.Contact] - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'contact_list': {'key': 'contacts', 'type': '[Contact]'}, - } - - def __init__(self, **kwargs): - super(Contacts, self).__init__(**kwargs) - self.id = None - self.contact_list = kwargs.get('contact_list', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/contacts_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/contacts_py3.py deleted file mode 100644 index 4583257cb570..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/contacts_py3.py +++ /dev/null @@ -1,39 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Contacts(Model): - """The contacts for the vault certificates. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Identifier for the contacts collection. - :vartype id: str - :param contact_list: The contact list for the vault certificates. - :type contact_list: list[~azure.keyvault.v2016_10_01.models.Contact] - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'contact_list': {'key': 'contacts', 'type': '[Contact]'}, - } - - def __init__(self, *, contact_list=None, **kwargs) -> None: - super(Contacts, self).__init__(**kwargs) - self.id = None - self.contact_list = contact_list diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_bundle.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_bundle.py deleted file mode 100644 index 418ae5e861b4..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_bundle.py +++ /dev/null @@ -1,79 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .certificate_bundle import CertificateBundle - - -class DeletedCertificateBundle(CertificateBundle): - """A Deleted Certificate consisting of its previous id, attributes and its - tags, as well as information on when it will be purged. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :ivar kid: The key id. - :vartype kid: str - :ivar sid: The secret id. - :vartype sid: str - :ivar x509_thumbprint: Thumbprint of the certificate. - :vartype x509_thumbprint: bytes - :ivar policy: The management policy. - :vartype policy: ~azure.keyvault.v2016_10_01.models.CertificatePolicy - :param cer: CER contents of x509 certificate. - :type cer: bytearray - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The certificate attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs - :type tags: dict[str, str] - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted certificate. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the certificate is scheduled to - be purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the certificate was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'id': {'readonly': True}, - 'kid': {'readonly': True}, - 'sid': {'readonly': True}, - 'x509_thumbprint': {'readonly': True}, - 'policy': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'sid': {'key': 'sid', 'type': 'str'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - 'policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'cer': {'key': 'cer', 'type': 'bytearray'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(DeletedCertificateBundle, self).__init__(**kwargs) - self.recovery_id = kwargs.get('recovery_id', None) - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_bundle_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_bundle_py3.py deleted file mode 100644 index 0b1b08dd23bd..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_bundle_py3.py +++ /dev/null @@ -1,79 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .certificate_bundle_py3 import CertificateBundle - - -class DeletedCertificateBundle(CertificateBundle): - """A Deleted Certificate consisting of its previous id, attributes and its - tags, as well as information on when it will be purged. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :ivar kid: The key id. - :vartype kid: str - :ivar sid: The secret id. - :vartype sid: str - :ivar x509_thumbprint: Thumbprint of the certificate. - :vartype x509_thumbprint: bytes - :ivar policy: The management policy. - :vartype policy: ~azure.keyvault.v2016_10_01.models.CertificatePolicy - :param cer: CER contents of x509 certificate. - :type cer: bytearray - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The certificate attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs - :type tags: dict[str, str] - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted certificate. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the certificate is scheduled to - be purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the certificate was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'id': {'readonly': True}, - 'kid': {'readonly': True}, - 'sid': {'readonly': True}, - 'x509_thumbprint': {'readonly': True}, - 'policy': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'sid': {'key': 'sid', 'type': 'str'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - 'policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'cer': {'key': 'cer', 'type': 'bytearray'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, *, cer: bytearray=None, content_type: str=None, attributes=None, tags=None, recovery_id: str=None, **kwargs) -> None: - super(DeletedCertificateBundle, self).__init__(cer=cer, content_type=content_type, attributes=attributes, tags=tags, **kwargs) - self.recovery_id = recovery_id - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_item.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_item.py deleted file mode 100644 index e67b8c19703c..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_item.py +++ /dev/null @@ -1,59 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .certificate_item import CertificateItem - - -class DeletedCertificateItem(CertificateItem): - """The deleted certificate item containing metadata about the deleted - certificate. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param id: Certificate identifier. - :type id: str - :param attributes: The certificate management attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param x509_thumbprint: Thumbprint of the certificate. - :type x509_thumbprint: bytes - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted certificate. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the certificate is scheduled to - be purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the certificate was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(DeletedCertificateItem, self).__init__(**kwargs) - self.recovery_id = kwargs.get('recovery_id', None) - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_item_paged.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_item_paged.py deleted file mode 100644 index a28553d93f95..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.paging import Paged - - -class DeletedCertificateItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`DeletedCertificateItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[DeletedCertificateItem]'} - } - - def __init__(self, *args, **kwargs): - - super(DeletedCertificateItemPaged, self).__init__(*args, **kwargs) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_item_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_item_py3.py deleted file mode 100644 index c990f3647189..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_item_py3.py +++ /dev/null @@ -1,59 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .certificate_item_py3 import CertificateItem - - -class DeletedCertificateItem(CertificateItem): - """The deleted certificate item containing metadata about the deleted - certificate. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param id: Certificate identifier. - :type id: str - :param attributes: The certificate management attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param x509_thumbprint: Thumbprint of the certificate. - :type x509_thumbprint: bytes - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted certificate. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the certificate is scheduled to - be purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the certificate was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, *, id: str=None, attributes=None, tags=None, x509_thumbprint: bytes=None, recovery_id: str=None, **kwargs) -> None: - super(DeletedCertificateItem, self).__init__(id=id, attributes=attributes, tags=tags, x509_thumbprint=x509_thumbprint, **kwargs) - self.recovery_id = recovery_id - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_bundle.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_bundle.py deleted file mode 100644 index 340df847d9a2..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_bundle.py +++ /dev/null @@ -1,61 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .key_bundle import KeyBundle - - -class DeletedKeyBundle(KeyBundle): - """A DeletedKeyBundle consisting of a WebKey plus its Attributes and deletion - info. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param key: The Json web key. - :type key: ~azure.keyvault.v2016_10_01.models.JsonWebKey - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted key. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the key is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the key was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'key': {'key': 'key', 'type': 'JsonWebKey'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(DeletedKeyBundle, self).__init__(**kwargs) - self.recovery_id = kwargs.get('recovery_id', None) - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_bundle_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_bundle_py3.py deleted file mode 100644 index 7cb00bf8fb16..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_bundle_py3.py +++ /dev/null @@ -1,61 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .key_bundle_py3 import KeyBundle - - -class DeletedKeyBundle(KeyBundle): - """A DeletedKeyBundle consisting of a WebKey plus its Attributes and deletion - info. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param key: The Json web key. - :type key: ~azure.keyvault.v2016_10_01.models.JsonWebKey - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted key. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the key is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the key was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'key': {'key': 'key', 'type': 'JsonWebKey'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, *, key=None, attributes=None, tags=None, recovery_id: str=None, **kwargs) -> None: - super(DeletedKeyBundle, self).__init__(key=key, attributes=attributes, tags=tags, **kwargs) - self.recovery_id = recovery_id - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_item.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_item.py deleted file mode 100644 index a8c3e4c72b57..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_item.py +++ /dev/null @@ -1,61 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .key_item import KeyItem - - -class DeletedKeyItem(KeyItem): - """The deleted key item containing the deleted key metadata and information - about deletion. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param kid: Key identifier. - :type kid: str - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted key. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the key is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the key was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'kid': {'key': 'kid', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(DeletedKeyItem, self).__init__(**kwargs) - self.recovery_id = kwargs.get('recovery_id', None) - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_item_paged.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_item_paged.py deleted file mode 100644 index 4e0d7d92532b..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.paging import Paged - - -class DeletedKeyItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`DeletedKeyItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[DeletedKeyItem]'} - } - - def __init__(self, *args, **kwargs): - - super(DeletedKeyItemPaged, self).__init__(*args, **kwargs) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_item_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_item_py3.py deleted file mode 100644 index e44fdba3f7cf..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_item_py3.py +++ /dev/null @@ -1,61 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .key_item_py3 import KeyItem - - -class DeletedKeyItem(KeyItem): - """The deleted key item containing the deleted key metadata and information - about deletion. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param kid: Key identifier. - :type kid: str - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted key. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the key is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the key was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'kid': {'key': 'kid', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, *, kid: str=None, attributes=None, tags=None, recovery_id: str=None, **kwargs) -> None: - super(DeletedKeyItem, self).__init__(kid=kid, attributes=attributes, tags=tags, **kwargs) - self.recovery_id = recovery_id - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_bundle.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_bundle.py deleted file mode 100644 index 749ca3fa9321..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_bundle.py +++ /dev/null @@ -1,72 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .secret_bundle import SecretBundle - - -class DeletedSecretBundle(SecretBundle): - """A Deleted Secret consisting of its previous id, attributes and its tags, as - well as information on when it will be purged. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param value: The secret value. - :type value: str - :param id: The secret id. - :type id: str - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar kid: If this is a secret backing a KV certificate, then this field - specifies the corresponding key backing the KV certificate. - :vartype kid: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a secret backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted secret. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the secret is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the secret was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'kid': {'readonly': True}, - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'str'}, - 'id': {'key': 'id', 'type': 'str'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(DeletedSecretBundle, self).__init__(**kwargs) - self.recovery_id = kwargs.get('recovery_id', None) - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_bundle_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_bundle_py3.py deleted file mode 100644 index 3a2bb0bfa8d1..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_bundle_py3.py +++ /dev/null @@ -1,72 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .secret_bundle_py3 import SecretBundle - - -class DeletedSecretBundle(SecretBundle): - """A Deleted Secret consisting of its previous id, attributes and its tags, as - well as information on when it will be purged. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param value: The secret value. - :type value: str - :param id: The secret id. - :type id: str - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar kid: If this is a secret backing a KV certificate, then this field - specifies the corresponding key backing the KV certificate. - :vartype kid: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a secret backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted secret. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the secret is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the secret was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'kid': {'readonly': True}, - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'str'}, - 'id': {'key': 'id', 'type': 'str'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, *, value: str=None, id: str=None, content_type: str=None, attributes=None, tags=None, recovery_id: str=None, **kwargs) -> None: - super(DeletedSecretBundle, self).__init__(value=value, id=id, content_type=content_type, attributes=attributes, tags=tags, **kwargs) - self.recovery_id = recovery_id - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_item.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_item.py deleted file mode 100644 index 4363379298af..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_item.py +++ /dev/null @@ -1,63 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .secret_item import SecretItem - - -class DeletedSecretItem(SecretItem): - """The deleted secret item containing metadata about the deleted secret. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param id: Secret identifier. - :type id: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param content_type: Type of the secret value such as a password. - :type content_type: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a key backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted secret. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the secret is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the secret was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(DeletedSecretItem, self).__init__(**kwargs) - self.recovery_id = kwargs.get('recovery_id', None) - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_item_paged.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_item_paged.py deleted file mode 100644 index e17aec8bee11..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.paging import Paged - - -class DeletedSecretItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`DeletedSecretItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[DeletedSecretItem]'} - } - - def __init__(self, *args, **kwargs): - - super(DeletedSecretItemPaged, self).__init__(*args, **kwargs) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_item_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_item_py3.py deleted file mode 100644 index 86dc5563d882..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_item_py3.py +++ /dev/null @@ -1,63 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .secret_item_py3 import SecretItem - - -class DeletedSecretItem(SecretItem): - """The deleted secret item containing metadata about the deleted secret. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param id: Secret identifier. - :type id: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param content_type: Type of the secret value such as a password. - :type content_type: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a key backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted secret. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the secret is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the secret was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, *, id: str=None, attributes=None, tags=None, content_type: str=None, recovery_id: str=None, **kwargs) -> None: - super(DeletedSecretItem, self).__init__(id=id, attributes=attributes, tags=tags, content_type=content_type, **kwargs) - self.recovery_id = recovery_id - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/error.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/error.py deleted file mode 100644 index 05353abfd5d4..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/error.py +++ /dev/null @@ -1,45 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Error(Model): - """The key vault server error. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar inner_error: - :vartype inner_error: ~azure.keyvault.v2016_10_01.models.Error - """ - - _validation = { - 'code': {'readonly': True}, - 'message': {'readonly': True}, - 'inner_error': {'readonly': True}, - } - - _attribute_map = { - 'code': {'key': 'code', 'type': 'str'}, - 'message': {'key': 'message', 'type': 'str'}, - 'inner_error': {'key': 'innererror', 'type': 'Error'}, - } - - def __init__(self, **kwargs): - super(Error, self).__init__(**kwargs) - self.code = None - self.message = None - self.inner_error = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/error_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/error_py3.py deleted file mode 100644 index 0dc08920d350..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/error_py3.py +++ /dev/null @@ -1,45 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Error(Model): - """The key vault server error. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar inner_error: - :vartype inner_error: ~azure.keyvault.v2016_10_01.models.Error - """ - - _validation = { - 'code': {'readonly': True}, - 'message': {'readonly': True}, - 'inner_error': {'readonly': True}, - } - - _attribute_map = { - 'code': {'key': 'code', 'type': 'str'}, - 'message': {'key': 'message', 'type': 'str'}, - 'inner_error': {'key': 'innererror', 'type': 'Error'}, - } - - def __init__(self, **kwargs) -> None: - super(Error, self).__init__(**kwargs) - self.code = None - self.message = None - self.inner_error = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_attributes.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_attributes.py deleted file mode 100644 index c10a16642899..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_attributes.py +++ /dev/null @@ -1,44 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class IssuerAttributes(Model): - """The attributes of an issuer managed by the Key Vault service. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the issuer is enabled. - :type enabled: bool - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(IssuerAttributes, self).__init__(**kwargs) - self.enabled = kwargs.get('enabled', None) - self.created = None - self.updated = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_attributes_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_attributes_py3.py deleted file mode 100644 index d52ad4e0fc20..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_attributes_py3.py +++ /dev/null @@ -1,44 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class IssuerAttributes(Model): - """The attributes of an issuer managed by the Key Vault service. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the issuer is enabled. - :type enabled: bool - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - } - - def __init__(self, *, enabled: bool=None, **kwargs) -> None: - super(IssuerAttributes, self).__init__(**kwargs) - self.enabled = enabled - self.created = None - self.updated = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_bundle.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_bundle.py deleted file mode 100644 index 175cade690a9..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_bundle.py +++ /dev/null @@ -1,53 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class IssuerBundle(Model): - """The issuer for Key Vault certificate. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Identifier for the issuer object. - :vartype id: str - :param provider: The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: ~azure.keyvault.v2016_10_01.models.IssuerCredentials - :param organization_details: Details of the organization as provided to - the issuer. - :type organization_details: - ~azure.keyvault.v2016_10_01.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.v2016_10_01.models.IssuerAttributes - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'provider': {'key': 'provider', 'type': 'str'}, - 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, - 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, - 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, - } - - def __init__(self, **kwargs): - super(IssuerBundle, self).__init__(**kwargs) - self.id = None - self.provider = kwargs.get('provider', None) - self.credentials = kwargs.get('credentials', None) - self.organization_details = kwargs.get('organization_details', None) - self.attributes = kwargs.get('attributes', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_bundle_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_bundle_py3.py deleted file mode 100644 index 9eeb8f5e210a..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_bundle_py3.py +++ /dev/null @@ -1,53 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class IssuerBundle(Model): - """The issuer for Key Vault certificate. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Identifier for the issuer object. - :vartype id: str - :param provider: The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: ~azure.keyvault.v2016_10_01.models.IssuerCredentials - :param organization_details: Details of the organization as provided to - the issuer. - :type organization_details: - ~azure.keyvault.v2016_10_01.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.v2016_10_01.models.IssuerAttributes - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'provider': {'key': 'provider', 'type': 'str'}, - 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, - 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, - 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, - } - - def __init__(self, *, provider: str=None, credentials=None, organization_details=None, attributes=None, **kwargs) -> None: - super(IssuerBundle, self).__init__(**kwargs) - self.id = None - self.provider = provider - self.credentials = credentials - self.organization_details = organization_details - self.attributes = attributes diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_credentials.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_credentials.py deleted file mode 100644 index 2f86d863239d..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_credentials.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class IssuerCredentials(Model): - """The credentials to be used for the certificate issuer. - - :param account_id: The user name/account name/account id. - :type account_id: str - :param password: The password/secret/account key. - :type password: str - """ - - _attribute_map = { - 'account_id': {'key': 'account_id', 'type': 'str'}, - 'password': {'key': 'pwd', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(IssuerCredentials, self).__init__(**kwargs) - self.account_id = kwargs.get('account_id', None) - self.password = kwargs.get('password', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_credentials_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_credentials_py3.py deleted file mode 100644 index 2882bad875d0..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_credentials_py3.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class IssuerCredentials(Model): - """The credentials to be used for the certificate issuer. - - :param account_id: The user name/account name/account id. - :type account_id: str - :param password: The password/secret/account key. - :type password: str - """ - - _attribute_map = { - 'account_id': {'key': 'account_id', 'type': 'str'}, - 'password': {'key': 'pwd', 'type': 'str'}, - } - - def __init__(self, *, account_id: str=None, password: str=None, **kwargs) -> None: - super(IssuerCredentials, self).__init__(**kwargs) - self.account_id = account_id - self.password = password diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_parameters.py deleted file mode 100644 index 9a0f0a5572e5..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_parameters.py +++ /dev/null @@ -1,34 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class IssuerParameters(Model): - """Parameters for the issuer of the X509 component of a certificate. - - :param name: Name of the referenced issuer object or reserved names; for - example, 'Self' or 'Unknown'. - :type name: str - :param certificate_type: Type of certificate to be requested from the - issuer provider. - :type certificate_type: str - """ - - _attribute_map = { - 'name': {'key': 'name', 'type': 'str'}, - 'certificate_type': {'key': 'cty', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(IssuerParameters, self).__init__(**kwargs) - self.name = kwargs.get('name', None) - self.certificate_type = kwargs.get('certificate_type', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_parameters_py3.py deleted file mode 100644 index 25fd2aadef30..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_parameters_py3.py +++ /dev/null @@ -1,34 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class IssuerParameters(Model): - """Parameters for the issuer of the X509 component of a certificate. - - :param name: Name of the referenced issuer object or reserved names; for - example, 'Self' or 'Unknown'. - :type name: str - :param certificate_type: Type of certificate to be requested from the - issuer provider. - :type certificate_type: str - """ - - _attribute_map = { - 'name': {'key': 'name', 'type': 'str'}, - 'certificate_type': {'key': 'cty', 'type': 'str'}, - } - - def __init__(self, *, name: str=None, certificate_type: str=None, **kwargs) -> None: - super(IssuerParameters, self).__init__(**kwargs) - self.name = name - self.certificate_type = certificate_type diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/json_web_key.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/json_web_key.py deleted file mode 100644 index 397e0d80e3a6..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/json_web_key.py +++ /dev/null @@ -1,91 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class JsonWebKey(Model): - """As of http://tools.ietf.org/html/draft-ietf-jose-json-web-key-18. - - :param kid: Key identifier. - :type kid: str - :param kty: JsonWebKey key type (kty). Possible values include: 'EC', - 'EC-HSM', 'RSA', 'RSA-HSM', 'oct' - :type kty: str or ~azure.keyvault.v2016_10_01.models.JsonWebKeyType - :param key_ops: - :type key_ops: list[str] - :param n: RSA modulus. - :type n: bytes - :param e: RSA public exponent. - :type e: bytes - :param d: RSA private exponent, or the D component of an EC private key. - :type d: bytes - :param dp: RSA private key parameter. - :type dp: bytes - :param dq: RSA private key parameter. - :type dq: bytes - :param qi: RSA private key parameter. - :type qi: bytes - :param p: RSA secret prime. - :type p: bytes - :param q: RSA secret prime, with p < q. - :type q: bytes - :param k: Symmetric key. - :type k: bytes - :param t: HSM Token, used with 'Bring Your Own Key'. - :type t: bytes - :param crv: Elliptic curve name. For valid values, see - JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', - 'SECP256K1' - :type crv: str or ~azure.keyvault.v2016_10_01.models.JsonWebKeyCurveName - :param x: X component of an EC public key. - :type x: bytes - :param y: Y component of an EC public key. - :type y: bytes - """ - - _attribute_map = { - 'kid': {'key': 'kid', 'type': 'str'}, - 'kty': {'key': 'kty', 'type': 'str'}, - 'key_ops': {'key': 'key_ops', 'type': '[str]'}, - 'n': {'key': 'n', 'type': 'base64'}, - 'e': {'key': 'e', 'type': 'base64'}, - 'd': {'key': 'd', 'type': 'base64'}, - 'dp': {'key': 'dp', 'type': 'base64'}, - 'dq': {'key': 'dq', 'type': 'base64'}, - 'qi': {'key': 'qi', 'type': 'base64'}, - 'p': {'key': 'p', 'type': 'base64'}, - 'q': {'key': 'q', 'type': 'base64'}, - 'k': {'key': 'k', 'type': 'base64'}, - 't': {'key': 'key_hsm', 'type': 'base64'}, - 'crv': {'key': 'crv', 'type': 'str'}, - 'x': {'key': 'x', 'type': 'base64'}, - 'y': {'key': 'y', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(JsonWebKey, self).__init__(**kwargs) - self.kid = kwargs.get('kid', None) - self.kty = kwargs.get('kty', None) - self.key_ops = kwargs.get('key_ops', None) - self.n = kwargs.get('n', None) - self.e = kwargs.get('e', None) - self.d = kwargs.get('d', None) - self.dp = kwargs.get('dp', None) - self.dq = kwargs.get('dq', None) - self.qi = kwargs.get('qi', None) - self.p = kwargs.get('p', None) - self.q = kwargs.get('q', None) - self.k = kwargs.get('k', None) - self.t = kwargs.get('t', None) - self.crv = kwargs.get('crv', None) - self.x = kwargs.get('x', None) - self.y = kwargs.get('y', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/json_web_key_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/json_web_key_py3.py deleted file mode 100644 index 2082d4673e30..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/json_web_key_py3.py +++ /dev/null @@ -1,91 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class JsonWebKey(Model): - """As of http://tools.ietf.org/html/draft-ietf-jose-json-web-key-18. - - :param kid: Key identifier. - :type kid: str - :param kty: JsonWebKey key type (kty). Possible values include: 'EC', - 'EC-HSM', 'RSA', 'RSA-HSM', 'oct' - :type kty: str or ~azure.keyvault.v2016_10_01.models.JsonWebKeyType - :param key_ops: - :type key_ops: list[str] - :param n: RSA modulus. - :type n: bytes - :param e: RSA public exponent. - :type e: bytes - :param d: RSA private exponent, or the D component of an EC private key. - :type d: bytes - :param dp: RSA private key parameter. - :type dp: bytes - :param dq: RSA private key parameter. - :type dq: bytes - :param qi: RSA private key parameter. - :type qi: bytes - :param p: RSA secret prime. - :type p: bytes - :param q: RSA secret prime, with p < q. - :type q: bytes - :param k: Symmetric key. - :type k: bytes - :param t: HSM Token, used with 'Bring Your Own Key'. - :type t: bytes - :param crv: Elliptic curve name. For valid values, see - JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', - 'SECP256K1' - :type crv: str or ~azure.keyvault.v2016_10_01.models.JsonWebKeyCurveName - :param x: X component of an EC public key. - :type x: bytes - :param y: Y component of an EC public key. - :type y: bytes - """ - - _attribute_map = { - 'kid': {'key': 'kid', 'type': 'str'}, - 'kty': {'key': 'kty', 'type': 'str'}, - 'key_ops': {'key': 'key_ops', 'type': '[str]'}, - 'n': {'key': 'n', 'type': 'base64'}, - 'e': {'key': 'e', 'type': 'base64'}, - 'd': {'key': 'd', 'type': 'base64'}, - 'dp': {'key': 'dp', 'type': 'base64'}, - 'dq': {'key': 'dq', 'type': 'base64'}, - 'qi': {'key': 'qi', 'type': 'base64'}, - 'p': {'key': 'p', 'type': 'base64'}, - 'q': {'key': 'q', 'type': 'base64'}, - 'k': {'key': 'k', 'type': 'base64'}, - 't': {'key': 'key_hsm', 'type': 'base64'}, - 'crv': {'key': 'crv', 'type': 'str'}, - 'x': {'key': 'x', 'type': 'base64'}, - 'y': {'key': 'y', 'type': 'base64'}, - } - - def __init__(self, *, kid: str=None, kty=None, key_ops=None, n: bytes=None, e: bytes=None, d: bytes=None, dp: bytes=None, dq: bytes=None, qi: bytes=None, p: bytes=None, q: bytes=None, k: bytes=None, t: bytes=None, crv=None, x: bytes=None, y: bytes=None, **kwargs) -> None: - super(JsonWebKey, self).__init__(**kwargs) - self.kid = kid - self.kty = kty - self.key_ops = key_ops - self.n = n - self.e = e - self.d = d - self.dp = dp - self.dq = dq - self.qi = qi - self.p = p - self.q = q - self.k = k - self.t = t - self.crv = crv - self.x = x - self.y = y diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_attributes.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_attributes.py deleted file mode 100644 index 304d7ef22048..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_attributes.py +++ /dev/null @@ -1,58 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .attributes import Attributes - - -class KeyAttributes(Attributes): - """The attributes of a key managed by the key vault service. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the object is enabled. - :type enabled: bool - :param not_before: Not before date in UTC. - :type not_before: datetime - :param expires: Expiry date in UTC. - :type expires: datetime - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for keys in the current vault. If it contains 'Purgeable' the key - can be permanently deleted by a privileged user; otherwise, only the - system can purge the key, at the end of the retention interval. Possible - values include: 'Purgeable', 'Recoverable+Purgeable', 'Recoverable', - 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.v2016_10_01.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'not_before': {'key': 'nbf', 'type': 'unix-time'}, - 'expires': {'key': 'exp', 'type': 'unix-time'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(KeyAttributes, self).__init__(**kwargs) - self.recovery_level = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_attributes_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_attributes_py3.py deleted file mode 100644 index c9c52691c052..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_attributes_py3.py +++ /dev/null @@ -1,58 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .attributes_py3 import Attributes - - -class KeyAttributes(Attributes): - """The attributes of a key managed by the key vault service. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the object is enabled. - :type enabled: bool - :param not_before: Not before date in UTC. - :type not_before: datetime - :param expires: Expiry date in UTC. - :type expires: datetime - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for keys in the current vault. If it contains 'Purgeable' the key - can be permanently deleted by a privileged user; otherwise, only the - system can purge the key, at the end of the retention interval. Possible - values include: 'Purgeable', 'Recoverable+Purgeable', 'Recoverable', - 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.v2016_10_01.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'not_before': {'key': 'nbf', 'type': 'unix-time'}, - 'expires': {'key': 'exp', 'type': 'unix-time'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, *, enabled: bool=None, not_before=None, expires=None, **kwargs) -> None: - super(KeyAttributes, self).__init__(enabled=enabled, not_before=not_before, expires=expires, **kwargs) - self.recovery_level = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_bundle.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_bundle.py deleted file mode 100644 index cc2a01414728..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_bundle.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyBundle(Model): - """A KeyBundle consisting of a WebKey plus its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param key: The Json web key. - :type key: ~azure.keyvault.v2016_10_01.models.JsonWebKey - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'key': {'key': 'key', 'type': 'JsonWebKey'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, **kwargs): - super(KeyBundle, self).__init__(**kwargs) - self.key = kwargs.get('key', None) - self.attributes = kwargs.get('attributes', None) - self.tags = kwargs.get('tags', None) - self.managed = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_bundle_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_bundle_py3.py deleted file mode 100644 index ddf2612d4e8c..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_bundle_py3.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyBundle(Model): - """A KeyBundle consisting of a WebKey plus its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param key: The Json web key. - :type key: ~azure.keyvault.v2016_10_01.models.JsonWebKey - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'key': {'key': 'key', 'type': 'JsonWebKey'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, *, key=None, attributes=None, tags=None, **kwargs) -> None: - super(KeyBundle, self).__init__(**kwargs) - self.key = key - self.attributes = attributes - self.tags = tags - self.managed = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_create_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_create_parameters.py deleted file mode 100644 index eef2576c5b36..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_create_parameters.py +++ /dev/null @@ -1,60 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyCreateParameters(Model): - """The key create parameters. - - All required parameters must be populated in order to send to Azure. - - :param kty: Required. The type of key to create. For valid values, see - JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', - 'oct' - :type kty: str or ~azure.keyvault.v2016_10_01.models.JsonWebKeyType - :param key_size: The key size in bits. For example: 2048, 3072, or 4096 - for RSA. - :type key_size: int - :param key_ops: - :type key_ops: list[str or - ~azure.keyvault.v2016_10_01.models.JsonWebKeyOperation] - :param key_attributes: - :type key_attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param curve: Elliptic curve name. For valid values, see - JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', - 'SECP256K1' - :type curve: str or ~azure.keyvault.v2016_10_01.models.JsonWebKeyCurveName - """ - - _validation = { - 'kty': {'required': True, 'min_length': 1}, - } - - _attribute_map = { - 'kty': {'key': 'kty', 'type': 'str'}, - 'key_size': {'key': 'key_size', 'type': 'int'}, - 'key_ops': {'key': 'key_ops', 'type': '[str]'}, - 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'curve': {'key': 'crv', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(KeyCreateParameters, self).__init__(**kwargs) - self.kty = kwargs.get('kty', None) - self.key_size = kwargs.get('key_size', None) - self.key_ops = kwargs.get('key_ops', None) - self.key_attributes = kwargs.get('key_attributes', None) - self.tags = kwargs.get('tags', None) - self.curve = kwargs.get('curve', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_create_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_create_parameters_py3.py deleted file mode 100644 index e89091134ec8..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_create_parameters_py3.py +++ /dev/null @@ -1,60 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyCreateParameters(Model): - """The key create parameters. - - All required parameters must be populated in order to send to Azure. - - :param kty: Required. The type of key to create. For valid values, see - JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', - 'oct' - :type kty: str or ~azure.keyvault.v2016_10_01.models.JsonWebKeyType - :param key_size: The key size in bits. For example: 2048, 3072, or 4096 - for RSA. - :type key_size: int - :param key_ops: - :type key_ops: list[str or - ~azure.keyvault.v2016_10_01.models.JsonWebKeyOperation] - :param key_attributes: - :type key_attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param curve: Elliptic curve name. For valid values, see - JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', - 'SECP256K1' - :type curve: str or ~azure.keyvault.v2016_10_01.models.JsonWebKeyCurveName - """ - - _validation = { - 'kty': {'required': True, 'min_length': 1}, - } - - _attribute_map = { - 'kty': {'key': 'kty', 'type': 'str'}, - 'key_size': {'key': 'key_size', 'type': 'int'}, - 'key_ops': {'key': 'key_ops', 'type': '[str]'}, - 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'curve': {'key': 'crv', 'type': 'str'}, - } - - def __init__(self, *, kty, key_size: int=None, key_ops=None, key_attributes=None, tags=None, curve=None, **kwargs) -> None: - super(KeyCreateParameters, self).__init__(**kwargs) - self.kty = kty - self.key_size = key_size - self.key_ops = key_ops - self.key_attributes = key_attributes - self.tags = tags - self.curve = curve diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_import_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_import_parameters.py deleted file mode 100644 index a4fe732ba2fe..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_import_parameters.py +++ /dev/null @@ -1,46 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyImportParameters(Model): - """The key import parameters. - - All required parameters must be populated in order to send to Azure. - - :param hsm: Whether to import as a hardware key (HSM) or software key. - :type hsm: bool - :param key: Required. The Json web key - :type key: ~azure.keyvault.v2016_10_01.models.JsonWebKey - :param key_attributes: The key management attributes. - :type key_attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'key': {'required': True}, - } - - _attribute_map = { - 'hsm': {'key': 'Hsm', 'type': 'bool'}, - 'key': {'key': 'key', 'type': 'JsonWebKey'}, - 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(KeyImportParameters, self).__init__(**kwargs) - self.hsm = kwargs.get('hsm', None) - self.key = kwargs.get('key', None) - self.key_attributes = kwargs.get('key_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_import_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_import_parameters_py3.py deleted file mode 100644 index 4f5fc66a2385..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_import_parameters_py3.py +++ /dev/null @@ -1,46 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyImportParameters(Model): - """The key import parameters. - - All required parameters must be populated in order to send to Azure. - - :param hsm: Whether to import as a hardware key (HSM) or software key. - :type hsm: bool - :param key: Required. The Json web key - :type key: ~azure.keyvault.v2016_10_01.models.JsonWebKey - :param key_attributes: The key management attributes. - :type key_attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'key': {'required': True}, - } - - _attribute_map = { - 'hsm': {'key': 'Hsm', 'type': 'bool'}, - 'key': {'key': 'key', 'type': 'JsonWebKey'}, - 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, key, hsm: bool=None, key_attributes=None, tags=None, **kwargs) -> None: - super(KeyImportParameters, self).__init__(**kwargs) - self.hsm = hsm - self.key = key - self.key_attributes = key_attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_item.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_item.py deleted file mode 100644 index 247cba1eaf50..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_item.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyItem(Model): - """The key item containing key metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param kid: Key identifier. - :type kid: str - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'kid': {'key': 'kid', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, **kwargs): - super(KeyItem, self).__init__(**kwargs) - self.kid = kwargs.get('kid', None) - self.attributes = kwargs.get('attributes', None) - self.tags = kwargs.get('tags', None) - self.managed = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_item_paged.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_item_paged.py deleted file mode 100644 index 7e9355a1c9d0..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.paging import Paged - - -class KeyItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`KeyItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[KeyItem]'} - } - - def __init__(self, *args, **kwargs): - - super(KeyItemPaged, self).__init__(*args, **kwargs) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_item_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_item_py3.py deleted file mode 100644 index 07d3b9d555a5..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_item_py3.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyItem(Model): - """The key item containing key metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param kid: Key identifier. - :type kid: str - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'kid': {'key': 'kid', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, *, kid: str=None, attributes=None, tags=None, **kwargs) -> None: - super(KeyItem, self).__init__(**kwargs) - self.kid = kid - self.attributes = attributes - self.tags = tags - self.managed = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_operation_result.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_operation_result.py deleted file mode 100644 index 577326dcf54c..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_operation_result.py +++ /dev/null @@ -1,40 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyOperationResult(Model): - """The key operation result. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar kid: Key identifier - :vartype kid: str - :ivar result: - :vartype result: bytes - """ - - _validation = { - 'kid': {'readonly': True}, - 'result': {'readonly': True}, - } - - _attribute_map = { - 'kid': {'key': 'kid', 'type': 'str'}, - 'result': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(KeyOperationResult, self).__init__(**kwargs) - self.kid = None - self.result = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_operation_result_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_operation_result_py3.py deleted file mode 100644 index 82cd8de63331..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_operation_result_py3.py +++ /dev/null @@ -1,40 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyOperationResult(Model): - """The key operation result. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar kid: Key identifier - :vartype kid: str - :ivar result: - :vartype result: bytes - """ - - _validation = { - 'kid': {'readonly': True}, - 'result': {'readonly': True}, - } - - _attribute_map = { - 'kid': {'key': 'kid', 'type': 'str'}, - 'result': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs) -> None: - super(KeyOperationResult, self).__init__(**kwargs) - self.kid = None - self.result = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_operations_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_operations_parameters.py deleted file mode 100644 index 5d63e2e450f4..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_operations_parameters.py +++ /dev/null @@ -1,41 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyOperationsParameters(Model): - """The key operations parameters. - - All required parameters must be populated in order to send to Azure. - - :param algorithm: Required. algorithm identifier. Possible values include: - 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' - :type algorithm: str or - ~azure.keyvault.v2016_10_01.models.JsonWebKeyEncryptionAlgorithm - :param value: Required. - :type value: bytes - """ - - _validation = { - 'algorithm': {'required': True, 'min_length': 1}, - 'value': {'required': True}, - } - - _attribute_map = { - 'algorithm': {'key': 'alg', 'type': 'str'}, - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(KeyOperationsParameters, self).__init__(**kwargs) - self.algorithm = kwargs.get('algorithm', None) - self.value = kwargs.get('value', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_operations_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_operations_parameters_py3.py deleted file mode 100644 index f0020a9327e2..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_operations_parameters_py3.py +++ /dev/null @@ -1,41 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyOperationsParameters(Model): - """The key operations parameters. - - All required parameters must be populated in order to send to Azure. - - :param algorithm: Required. algorithm identifier. Possible values include: - 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' - :type algorithm: str or - ~azure.keyvault.v2016_10_01.models.JsonWebKeyEncryptionAlgorithm - :param value: Required. - :type value: bytes - """ - - _validation = { - 'algorithm': {'required': True, 'min_length': 1}, - 'value': {'required': True}, - } - - _attribute_map = { - 'algorithm': {'key': 'alg', 'type': 'str'}, - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, *, algorithm, value: bytes, **kwargs) -> None: - super(KeyOperationsParameters, self).__init__(**kwargs) - self.algorithm = algorithm - self.value = value diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_properties.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_properties.py deleted file mode 100644 index cffdedef7c39..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_properties.py +++ /dev/null @@ -1,42 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyProperties(Model): - """Properties of the key pair backing a certificate. - - :param exportable: Indicates if the private key can be exported. - :type exportable: bool - :param key_type: The key type. - :type key_type: str - :param key_size: The key size in bits. For example: 2048, 3072, or 4096 - for RSA. - :type key_size: int - :param reuse_key: Indicates if the same key pair will be used on - certificate renewal. - :type reuse_key: bool - """ - - _attribute_map = { - 'exportable': {'key': 'exportable', 'type': 'bool'}, - 'key_type': {'key': 'kty', 'type': 'str'}, - 'key_size': {'key': 'key_size', 'type': 'int'}, - 'reuse_key': {'key': 'reuse_key', 'type': 'bool'}, - } - - def __init__(self, **kwargs): - super(KeyProperties, self).__init__(**kwargs) - self.exportable = kwargs.get('exportable', None) - self.key_type = kwargs.get('key_type', None) - self.key_size = kwargs.get('key_size', None) - self.reuse_key = kwargs.get('reuse_key', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_properties_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_properties_py3.py deleted file mode 100644 index 1068ce7af0f4..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_properties_py3.py +++ /dev/null @@ -1,42 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyProperties(Model): - """Properties of the key pair backing a certificate. - - :param exportable: Indicates if the private key can be exported. - :type exportable: bool - :param key_type: The key type. - :type key_type: str - :param key_size: The key size in bits. For example: 2048, 3072, or 4096 - for RSA. - :type key_size: int - :param reuse_key: Indicates if the same key pair will be used on - certificate renewal. - :type reuse_key: bool - """ - - _attribute_map = { - 'exportable': {'key': 'exportable', 'type': 'bool'}, - 'key_type': {'key': 'kty', 'type': 'str'}, - 'key_size': {'key': 'key_size', 'type': 'int'}, - 'reuse_key': {'key': 'reuse_key', 'type': 'bool'}, - } - - def __init__(self, *, exportable: bool=None, key_type: str=None, key_size: int=None, reuse_key: bool=None, **kwargs) -> None: - super(KeyProperties, self).__init__(**kwargs) - self.exportable = exportable - self.key_type = key_type - self.key_size = key_size - self.reuse_key = reuse_key diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_restore_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_restore_parameters.py deleted file mode 100644 index 7594a7af2833..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_restore_parameters.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyRestoreParameters(Model): - """The key restore parameters. - - All required parameters must be populated in order to send to Azure. - - :param key_bundle_backup: Required. The backup blob associated with a key - bundle. - :type key_bundle_backup: bytes - """ - - _validation = { - 'key_bundle_backup': {'required': True}, - } - - _attribute_map = { - 'key_bundle_backup': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(KeyRestoreParameters, self).__init__(**kwargs) - self.key_bundle_backup = kwargs.get('key_bundle_backup', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_restore_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_restore_parameters_py3.py deleted file mode 100644 index cf74e5904178..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_restore_parameters_py3.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyRestoreParameters(Model): - """The key restore parameters. - - All required parameters must be populated in order to send to Azure. - - :param key_bundle_backup: Required. The backup blob associated with a key - bundle. - :type key_bundle_backup: bytes - """ - - _validation = { - 'key_bundle_backup': {'required': True}, - } - - _attribute_map = { - 'key_bundle_backup': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, *, key_bundle_backup: bytes, **kwargs) -> None: - super(KeyRestoreParameters, self).__init__(**kwargs) - self.key_bundle_backup = key_bundle_backup diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_sign_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_sign_parameters.py deleted file mode 100644 index 2e817a0a419b..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_sign_parameters.py +++ /dev/null @@ -1,44 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeySignParameters(Model): - """The key operations parameters. - - All required parameters must be populated in order to send to Azure. - - :param algorithm: Required. The signing/verification algorithm identifier. - For more information on possible algorithm types, see - JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', 'PS384', - 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', - 'ECDSA256' - :type algorithm: str or - ~azure.keyvault.v2016_10_01.models.JsonWebKeySignatureAlgorithm - :param value: Required. - :type value: bytes - """ - - _validation = { - 'algorithm': {'required': True, 'min_length': 1}, - 'value': {'required': True}, - } - - _attribute_map = { - 'algorithm': {'key': 'alg', 'type': 'str'}, - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(KeySignParameters, self).__init__(**kwargs) - self.algorithm = kwargs.get('algorithm', None) - self.value = kwargs.get('value', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_sign_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_sign_parameters_py3.py deleted file mode 100644 index ba20d154c194..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_sign_parameters_py3.py +++ /dev/null @@ -1,44 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeySignParameters(Model): - """The key operations parameters. - - All required parameters must be populated in order to send to Azure. - - :param algorithm: Required. The signing/verification algorithm identifier. - For more information on possible algorithm types, see - JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', 'PS384', - 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', - 'ECDSA256' - :type algorithm: str or - ~azure.keyvault.v2016_10_01.models.JsonWebKeySignatureAlgorithm - :param value: Required. - :type value: bytes - """ - - _validation = { - 'algorithm': {'required': True, 'min_length': 1}, - 'value': {'required': True}, - } - - _attribute_map = { - 'algorithm': {'key': 'alg', 'type': 'str'}, - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, *, algorithm, value: bytes, **kwargs) -> None: - super(KeySignParameters, self).__init__(**kwargs) - self.algorithm = algorithm - self.value = value diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_update_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_update_parameters.py deleted file mode 100644 index bdedd4a96262..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_update_parameters.py +++ /dev/null @@ -1,38 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyUpdateParameters(Model): - """The key update parameters. - - :param key_ops: Json web key operations. For more information on possible - key operations, see JsonWebKeyOperation. - :type key_ops: list[str or - ~azure.keyvault.v2016_10_01.models.JsonWebKeyOperation] - :param key_attributes: - :type key_attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'key_ops': {'key': 'key_ops', 'type': '[str]'}, - 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(KeyUpdateParameters, self).__init__(**kwargs) - self.key_ops = kwargs.get('key_ops', None) - self.key_attributes = kwargs.get('key_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_update_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_update_parameters_py3.py deleted file mode 100644 index a36886b4b15d..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_update_parameters_py3.py +++ /dev/null @@ -1,38 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyUpdateParameters(Model): - """The key update parameters. - - :param key_ops: Json web key operations. For more information on possible - key operations, see JsonWebKeyOperation. - :type key_ops: list[str or - ~azure.keyvault.v2016_10_01.models.JsonWebKeyOperation] - :param key_attributes: - :type key_attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'key_ops': {'key': 'key_ops', 'type': '[str]'}, - 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, key_ops=None, key_attributes=None, tags=None, **kwargs) -> None: - super(KeyUpdateParameters, self).__init__(**kwargs) - self.key_ops = key_ops - self.key_attributes = key_attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_vault_client_enums.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_vault_client_enums.py deleted file mode 100644 index 98100904d78b..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_vault_client_enums.py +++ /dev/null @@ -1,88 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from enum import Enum - - -class JsonWebKeyType(str, Enum): - - ec = "EC" - ec_hsm = "EC-HSM" - rsa = "RSA" - rsa_hsm = "RSA-HSM" - oct = "oct" - - -class JsonWebKeyCurveName(str, Enum): - - p_256 = "P-256" #: The NIST P-256 elliptic curve, AKA SECG curve SECP256R1. - p_384 = "P-384" #: The NIST P-384 elliptic curve, AKA SECG curve SECP384R1. - p_521 = "P-521" #: The NIST P-521 elliptic curve, AKA SECG curve SECP521R1. - secp256_k1 = "SECP256K1" #: The SECG SECP256K1 elliptic curve. - - -class DeletionRecoveryLevel(str, Enum): - - purgeable = "Purgeable" #: Soft-delete is not enabled for this vault. A DELETE operation results in immediate and irreversible data loss. - recoverable_purgeable = "Recoverable+Purgeable" #: Soft-delete is enabled for this vault; A priveleged user may trigger an immediate, irreversible deletion(purge) of a deleted entity. - recoverable = "Recoverable" #: Soft-delete is enabled for this vault and purge has been disabled. A deleted entity will remain in this state until recovered, or the end of the retention interval. - recoverable_protected_subscription = "Recoverable+ProtectedSubscription" #: Soft-delete is enabled for this vault, and the subscription is protected against immediate deletion. - - -class KeyUsageType(str, Enum): - - digital_signature = "digitalSignature" - non_repudiation = "nonRepudiation" - key_encipherment = "keyEncipherment" - data_encipherment = "dataEncipherment" - key_agreement = "keyAgreement" - key_cert_sign = "keyCertSign" - c_rl_sign = "cRLSign" - encipher_only = "encipherOnly" - decipher_only = "decipherOnly" - - -class ActionType(str, Enum): - - email_contacts = "EmailContacts" - auto_renew = "AutoRenew" - - -class JsonWebKeyOperation(str, Enum): - - encrypt = "encrypt" - decrypt = "decrypt" - sign = "sign" - verify = "verify" - wrap_key = "wrapKey" - unwrap_key = "unwrapKey" - - -class JsonWebKeyEncryptionAlgorithm(str, Enum): - - rsa_oaep = "RSA-OAEP" - rsa_oaep_256 = "RSA-OAEP-256" - rsa1_5 = "RSA1_5" - - -class JsonWebKeySignatureAlgorithm(str, Enum): - - ps256 = "PS256" - ps384 = "PS384" - ps512 = "PS512" - rs256 = "RS256" - rs384 = "RS384" - rs512 = "RS512" - rsnull = "RSNULL" - es256 = "ES256" - es384 = "ES384" - es512 = "ES512" - ecdsa256 = "ECDSA256" diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_vault_error.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_vault_error.py deleted file mode 100644 index dd0802313ef7..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_vault_error.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model -from msrest.exceptions import HttpOperationError - - -class KeyVaultError(Model): - """The key vault error exception. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar error: - :vartype error: ~azure.keyvault.v2016_10_01.models.Error - """ - - _validation = { - 'error': {'readonly': True}, - } - - _attribute_map = { - 'error': {'key': 'error', 'type': 'Error'}, - } - - def __init__(self, **kwargs): - super(KeyVaultError, self).__init__(**kwargs) - self.error = None - - -class KeyVaultErrorException(HttpOperationError): - """Server responsed with exception of type: 'KeyVaultError'. - - :param deserialize: A deserializer - :param response: Server response to be deserialized. - """ - - def __init__(self, deserialize, response, *args): - - super(KeyVaultErrorException, self).__init__(deserialize, response, 'KeyVaultError', *args) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_vault_error_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_vault_error_py3.py deleted file mode 100644 index 41d85ba16212..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_vault_error_py3.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model -from msrest.exceptions import HttpOperationError - - -class KeyVaultError(Model): - """The key vault error exception. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar error: - :vartype error: ~azure.keyvault.v2016_10_01.models.Error - """ - - _validation = { - 'error': {'readonly': True}, - } - - _attribute_map = { - 'error': {'key': 'error', 'type': 'Error'}, - } - - def __init__(self, **kwargs) -> None: - super(KeyVaultError, self).__init__(**kwargs) - self.error = None - - -class KeyVaultErrorException(HttpOperationError): - """Server responsed with exception of type: 'KeyVaultError'. - - :param deserialize: A deserializer - :param response: Server response to be deserialized. - """ - - def __init__(self, deserialize, response, *args): - - super(KeyVaultErrorException, self).__init__(deserialize, response, 'KeyVaultError', *args) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_verify_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_verify_parameters.py deleted file mode 100644 index 186ee523f246..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_verify_parameters.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyVerifyParameters(Model): - """The key verify parameters. - - All required parameters must be populated in order to send to Azure. - - :param algorithm: Required. The signing/verification algorithm. For more - information on possible algorithm types, see JsonWebKeySignatureAlgorithm. - Possible values include: 'PS256', 'PS384', 'PS512', 'RS256', 'RS384', - 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', 'ECDSA256' - :type algorithm: str or - ~azure.keyvault.v2016_10_01.models.JsonWebKeySignatureAlgorithm - :param digest: Required. The digest used for signing. - :type digest: bytes - :param signature: Required. The signature to be verified. - :type signature: bytes - """ - - _validation = { - 'algorithm': {'required': True, 'min_length': 1}, - 'digest': {'required': True}, - 'signature': {'required': True}, - } - - _attribute_map = { - 'algorithm': {'key': 'alg', 'type': 'str'}, - 'digest': {'key': 'digest', 'type': 'base64'}, - 'signature': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(KeyVerifyParameters, self).__init__(**kwargs) - self.algorithm = kwargs.get('algorithm', None) - self.digest = kwargs.get('digest', None) - self.signature = kwargs.get('signature', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_verify_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_verify_parameters_py3.py deleted file mode 100644 index dbb2d82957d5..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_verify_parameters_py3.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyVerifyParameters(Model): - """The key verify parameters. - - All required parameters must be populated in order to send to Azure. - - :param algorithm: Required. The signing/verification algorithm. For more - information on possible algorithm types, see JsonWebKeySignatureAlgorithm. - Possible values include: 'PS256', 'PS384', 'PS512', 'RS256', 'RS384', - 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', 'ECDSA256' - :type algorithm: str or - ~azure.keyvault.v2016_10_01.models.JsonWebKeySignatureAlgorithm - :param digest: Required. The digest used for signing. - :type digest: bytes - :param signature: Required. The signature to be verified. - :type signature: bytes - """ - - _validation = { - 'algorithm': {'required': True, 'min_length': 1}, - 'digest': {'required': True}, - 'signature': {'required': True}, - } - - _attribute_map = { - 'algorithm': {'key': 'alg', 'type': 'str'}, - 'digest': {'key': 'digest', 'type': 'base64'}, - 'signature': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, *, algorithm, digest: bytes, signature: bytes, **kwargs) -> None: - super(KeyVerifyParameters, self).__init__(**kwargs) - self.algorithm = algorithm - self.digest = digest - self.signature = signature diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_verify_result.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_verify_result.py deleted file mode 100644 index baffb85589cc..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_verify_result.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyVerifyResult(Model): - """The key verify result. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar value: True if the signature is verified, otherwise false. - :vartype value: bool - """ - - _validation = { - 'value': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'bool'}, - } - - def __init__(self, **kwargs): - super(KeyVerifyResult, self).__init__(**kwargs) - self.value = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_verify_result_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_verify_result_py3.py deleted file mode 100644 index 33a7a7ebaefa..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/key_verify_result_py3.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyVerifyResult(Model): - """The key verify result. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar value: True if the signature is verified, otherwise false. - :vartype value: bool - """ - - _validation = { - 'value': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'bool'}, - } - - def __init__(self, **kwargs) -> None: - super(KeyVerifyResult, self).__init__(**kwargs) - self.value = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/lifetime_action.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/lifetime_action.py deleted file mode 100644 index 324aa347d022..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/lifetime_action.py +++ /dev/null @@ -1,33 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class LifetimeAction(Model): - """Action and its trigger that will be performed by Key Vault over the - lifetime of a certificate. - - :param trigger: The condition that will execute the action. - :type trigger: ~azure.keyvault.v2016_10_01.models.Trigger - :param action: The action that will be executed. - :type action: ~azure.keyvault.v2016_10_01.models.Action - """ - - _attribute_map = { - 'trigger': {'key': 'trigger', 'type': 'Trigger'}, - 'action': {'key': 'action', 'type': 'Action'}, - } - - def __init__(self, **kwargs): - super(LifetimeAction, self).__init__(**kwargs) - self.trigger = kwargs.get('trigger', None) - self.action = kwargs.get('action', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/lifetime_action_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/lifetime_action_py3.py deleted file mode 100644 index 29f608c30c02..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/lifetime_action_py3.py +++ /dev/null @@ -1,33 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class LifetimeAction(Model): - """Action and its trigger that will be performed by Key Vault over the - lifetime of a certificate. - - :param trigger: The condition that will execute the action. - :type trigger: ~azure.keyvault.v2016_10_01.models.Trigger - :param action: The action that will be executed. - :type action: ~azure.keyvault.v2016_10_01.models.Action - """ - - _attribute_map = { - 'trigger': {'key': 'trigger', 'type': 'Trigger'}, - 'action': {'key': 'action', 'type': 'Action'}, - } - - def __init__(self, *, trigger=None, action=None, **kwargs) -> None: - super(LifetimeAction, self).__init__(**kwargs) - self.trigger = trigger - self.action = action diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/organization_details.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/organization_details.py deleted file mode 100644 index 2ede7c6e8fc0..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/organization_details.py +++ /dev/null @@ -1,33 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class OrganizationDetails(Model): - """Details of the organization of the certificate issuer. - - :param id: Id of the organization. - :type id: str - :param admin_details: Details of the organization administrator. - :type admin_details: - list[~azure.keyvault.v2016_10_01.models.AdministratorDetails] - """ - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'admin_details': {'key': 'admin_details', 'type': '[AdministratorDetails]'}, - } - - def __init__(self, **kwargs): - super(OrganizationDetails, self).__init__(**kwargs) - self.id = kwargs.get('id', None) - self.admin_details = kwargs.get('admin_details', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/organization_details_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/organization_details_py3.py deleted file mode 100644 index f6f3ca554840..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/organization_details_py3.py +++ /dev/null @@ -1,33 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class OrganizationDetails(Model): - """Details of the organization of the certificate issuer. - - :param id: Id of the organization. - :type id: str - :param admin_details: Details of the organization administrator. - :type admin_details: - list[~azure.keyvault.v2016_10_01.models.AdministratorDetails] - """ - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'admin_details': {'key': 'admin_details', 'type': '[AdministratorDetails]'}, - } - - def __init__(self, *, id: str=None, admin_details=None, **kwargs) -> None: - super(OrganizationDetails, self).__init__(**kwargs) - self.id = id - self.admin_details = admin_details diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/pending_certificate_signing_request_result.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/pending_certificate_signing_request_result.py deleted file mode 100644 index 2bea9bfcdd61..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/pending_certificate_signing_request_result.py +++ /dev/null @@ -1,36 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class PendingCertificateSigningRequestResult(Model): - """The pending certificate signing request result. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar value: The pending certificate signing request as Base64 encoded - string. - :vartype value: str - """ - - _validation = { - 'value': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(PendingCertificateSigningRequestResult, self).__init__(**kwargs) - self.value = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/pending_certificate_signing_request_result_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/pending_certificate_signing_request_result_py3.py deleted file mode 100644 index 2895d5a77a03..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/pending_certificate_signing_request_result_py3.py +++ /dev/null @@ -1,36 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class PendingCertificateSigningRequestResult(Model): - """The pending certificate signing request result. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar value: The pending certificate signing request as Base64 encoded - string. - :vartype value: str - """ - - _validation = { - 'value': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'str'}, - } - - def __init__(self, **kwargs) -> None: - super(PendingCertificateSigningRequestResult, self).__init__(**kwargs) - self.value = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_attributes.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_attributes.py deleted file mode 100644 index f88bd466ba4b..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_attributes.py +++ /dev/null @@ -1,44 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionAttributes(Model): - """The SAS definition management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: the enabled state of the object. - :type enabled: bool - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(SasDefinitionAttributes, self).__init__(**kwargs) - self.enabled = kwargs.get('enabled', None) - self.created = None - self.updated = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_attributes_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_attributes_py3.py deleted file mode 100644 index e39796d6c7ee..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_attributes_py3.py +++ /dev/null @@ -1,44 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionAttributes(Model): - """The SAS definition management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: the enabled state of the object. - :type enabled: bool - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - } - - def __init__(self, *, enabled: bool=None, **kwargs) -> None: - super(SasDefinitionAttributes, self).__init__(**kwargs) - self.enabled = enabled - self.created = None - self.updated = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_bundle.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_bundle.py deleted file mode 100644 index 617c7dabde01..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_bundle.py +++ /dev/null @@ -1,58 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionBundle(Model): - """A SAS definition bundle consists of key vault SAS definition details plus - its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The SAS definition id. - :vartype id: str - :ivar secret_id: Storage account SAS definition secret id. - :vartype secret_id: str - :ivar parameters: The SAS definition metadata in the form of key-value - pairs. - :vartype parameters: dict[str, str] - :ivar attributes: The SAS definition attributes. - :vartype attributes: - ~azure.keyvault.v2016_10_01.models.SasDefinitionAttributes - :ivar tags: Application specific metadata in the form of key-value pairs - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'secret_id': {'readonly': True}, - 'parameters': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'secret_id': {'key': 'sid', 'type': 'str'}, - 'parameters': {'key': 'parameters', 'type': '{str}'}, - 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(SasDefinitionBundle, self).__init__(**kwargs) - self.id = None - self.secret_id = None - self.parameters = None - self.attributes = None - self.tags = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_bundle_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_bundle_py3.py deleted file mode 100644 index 651abf8ceca8..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_bundle_py3.py +++ /dev/null @@ -1,58 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionBundle(Model): - """A SAS definition bundle consists of key vault SAS definition details plus - its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The SAS definition id. - :vartype id: str - :ivar secret_id: Storage account SAS definition secret id. - :vartype secret_id: str - :ivar parameters: The SAS definition metadata in the form of key-value - pairs. - :vartype parameters: dict[str, str] - :ivar attributes: The SAS definition attributes. - :vartype attributes: - ~azure.keyvault.v2016_10_01.models.SasDefinitionAttributes - :ivar tags: Application specific metadata in the form of key-value pairs - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'secret_id': {'readonly': True}, - 'parameters': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'secret_id': {'key': 'sid', 'type': 'str'}, - 'parameters': {'key': 'parameters', 'type': '{str}'}, - 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs) -> None: - super(SasDefinitionBundle, self).__init__(**kwargs) - self.id = None - self.secret_id = None - self.parameters = None - self.attributes = None - self.tags = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_create_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_create_parameters.py deleted file mode 100644 index c95c7ed6ec84..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_create_parameters.py +++ /dev/null @@ -1,44 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionCreateParameters(Model): - """The SAS definition create parameters. - - All required parameters must be populated in order to send to Azure. - - :param parameters: Required. Sas definition creation metadata in the form - of key-value pairs. - :type parameters: dict[str, str] - :param sas_definition_attributes: The attributes of the SAS definition. - :type sas_definition_attributes: - ~azure.keyvault.v2016_10_01.models.SasDefinitionAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'parameters': {'required': True}, - } - - _attribute_map = { - 'parameters': {'key': 'parameters', 'type': '{str}'}, - 'sas_definition_attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(SasDefinitionCreateParameters, self).__init__(**kwargs) - self.parameters = kwargs.get('parameters', None) - self.sas_definition_attributes = kwargs.get('sas_definition_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_create_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_create_parameters_py3.py deleted file mode 100644 index d8881d489ec8..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_create_parameters_py3.py +++ /dev/null @@ -1,44 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionCreateParameters(Model): - """The SAS definition create parameters. - - All required parameters must be populated in order to send to Azure. - - :param parameters: Required. Sas definition creation metadata in the form - of key-value pairs. - :type parameters: dict[str, str] - :param sas_definition_attributes: The attributes of the SAS definition. - :type sas_definition_attributes: - ~azure.keyvault.v2016_10_01.models.SasDefinitionAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'parameters': {'required': True}, - } - - _attribute_map = { - 'parameters': {'key': 'parameters', 'type': '{str}'}, - 'sas_definition_attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, parameters, sas_definition_attributes=None, tags=None, **kwargs) -> None: - super(SasDefinitionCreateParameters, self).__init__(**kwargs) - self.parameters = parameters - self.sas_definition_attributes = sas_definition_attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_item.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_item.py deleted file mode 100644 index d7a34e984b96..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_item.py +++ /dev/null @@ -1,51 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionItem(Model): - """The SAS definition item containing storage SAS definition metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The storage SAS identifier. - :vartype id: str - :ivar secret_id: The storage account SAS definition secret id. - :vartype secret_id: str - :ivar attributes: The SAS definition management attributes. - :vartype attributes: - ~azure.keyvault.v2016_10_01.models.SasDefinitionAttributes - :ivar tags: Application specific metadata in the form of key-value pairs. - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'secret_id': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'secret_id': {'key': 'sid', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(SasDefinitionItem, self).__init__(**kwargs) - self.id = None - self.secret_id = None - self.attributes = None - self.tags = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_item_paged.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_item_paged.py deleted file mode 100644 index 208a9346679f..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.paging import Paged - - -class SasDefinitionItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`SasDefinitionItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[SasDefinitionItem]'} - } - - def __init__(self, *args, **kwargs): - - super(SasDefinitionItemPaged, self).__init__(*args, **kwargs) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_item_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_item_py3.py deleted file mode 100644 index 0ac9bec240ef..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_item_py3.py +++ /dev/null @@ -1,51 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionItem(Model): - """The SAS definition item containing storage SAS definition metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The storage SAS identifier. - :vartype id: str - :ivar secret_id: The storage account SAS definition secret id. - :vartype secret_id: str - :ivar attributes: The SAS definition management attributes. - :vartype attributes: - ~azure.keyvault.v2016_10_01.models.SasDefinitionAttributes - :ivar tags: Application specific metadata in the form of key-value pairs. - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'secret_id': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'secret_id': {'key': 'sid', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs) -> None: - super(SasDefinitionItem, self).__init__(**kwargs) - self.id = None - self.secret_id = None - self.attributes = None - self.tags = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_update_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_update_parameters.py deleted file mode 100644 index 24139d3ee100..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_update_parameters.py +++ /dev/null @@ -1,38 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionUpdateParameters(Model): - """The SAS definition update parameters. - - :param parameters: Sas definition update metadata in the form of key-value - pairs. - :type parameters: dict[str, str] - :param sas_definition_attributes: The attributes of the SAS definition. - :type sas_definition_attributes: - ~azure.keyvault.v2016_10_01.models.SasDefinitionAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'parameters': {'key': 'parameters', 'type': '{str}'}, - 'sas_definition_attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(SasDefinitionUpdateParameters, self).__init__(**kwargs) - self.parameters = kwargs.get('parameters', None) - self.sas_definition_attributes = kwargs.get('sas_definition_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_update_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_update_parameters_py3.py deleted file mode 100644 index 7efa004c6c49..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_update_parameters_py3.py +++ /dev/null @@ -1,38 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionUpdateParameters(Model): - """The SAS definition update parameters. - - :param parameters: Sas definition update metadata in the form of key-value - pairs. - :type parameters: dict[str, str] - :param sas_definition_attributes: The attributes of the SAS definition. - :type sas_definition_attributes: - ~azure.keyvault.v2016_10_01.models.SasDefinitionAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'parameters': {'key': 'parameters', 'type': '{str}'}, - 'sas_definition_attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, parameters=None, sas_definition_attributes=None, tags=None, **kwargs) -> None: - super(SasDefinitionUpdateParameters, self).__init__(**kwargs) - self.parameters = parameters - self.sas_definition_attributes = sas_definition_attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_attributes.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_attributes.py deleted file mode 100644 index e83b581172b1..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_attributes.py +++ /dev/null @@ -1,58 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .attributes import Attributes - - -class SecretAttributes(Attributes): - """The secret management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the object is enabled. - :type enabled: bool - :param not_before: Not before date in UTC. - :type not_before: datetime - :param expires: Expiry date in UTC. - :type expires: datetime - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for secrets in the current vault. If it contains 'Purgeable', the - secret can be permanently deleted by a privileged user; otherwise, only - the system can purge the secret, at the end of the retention interval. - Possible values include: 'Purgeable', 'Recoverable+Purgeable', - 'Recoverable', 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.v2016_10_01.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'not_before': {'key': 'nbf', 'type': 'unix-time'}, - 'expires': {'key': 'exp', 'type': 'unix-time'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(SecretAttributes, self).__init__(**kwargs) - self.recovery_level = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_attributes_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_attributes_py3.py deleted file mode 100644 index 385b4f84fea3..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_attributes_py3.py +++ /dev/null @@ -1,58 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .attributes_py3 import Attributes - - -class SecretAttributes(Attributes): - """The secret management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the object is enabled. - :type enabled: bool - :param not_before: Not before date in UTC. - :type not_before: datetime - :param expires: Expiry date in UTC. - :type expires: datetime - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for secrets in the current vault. If it contains 'Purgeable', the - secret can be permanently deleted by a privileged user; otherwise, only - the system can purge the secret, at the end of the retention interval. - Possible values include: 'Purgeable', 'Recoverable+Purgeable', - 'Recoverable', 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.v2016_10_01.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'not_before': {'key': 'nbf', 'type': 'unix-time'}, - 'expires': {'key': 'exp', 'type': 'unix-time'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, *, enabled: bool=None, not_before=None, expires=None, **kwargs) -> None: - super(SecretAttributes, self).__init__(enabled=enabled, not_before=not_before, expires=expires, **kwargs) - self.recovery_level = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_bundle.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_bundle.py deleted file mode 100644 index 79171363e088..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_bundle.py +++ /dev/null @@ -1,62 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretBundle(Model): - """A secret consisting of a value, id and its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param value: The secret value. - :type value: str - :param id: The secret id. - :type id: str - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar kid: If this is a secret backing a KV certificate, then this field - specifies the corresponding key backing the KV certificate. - :vartype kid: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a secret backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'kid': {'readonly': True}, - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'str'}, - 'id': {'key': 'id', 'type': 'str'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, **kwargs): - super(SecretBundle, self).__init__(**kwargs) - self.value = kwargs.get('value', None) - self.id = kwargs.get('id', None) - self.content_type = kwargs.get('content_type', None) - self.attributes = kwargs.get('attributes', None) - self.tags = kwargs.get('tags', None) - self.kid = None - self.managed = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_bundle_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_bundle_py3.py deleted file mode 100644 index 74b96fcde2e2..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_bundle_py3.py +++ /dev/null @@ -1,62 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretBundle(Model): - """A secret consisting of a value, id and its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param value: The secret value. - :type value: str - :param id: The secret id. - :type id: str - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar kid: If this is a secret backing a KV certificate, then this field - specifies the corresponding key backing the KV certificate. - :vartype kid: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a secret backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'kid': {'readonly': True}, - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'str'}, - 'id': {'key': 'id', 'type': 'str'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, *, value: str=None, id: str=None, content_type: str=None, attributes=None, tags=None, **kwargs) -> None: - super(SecretBundle, self).__init__(**kwargs) - self.value = value - self.id = id - self.content_type = content_type - self.attributes = attributes - self.tags = tags - self.kid = None - self.managed = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_item.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_item.py deleted file mode 100644 index 9b94483832e7..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_item.py +++ /dev/null @@ -1,52 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretItem(Model): - """The secret item containing secret metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param id: Secret identifier. - :type id: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param content_type: Type of the secret value such as a password. - :type content_type: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a key backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, **kwargs): - super(SecretItem, self).__init__(**kwargs) - self.id = kwargs.get('id', None) - self.attributes = kwargs.get('attributes', None) - self.tags = kwargs.get('tags', None) - self.content_type = kwargs.get('content_type', None) - self.managed = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_item_paged.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_item_paged.py deleted file mode 100644 index 0c12e7a94408..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.paging import Paged - - -class SecretItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`SecretItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[SecretItem]'} - } - - def __init__(self, *args, **kwargs): - - super(SecretItemPaged, self).__init__(*args, **kwargs) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_item_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_item_py3.py deleted file mode 100644 index 470cf98df1ec..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_item_py3.py +++ /dev/null @@ -1,52 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretItem(Model): - """The secret item containing secret metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param id: Secret identifier. - :type id: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.v2016_10_01.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param content_type: Type of the secret value such as a password. - :type content_type: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a key backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, *, id: str=None, attributes=None, tags=None, content_type: str=None, **kwargs) -> None: - super(SecretItem, self).__init__(**kwargs) - self.id = id - self.attributes = attributes - self.tags = tags - self.content_type = content_type - self.managed = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_properties.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_properties.py deleted file mode 100644 index 03794579e47c..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_properties.py +++ /dev/null @@ -1,28 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretProperties(Model): - """Properties of the key backing a certificate. - - :param content_type: The media type (MIME type). - :type content_type: str - """ - - _attribute_map = { - 'content_type': {'key': 'contentType', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(SecretProperties, self).__init__(**kwargs) - self.content_type = kwargs.get('content_type', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_properties_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_properties_py3.py deleted file mode 100644 index f071d84220b8..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_properties_py3.py +++ /dev/null @@ -1,28 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretProperties(Model): - """Properties of the key backing a certificate. - - :param content_type: The media type (MIME type). - :type content_type: str - """ - - _attribute_map = { - 'content_type': {'key': 'contentType', 'type': 'str'}, - } - - def __init__(self, *, content_type: str=None, **kwargs) -> None: - super(SecretProperties, self).__init__(**kwargs) - self.content_type = content_type diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_restore_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_restore_parameters.py deleted file mode 100644 index 9e34c4259edc..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_restore_parameters.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretRestoreParameters(Model): - """The secret restore parameters. - - All required parameters must be populated in order to send to Azure. - - :param secret_bundle_backup: Required. The backup blob associated with a - secret bundle. - :type secret_bundle_backup: bytes - """ - - _validation = { - 'secret_bundle_backup': {'required': True}, - } - - _attribute_map = { - 'secret_bundle_backup': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(SecretRestoreParameters, self).__init__(**kwargs) - self.secret_bundle_backup = kwargs.get('secret_bundle_backup', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_restore_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_restore_parameters_py3.py deleted file mode 100644 index 0c81a9b890aa..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_restore_parameters_py3.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretRestoreParameters(Model): - """The secret restore parameters. - - All required parameters must be populated in order to send to Azure. - - :param secret_bundle_backup: Required. The backup blob associated with a - secret bundle. - :type secret_bundle_backup: bytes - """ - - _validation = { - 'secret_bundle_backup': {'required': True}, - } - - _attribute_map = { - 'secret_bundle_backup': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, *, secret_bundle_backup: bytes, **kwargs) -> None: - super(SecretRestoreParameters, self).__init__(**kwargs) - self.secret_bundle_backup = secret_bundle_backup diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_set_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_set_parameters.py deleted file mode 100644 index b6586ebfd469..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_set_parameters.py +++ /dev/null @@ -1,47 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretSetParameters(Model): - """The secret set parameters. - - All required parameters must be populated in order to send to Azure. - - :param value: Required. The value of the secret. - :type value: str - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param content_type: Type of the secret value such as a password. - :type content_type: str - :param secret_attributes: The secret management attributes. - :type secret_attributes: - ~azure.keyvault.v2016_10_01.models.SecretAttributes - """ - - _validation = { - 'value': {'required': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'str'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'secret_attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - } - - def __init__(self, **kwargs): - super(SecretSetParameters, self).__init__(**kwargs) - self.value = kwargs.get('value', None) - self.tags = kwargs.get('tags', None) - self.content_type = kwargs.get('content_type', None) - self.secret_attributes = kwargs.get('secret_attributes', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_set_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_set_parameters_py3.py deleted file mode 100644 index 6f78f925ae3c..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_set_parameters_py3.py +++ /dev/null @@ -1,47 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretSetParameters(Model): - """The secret set parameters. - - All required parameters must be populated in order to send to Azure. - - :param value: Required. The value of the secret. - :type value: str - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param content_type: Type of the secret value such as a password. - :type content_type: str - :param secret_attributes: The secret management attributes. - :type secret_attributes: - ~azure.keyvault.v2016_10_01.models.SecretAttributes - """ - - _validation = { - 'value': {'required': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'str'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'secret_attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - } - - def __init__(self, *, value: str, tags=None, content_type: str=None, secret_attributes=None, **kwargs) -> None: - super(SecretSetParameters, self).__init__(**kwargs) - self.value = value - self.tags = tags - self.content_type = content_type - self.secret_attributes = secret_attributes diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_update_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_update_parameters.py deleted file mode 100644 index 958c5f915510..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_update_parameters.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretUpdateParameters(Model): - """The secret update parameters. - - :param content_type: Type of the secret value such as a password. - :type content_type: str - :param secret_attributes: The secret management attributes. - :type secret_attributes: - ~azure.keyvault.v2016_10_01.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'secret_attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(SecretUpdateParameters, self).__init__(**kwargs) - self.content_type = kwargs.get('content_type', None) - self.secret_attributes = kwargs.get('secret_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_update_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_update_parameters_py3.py deleted file mode 100644 index 5a6fe7b80cd9..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_update_parameters_py3.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretUpdateParameters(Model): - """The secret update parameters. - - :param content_type: Type of the secret value such as a password. - :type content_type: str - :param secret_attributes: The secret management attributes. - :type secret_attributes: - ~azure.keyvault.v2016_10_01.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'secret_attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, content_type: str=None, secret_attributes=None, tags=None, **kwargs) -> None: - super(SecretUpdateParameters, self).__init__(**kwargs) - self.content_type = content_type - self.secret_attributes = secret_attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_attributes.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_attributes.py deleted file mode 100644 index 736235e71f12..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_attributes.py +++ /dev/null @@ -1,44 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountAttributes(Model): - """The storage account management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: the enabled state of the object. - :type enabled: bool - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(StorageAccountAttributes, self).__init__(**kwargs) - self.enabled = kwargs.get('enabled', None) - self.created = None - self.updated = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_attributes_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_attributes_py3.py deleted file mode 100644 index 86f559fd7bd2..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_attributes_py3.py +++ /dev/null @@ -1,44 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountAttributes(Model): - """The storage account management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: the enabled state of the object. - :type enabled: bool - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - } - - def __init__(self, *, enabled: bool=None, **kwargs) -> None: - super(StorageAccountAttributes, self).__init__(**kwargs) - self.enabled = enabled - self.created = None - self.updated = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_create_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_create_parameters.py deleted file mode 100644 index 009ace7c8b6c..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_create_parameters.py +++ /dev/null @@ -1,59 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountCreateParameters(Model): - """The storage account create parameters. - - All required parameters must be populated in order to send to Azure. - - :param resource_id: Required. Storage account resource id. - :type resource_id: str - :param active_key_name: Required. Current active storage account key name. - :type active_key_name: str - :param auto_regenerate_key: Required. whether keyvault should manage the - storage account for the user. - :type auto_regenerate_key: bool - :param regeneration_period: The key regeneration time duration specified - in ISO-8601 format. - :type regeneration_period: str - :param storage_account_attributes: The attributes of the storage account. - :type storage_account_attributes: - ~azure.keyvault.v2016_10_01.models.StorageAccountAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'resource_id': {'required': True}, - 'active_key_name': {'required': True}, - 'auto_regenerate_key': {'required': True}, - } - - _attribute_map = { - 'resource_id': {'key': 'resourceId', 'type': 'str'}, - 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, - 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, - 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, - 'storage_account_attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(StorageAccountCreateParameters, self).__init__(**kwargs) - self.resource_id = kwargs.get('resource_id', None) - self.active_key_name = kwargs.get('active_key_name', None) - self.auto_regenerate_key = kwargs.get('auto_regenerate_key', None) - self.regeneration_period = kwargs.get('regeneration_period', None) - self.storage_account_attributes = kwargs.get('storage_account_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_create_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_create_parameters_py3.py deleted file mode 100644 index 3a19c96ed3ac..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_create_parameters_py3.py +++ /dev/null @@ -1,59 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountCreateParameters(Model): - """The storage account create parameters. - - All required parameters must be populated in order to send to Azure. - - :param resource_id: Required. Storage account resource id. - :type resource_id: str - :param active_key_name: Required. Current active storage account key name. - :type active_key_name: str - :param auto_regenerate_key: Required. whether keyvault should manage the - storage account for the user. - :type auto_regenerate_key: bool - :param regeneration_period: The key regeneration time duration specified - in ISO-8601 format. - :type regeneration_period: str - :param storage_account_attributes: The attributes of the storage account. - :type storage_account_attributes: - ~azure.keyvault.v2016_10_01.models.StorageAccountAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'resource_id': {'required': True}, - 'active_key_name': {'required': True}, - 'auto_regenerate_key': {'required': True}, - } - - _attribute_map = { - 'resource_id': {'key': 'resourceId', 'type': 'str'}, - 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, - 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, - 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, - 'storage_account_attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, resource_id: str, active_key_name: str, auto_regenerate_key: bool, regeneration_period: str=None, storage_account_attributes=None, tags=None, **kwargs) -> None: - super(StorageAccountCreateParameters, self).__init__(**kwargs) - self.resource_id = resource_id - self.active_key_name = active_key_name - self.auto_regenerate_key = auto_regenerate_key - self.regeneration_period = regeneration_period - self.storage_account_attributes = storage_account_attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_item.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_item.py deleted file mode 100644 index 4591f33fb646..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_item.py +++ /dev/null @@ -1,51 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountItem(Model): - """The storage account item containing storage account metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Storage identifier. - :vartype id: str - :ivar resource_id: Storage account resource Id. - :vartype resource_id: str - :ivar attributes: The storage account management attributes. - :vartype attributes: - ~azure.keyvault.v2016_10_01.models.StorageAccountAttributes - :ivar tags: Application specific metadata in the form of key-value pairs. - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'resource_id': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'resource_id': {'key': 'resourceId', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(StorageAccountItem, self).__init__(**kwargs) - self.id = None - self.resource_id = None - self.attributes = None - self.tags = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_item_paged.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_item_paged.py deleted file mode 100644 index d9a36f98190b..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.paging import Paged - - -class StorageAccountItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`StorageAccountItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[StorageAccountItem]'} - } - - def __init__(self, *args, **kwargs): - - super(StorageAccountItemPaged, self).__init__(*args, **kwargs) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_item_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_item_py3.py deleted file mode 100644 index 8759d140079e..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_item_py3.py +++ /dev/null @@ -1,51 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountItem(Model): - """The storage account item containing storage account metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Storage identifier. - :vartype id: str - :ivar resource_id: Storage account resource Id. - :vartype resource_id: str - :ivar attributes: The storage account management attributes. - :vartype attributes: - ~azure.keyvault.v2016_10_01.models.StorageAccountAttributes - :ivar tags: Application specific metadata in the form of key-value pairs. - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'resource_id': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'resource_id': {'key': 'resourceId', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs) -> None: - super(StorageAccountItem, self).__init__(**kwargs) - self.id = None - self.resource_id = None - self.attributes = None - self.tags = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_regenerte_key_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_regenerte_key_parameters.py deleted file mode 100644 index 459103c575aa..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_regenerte_key_parameters.py +++ /dev/null @@ -1,34 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountRegenerteKeyParameters(Model): - """The storage account key regenerate parameters. - - All required parameters must be populated in order to send to Azure. - - :param key_name: Required. The storage account key name. - :type key_name: str - """ - - _validation = { - 'key_name': {'required': True}, - } - - _attribute_map = { - 'key_name': {'key': 'keyName', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(StorageAccountRegenerteKeyParameters, self).__init__(**kwargs) - self.key_name = kwargs.get('key_name', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_regenerte_key_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_regenerte_key_parameters_py3.py deleted file mode 100644 index 1403108fbac0..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_regenerte_key_parameters_py3.py +++ /dev/null @@ -1,34 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountRegenerteKeyParameters(Model): - """The storage account key regenerate parameters. - - All required parameters must be populated in order to send to Azure. - - :param key_name: Required. The storage account key name. - :type key_name: str - """ - - _validation = { - 'key_name': {'required': True}, - } - - _attribute_map = { - 'key_name': {'key': 'keyName', 'type': 'str'}, - } - - def __init__(self, *, key_name: str, **kwargs) -> None: - super(StorageAccountRegenerteKeyParameters, self).__init__(**kwargs) - self.key_name = key_name diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_update_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_update_parameters.py deleted file mode 100644 index 82c653c46406..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_update_parameters.py +++ /dev/null @@ -1,47 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountUpdateParameters(Model): - """The storage account update parameters. - - :param active_key_name: The current active storage account key name. - :type active_key_name: str - :param auto_regenerate_key: whether keyvault should manage the storage - account for the user. - :type auto_regenerate_key: bool - :param regeneration_period: The key regeneration time duration specified - in ISO-8601 format. - :type regeneration_period: str - :param storage_account_attributes: The attributes of the storage account. - :type storage_account_attributes: - ~azure.keyvault.v2016_10_01.models.StorageAccountAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, - 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, - 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, - 'storage_account_attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(StorageAccountUpdateParameters, self).__init__(**kwargs) - self.active_key_name = kwargs.get('active_key_name', None) - self.auto_regenerate_key = kwargs.get('auto_regenerate_key', None) - self.regeneration_period = kwargs.get('regeneration_period', None) - self.storage_account_attributes = kwargs.get('storage_account_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_update_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_update_parameters_py3.py deleted file mode 100644 index a2056f3d36dd..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_update_parameters_py3.py +++ /dev/null @@ -1,47 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountUpdateParameters(Model): - """The storage account update parameters. - - :param active_key_name: The current active storage account key name. - :type active_key_name: str - :param auto_regenerate_key: whether keyvault should manage the storage - account for the user. - :type auto_regenerate_key: bool - :param regeneration_period: The key regeneration time duration specified - in ISO-8601 format. - :type regeneration_period: str - :param storage_account_attributes: The attributes of the storage account. - :type storage_account_attributes: - ~azure.keyvault.v2016_10_01.models.StorageAccountAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, - 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, - 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, - 'storage_account_attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, active_key_name: str=None, auto_regenerate_key: bool=None, regeneration_period: str=None, storage_account_attributes=None, tags=None, **kwargs) -> None: - super(StorageAccountUpdateParameters, self).__init__(**kwargs) - self.active_key_name = active_key_name - self.auto_regenerate_key = auto_regenerate_key - self.regeneration_period = regeneration_period - self.storage_account_attributes = storage_account_attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_bundle.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_bundle.py deleted file mode 100644 index 709910308e95..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_bundle.py +++ /dev/null @@ -1,69 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageBundle(Model): - """A Storage account bundle consists of key vault storage account details plus - its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The storage account id. - :vartype id: str - :ivar resource_id: The storage account resource id. - :vartype resource_id: str - :ivar active_key_name: The current active storage account key name. - :vartype active_key_name: str - :ivar auto_regenerate_key: whether keyvault should manage the storage - account for the user. - :vartype auto_regenerate_key: bool - :ivar regeneration_period: The key regeneration time duration specified in - ISO-8601 format. - :vartype regeneration_period: str - :ivar attributes: The storage account attributes. - :vartype attributes: - ~azure.keyvault.v2016_10_01.models.StorageAccountAttributes - :ivar tags: Application specific metadata in the form of key-value pairs - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'resource_id': {'readonly': True}, - 'active_key_name': {'readonly': True}, - 'auto_regenerate_key': {'readonly': True}, - 'regeneration_period': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'resource_id': {'key': 'resourceId', 'type': 'str'}, - 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, - 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, - 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(StorageBundle, self).__init__(**kwargs) - self.id = None - self.resource_id = None - self.active_key_name = None - self.auto_regenerate_key = None - self.regeneration_period = None - self.attributes = None - self.tags = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_bundle_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_bundle_py3.py deleted file mode 100644 index 21e1c67cc35c..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_bundle_py3.py +++ /dev/null @@ -1,69 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageBundle(Model): - """A Storage account bundle consists of key vault storage account details plus - its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The storage account id. - :vartype id: str - :ivar resource_id: The storage account resource id. - :vartype resource_id: str - :ivar active_key_name: The current active storage account key name. - :vartype active_key_name: str - :ivar auto_regenerate_key: whether keyvault should manage the storage - account for the user. - :vartype auto_regenerate_key: bool - :ivar regeneration_period: The key regeneration time duration specified in - ISO-8601 format. - :vartype regeneration_period: str - :ivar attributes: The storage account attributes. - :vartype attributes: - ~azure.keyvault.v2016_10_01.models.StorageAccountAttributes - :ivar tags: Application specific metadata in the form of key-value pairs - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'resource_id': {'readonly': True}, - 'active_key_name': {'readonly': True}, - 'auto_regenerate_key': {'readonly': True}, - 'regeneration_period': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'resource_id': {'key': 'resourceId', 'type': 'str'}, - 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, - 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, - 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs) -> None: - super(StorageBundle, self).__init__(**kwargs) - self.id = None - self.resource_id = None - self.active_key_name = None - self.auto_regenerate_key = None - self.regeneration_period = None - self.attributes = None - self.tags = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/subject_alternative_names.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/subject_alternative_names.py deleted file mode 100644 index 0ff2911550df..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/subject_alternative_names.py +++ /dev/null @@ -1,36 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SubjectAlternativeNames(Model): - """The subject alternate names of a X509 object. - - :param emails: Email addresses. - :type emails: list[str] - :param dns_names: Domain names. - :type dns_names: list[str] - :param upns: User principal names. - :type upns: list[str] - """ - - _attribute_map = { - 'emails': {'key': 'emails', 'type': '[str]'}, - 'dns_names': {'key': 'dns_names', 'type': '[str]'}, - 'upns': {'key': 'upns', 'type': '[str]'}, - } - - def __init__(self, **kwargs): - super(SubjectAlternativeNames, self).__init__(**kwargs) - self.emails = kwargs.get('emails', None) - self.dns_names = kwargs.get('dns_names', None) - self.upns = kwargs.get('upns', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/subject_alternative_names_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/subject_alternative_names_py3.py deleted file mode 100644 index a2870854d559..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/subject_alternative_names_py3.py +++ /dev/null @@ -1,36 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SubjectAlternativeNames(Model): - """The subject alternate names of a X509 object. - - :param emails: Email addresses. - :type emails: list[str] - :param dns_names: Domain names. - :type dns_names: list[str] - :param upns: User principal names. - :type upns: list[str] - """ - - _attribute_map = { - 'emails': {'key': 'emails', 'type': '[str]'}, - 'dns_names': {'key': 'dns_names', 'type': '[str]'}, - 'upns': {'key': 'upns', 'type': '[str]'}, - } - - def __init__(self, *, emails=None, dns_names=None, upns=None, **kwargs) -> None: - super(SubjectAlternativeNames, self).__init__(**kwargs) - self.emails = emails - self.dns_names = dns_names - self.upns = upns diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/trigger.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/trigger.py deleted file mode 100644 index a68686f8303e..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/trigger.py +++ /dev/null @@ -1,40 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Trigger(Model): - """A condition to be satisfied for an action to be executed. - - :param lifetime_percentage: Percentage of lifetime at which to trigger. - Value should be between 1 and 99. - :type lifetime_percentage: int - :param days_before_expiry: Days before expiry to attempt renewal. Value - should be between 1 and validity_in_months multiplied by 27. If - validity_in_months is 36, then value should be between 1 and 972 (36 * - 27). - :type days_before_expiry: int - """ - - _validation = { - 'lifetime_percentage': {'maximum': 99, 'minimum': 1}, - } - - _attribute_map = { - 'lifetime_percentage': {'key': 'lifetime_percentage', 'type': 'int'}, - 'days_before_expiry': {'key': 'days_before_expiry', 'type': 'int'}, - } - - def __init__(self, **kwargs): - super(Trigger, self).__init__(**kwargs) - self.lifetime_percentage = kwargs.get('lifetime_percentage', None) - self.days_before_expiry = kwargs.get('days_before_expiry', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/trigger_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/trigger_py3.py deleted file mode 100644 index 38faa3471773..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/trigger_py3.py +++ /dev/null @@ -1,40 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Trigger(Model): - """A condition to be satisfied for an action to be executed. - - :param lifetime_percentage: Percentage of lifetime at which to trigger. - Value should be between 1 and 99. - :type lifetime_percentage: int - :param days_before_expiry: Days before expiry to attempt renewal. Value - should be between 1 and validity_in_months multiplied by 27. If - validity_in_months is 36, then value should be between 1 and 972 (36 * - 27). - :type days_before_expiry: int - """ - - _validation = { - 'lifetime_percentage': {'maximum': 99, 'minimum': 1}, - } - - _attribute_map = { - 'lifetime_percentage': {'key': 'lifetime_percentage', 'type': 'int'}, - 'days_before_expiry': {'key': 'days_before_expiry', 'type': 'int'}, - } - - def __init__(self, *, lifetime_percentage: int=None, days_before_expiry: int=None, **kwargs) -> None: - super(Trigger, self).__init__(**kwargs) - self.lifetime_percentage = lifetime_percentage - self.days_before_expiry = days_before_expiry diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/x509_certificate_properties.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/x509_certificate_properties.py deleted file mode 100644 index d7a4b83c39c4..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/x509_certificate_properties.py +++ /dev/null @@ -1,52 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class X509CertificateProperties(Model): - """Properties of the X509 component of a certificate. - - :param subject: The subject name. Should be a valid X509 distinguished - Name. - :type subject: str - :param ekus: The enhanced key usage. - :type ekus: list[str] - :param subject_alternative_names: The subject alternative names. - :type subject_alternative_names: - ~azure.keyvault.v2016_10_01.models.SubjectAlternativeNames - :param key_usage: List of key usages. - :type key_usage: list[str or - ~azure.keyvault.v2016_10_01.models.KeyUsageType] - :param validity_in_months: The duration that the ceritifcate is valid in - months. - :type validity_in_months: int - """ - - _validation = { - 'validity_in_months': {'minimum': 0}, - } - - _attribute_map = { - 'subject': {'key': 'subject', 'type': 'str'}, - 'ekus': {'key': 'ekus', 'type': '[str]'}, - 'subject_alternative_names': {'key': 'sans', 'type': 'SubjectAlternativeNames'}, - 'key_usage': {'key': 'key_usage', 'type': '[str]'}, - 'validity_in_months': {'key': 'validity_months', 'type': 'int'}, - } - - def __init__(self, **kwargs): - super(X509CertificateProperties, self).__init__(**kwargs) - self.subject = kwargs.get('subject', None) - self.ekus = kwargs.get('ekus', None) - self.subject_alternative_names = kwargs.get('subject_alternative_names', None) - self.key_usage = kwargs.get('key_usage', None) - self.validity_in_months = kwargs.get('validity_in_months', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/x509_certificate_properties_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/x509_certificate_properties_py3.py deleted file mode 100644 index 8a2e5227cf2a..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/models/x509_certificate_properties_py3.py +++ /dev/null @@ -1,52 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class X509CertificateProperties(Model): - """Properties of the X509 component of a certificate. - - :param subject: The subject name. Should be a valid X509 distinguished - Name. - :type subject: str - :param ekus: The enhanced key usage. - :type ekus: list[str] - :param subject_alternative_names: The subject alternative names. - :type subject_alternative_names: - ~azure.keyvault.v2016_10_01.models.SubjectAlternativeNames - :param key_usage: List of key usages. - :type key_usage: list[str or - ~azure.keyvault.v2016_10_01.models.KeyUsageType] - :param validity_in_months: The duration that the ceritifcate is valid in - months. - :type validity_in_months: int - """ - - _validation = { - 'validity_in_months': {'minimum': 0}, - } - - _attribute_map = { - 'subject': {'key': 'subject', 'type': 'str'}, - 'ekus': {'key': 'ekus', 'type': '[str]'}, - 'subject_alternative_names': {'key': 'sans', 'type': 'SubjectAlternativeNames'}, - 'key_usage': {'key': 'key_usage', 'type': '[str]'}, - 'validity_in_months': {'key': 'validity_months', 'type': 'int'}, - } - - def __init__(self, *, subject: str=None, ekus=None, subject_alternative_names=None, key_usage=None, validity_in_months: int=None, **kwargs) -> None: - super(X509CertificateProperties, self).__init__(**kwargs) - self.subject = subject - self.ekus = ekus - self.subject_alternative_names = subject_alternative_names - self.key_usage = key_usage - self.validity_in_months = validity_in_months diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/version.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/version.py deleted file mode 100644 index 20ba78005d47..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v2016_10_01/version.py +++ /dev/null @@ -1,13 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -VERSION = "2016-10-01" - diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/__init__.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/__init__.py deleted file mode 100644 index f5ce6ec63059..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/__init__.py +++ /dev/null @@ -1,18 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .key_vault_client import KeyVaultClient -from .version import VERSION - -__all__ = ['KeyVaultClient'] - -__version__ = VERSION - diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/key_vault_client.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/key_vault_client.py deleted file mode 100644 index 17affc4df48d..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/key_vault_client.py +++ /dev/null @@ -1,5786 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.service_client import SDKClient -from msrest import Serializer, Deserializer -from msrestazure import AzureConfiguration -from .version import VERSION -from msrest.pipeline import ClientRawResponse -import uuid -from . import models - - -class KeyVaultClientConfiguration(AzureConfiguration): - """Configuration for KeyVaultClient - Note that all parameters used to create this instance are saved as instance - attributes. - - :param credentials: Credentials needed for the client to connect to Azure. - :type credentials: :mod:`A msrestazure Credentials - object` - """ - - def __init__( - self, credentials): - - if credentials is None: - raise ValueError("Parameter 'credentials' must not be None.") - base_url = '{vaultBaseUrl}' - - super(KeyVaultClientConfiguration, self).__init__(base_url) - - self.add_user_agent('azure-keyvault/{}'.format(VERSION)) - self.add_user_agent('Azure-SDK-For-Python') - - self.credentials = credentials - - -class KeyVaultClient(SDKClient): - """The key vault client performs cryptographic key operations and vault operations against the Key Vault service. - - :ivar config: Configuration for client. - :vartype config: KeyVaultClientConfiguration - - :param credentials: Credentials needed for the client to connect to Azure. - :type credentials: :mod:`A msrestazure Credentials - object` - """ - - def __init__( - self, credentials): - - self.config = KeyVaultClientConfiguration(credentials) - super(KeyVaultClient, self).__init__(self.config.credentials, self.config) - - client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} - self.api_version = '7.0' - self._serialize = Serializer(client_models) - self._deserialize = Deserializer(client_models) - - - def create_key( - self, vault_base_url, key_name, kty, key_size=None, key_ops=None, key_attributes=None, tags=None, curve=None, custom_headers=None, raw=False, **operation_config): - """Creates a new key, stores it, then returns key parameters and - attributes to the client. - - The create key operation can be used to create any key type in Azure - Key Vault. If the named key already exists, Azure Key Vault creates a - new version of the key. It requires the keys/create permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name for the new key. The system will generate - the version name for the new key. - :type key_name: str - :param kty: The type of key to create. For valid values, see - JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', - 'RSA-HSM', 'oct' - :type kty: str or ~azure.keyvault.v7_0.models.JsonWebKeyType - :param key_size: The key size in bits. For example: 2048, 3072, or - 4096 for RSA. - :type key_size: int - :param key_ops: - :type key_ops: list[str or - ~azure.keyvault.v7_0.models.JsonWebKeyOperation] - :param key_attributes: - :type key_attributes: ~azure.keyvault.v7_0.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param curve: Elliptic curve name. For valid values, see - JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', - 'P-521', 'P-256K' - :type curve: str or ~azure.keyvault.v7_0.models.JsonWebKeyCurveName - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.KeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyCreateParameters(kty=kty, key_size=key_size, key_ops=key_ops, key_attributes=key_attributes, tags=tags, curve=curve) - - # Construct URL - url = self.create_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyCreateParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - create_key.metadata = {'url': '/keys/{key-name}/create'} - - def import_key( - self, vault_base_url, key_name, key, hsm=None, key_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Imports an externally created key, stores it, and returns key - parameters and attributes to the client. - - The import key operation may be used to import any key type into an - Azure Key Vault. If the named key already exists, Azure Key Vault - creates a new version of the key. This operation requires the - keys/import permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: Name for the imported key. - :type key_name: str - :param key: The Json web key - :type key: ~azure.keyvault.v7_0.models.JsonWebKey - :param hsm: Whether to import as a hardware key (HSM) or software key. - :type hsm: bool - :param key_attributes: The key management attributes. - :type key_attributes: ~azure.keyvault.v7_0.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.KeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyImportParameters(hsm=hsm, key=key, key_attributes=key_attributes, tags=tags) - - # Construct URL - url = self.import_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyImportParameters') - - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - import_key.metadata = {'url': '/keys/{key-name}'} - - def delete_key( - self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): - """Deletes a key of any type from storage in Azure Key Vault. - - The delete key operation cannot be used to remove individual versions - of a key. This operation removes the cryptographic material associated - with the key, which means the key is not usable for Sign/Verify, - Wrap/Unwrap or Encrypt/Decrypt operations. This operation requires the - keys/delete permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key to delete. - :type key_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedKeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.DeletedKeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.delete_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedKeyBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_key.metadata = {'url': '/keys/{key-name}'} - - def update_key( - self, vault_base_url, key_name, key_version, key_ops=None, key_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """The update key operation changes specified attributes of a stored key - and can be applied to any key type and key version stored in Azure Key - Vault. - - In order to perform this operation, the key must already exist in the - Key Vault. Note: The cryptographic material of a key itself cannot be - changed. This operation requires the keys/update permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of key to update. - :type key_name: str - :param key_version: The version of the key to update. - :type key_version: str - :param key_ops: Json web key operations. For more information on - possible key operations, see JsonWebKeyOperation. - :type key_ops: list[str or - ~azure.keyvault.v7_0.models.JsonWebKeyOperation] - :param key_attributes: - :type key_attributes: ~azure.keyvault.v7_0.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.KeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyUpdateParameters(key_ops=key_ops, key_attributes=key_attributes, tags=tags) - - # Construct URL - url = self.update_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyUpdateParameters') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_key.metadata = {'url': '/keys/{key-name}/{key-version}'} - - def get_key( - self, vault_base_url, key_name, key_version, custom_headers=None, raw=False, **operation_config): - """Gets the public part of a stored key. - - The get key operation is applicable to all key types. If the requested - key is symmetric, then no key material is released in the response. - This operation requires the keys/get permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key to get. - :type key_name: str - :param key_version: Adding the version parameter retrieves a specific - version of a key. - :type key_version: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.KeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_key.metadata = {'url': '/keys/{key-name}/{key-version}'} - - def get_key_versions( - self, vault_base_url, key_name, maxresults=None, custom_headers=None, raw=False, **operation_config): - """Retrieves a list of individual key versions with the same key name. - - The full key identifier, attributes, and tags are provided in the - response. This operation requires the keys/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of KeyItem - :rtype: - ~azure.keyvault.v7_0.models.KeyItemPaged[~azure.keyvault.v7_0.models.KeyItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_key_versions.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.KeyItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.KeyItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_key_versions.metadata = {'url': '/keys/{key-name}/versions'} - - def get_keys( - self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): - """List keys in the specified vault. - - Retrieves a list of the keys in the Key Vault as JSON Web Key - structures that contain the public part of a stored key. The LIST - operation is applicable to all key types, however only the base key - identifier, attributes, and tags are provided in the response. - Individual versions of a key are not listed in the response. This - operation requires the keys/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of KeyItem - :rtype: - ~azure.keyvault.v7_0.models.KeyItemPaged[~azure.keyvault.v7_0.models.KeyItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_keys.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.KeyItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.KeyItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_keys.metadata = {'url': '/keys'} - - def backup_key( - self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): - """Requests that a backup of the specified key be downloaded to the - client. - - The Key Backup operation exports a key from Azure Key Vault in a - protected form. Note that this operation does NOT return key material - in a form that can be used outside the Azure Key Vault system, the - returned key material is either protected to a Azure Key Vault HSM or - to Azure Key Vault itself. The intent of this operation is to allow a - client to GENERATE a key in one Azure Key Vault instance, BACKUP the - key, and then RESTORE it into another Azure Key Vault instance. The - BACKUP operation may be used to export, in protected form, any key type - from Azure Key Vault. Individual versions of a key cannot be backed up. - BACKUP / RESTORE can be performed within geographical boundaries only; - meaning that a BACKUP from one geographical area cannot be restored to - another geographical area. For example, a backup from the US - geographical area cannot be restored in an EU geographical area. This - operation requires the key/backup permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: BackupKeyResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.BackupKeyResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.backup_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('BackupKeyResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - backup_key.metadata = {'url': '/keys/{key-name}/backup'} - - def restore_key( - self, vault_base_url, key_bundle_backup, custom_headers=None, raw=False, **operation_config): - """Restores a backed up key to a vault. - - Imports a previously backed up key into Azure Key Vault, restoring the - key, its key identifier, attributes and access control policies. The - RESTORE operation may be used to import a previously backed up key. - Individual versions of a key cannot be restored. The key is restored in - its entirety with the same key name as it had when it was backed up. If - the key name is not available in the target Key Vault, the RESTORE - operation will be rejected. While the key name is retained during - restore, the final key identifier will change if the key is restored to - a different vault. Restore will restore all versions and preserve - version identifiers. The RESTORE operation is subject to security - constraints: The target Key Vault must be owned by the same Microsoft - Azure Subscription as the source Key Vault The user must have RESTORE - permission in the target Key Vault. This operation requires the - keys/restore permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_bundle_backup: The backup blob associated with a key - bundle. - :type key_bundle_backup: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.KeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyRestoreParameters(key_bundle_backup=key_bundle_backup) - - # Construct URL - url = self.restore_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyRestoreParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - restore_key.metadata = {'url': '/keys/restore'} - - def encrypt( - self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): - """Encrypts an arbitrary sequence of bytes using an encryption key that is - stored in a key vault. - - The ENCRYPT operation encrypts an arbitrary sequence of bytes using an - encryption key that is stored in Azure Key Vault. Note that the ENCRYPT - operation only supports a single block of data, the size of which is - dependent on the target key and the encryption algorithm to be used. - The ENCRYPT operation is only strictly necessary for symmetric keys - stored in Azure Key Vault since protection with an asymmetric key can - be performed using public portion of the key. This operation is - supported for asymmetric keys as a convenience for callers that have a - key-reference but do not have access to the public key material. This - operation requires the keys/encypt permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param key_version: The version of the key. - :type key_version: str - :param algorithm: algorithm identifier. Possible values include: - 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' - :type algorithm: str or - ~azure.keyvault.v7_0.models.JsonWebKeyEncryptionAlgorithm - :param value: - :type value: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyOperationResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.KeyOperationResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyOperationsParameters(algorithm=algorithm, value=value) - - # Construct URL - url = self.encrypt.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyOperationsParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyOperationResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - encrypt.metadata = {'url': '/keys/{key-name}/{key-version}/encrypt'} - - def decrypt( - self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): - """Decrypts a single block of encrypted data. - - The DECRYPT operation decrypts a well-formed block of ciphertext using - the target encryption key and specified algorithm. This operation is - the reverse of the ENCRYPT operation; only a single block of data may - be decrypted, the size of this block is dependent on the target key and - the algorithm to be used. The DECRYPT operation applies to asymmetric - and symmetric keys stored in Azure Key Vault since it uses the private - portion of the key. This operation requires the keys/decrypt - permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param key_version: The version of the key. - :type key_version: str - :param algorithm: algorithm identifier. Possible values include: - 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' - :type algorithm: str or - ~azure.keyvault.v7_0.models.JsonWebKeyEncryptionAlgorithm - :param value: - :type value: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyOperationResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.KeyOperationResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyOperationsParameters(algorithm=algorithm, value=value) - - # Construct URL - url = self.decrypt.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyOperationsParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyOperationResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - decrypt.metadata = {'url': '/keys/{key-name}/{key-version}/decrypt'} - - def sign( - self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): - """Creates a signature from a digest using the specified key. - - The SIGN operation is applicable to asymmetric and symmetric keys - stored in Azure Key Vault since this operation uses the private portion - of the key. This operation requires the keys/sign permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param key_version: The version of the key. - :type key_version: str - :param algorithm: The signing/verification algorithm identifier. For - more information on possible algorithm types, see - JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', - 'PS384', 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', - 'ES384', 'ES512', 'ES256K' - :type algorithm: str or - ~azure.keyvault.v7_0.models.JsonWebKeySignatureAlgorithm - :param value: - :type value: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyOperationResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.KeyOperationResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeySignParameters(algorithm=algorithm, value=value) - - # Construct URL - url = self.sign.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeySignParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyOperationResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - sign.metadata = {'url': '/keys/{key-name}/{key-version}/sign'} - - def verify( - self, vault_base_url, key_name, key_version, algorithm, digest, signature, custom_headers=None, raw=False, **operation_config): - """Verifies a signature using a specified key. - - The VERIFY operation is applicable to symmetric keys stored in Azure - Key Vault. VERIFY is not strictly necessary for asymmetric keys stored - in Azure Key Vault since signature verification can be performed using - the public portion of the key but this operation is supported as a - convenience for callers that only have a key-reference and not the - public portion of the key. This operation requires the keys/verify - permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param key_version: The version of the key. - :type key_version: str - :param algorithm: The signing/verification algorithm. For more - information on possible algorithm types, see - JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', - 'PS384', 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', - 'ES384', 'ES512', 'ES256K' - :type algorithm: str or - ~azure.keyvault.v7_0.models.JsonWebKeySignatureAlgorithm - :param digest: The digest used for signing. - :type digest: bytes - :param signature: The signature to be verified. - :type signature: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyVerifyResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.KeyVerifyResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyVerifyParameters(algorithm=algorithm, digest=digest, signature=signature) - - # Construct URL - url = self.verify.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyVerifyParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyVerifyResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - verify.metadata = {'url': '/keys/{key-name}/{key-version}/verify'} - - def wrap_key( - self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): - """Wraps a symmetric key using a specified key. - - The WRAP operation supports encryption of a symmetric key using a key - encryption key that has previously been stored in an Azure Key Vault. - The WRAP operation is only strictly necessary for symmetric keys stored - in Azure Key Vault since protection with an asymmetric key can be - performed using the public portion of the key. This operation is - supported for asymmetric keys as a convenience for callers that have a - key-reference but do not have access to the public key material. This - operation requires the keys/wrapKey permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param key_version: The version of the key. - :type key_version: str - :param algorithm: algorithm identifier. Possible values include: - 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' - :type algorithm: str or - ~azure.keyvault.v7_0.models.JsonWebKeyEncryptionAlgorithm - :param value: - :type value: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyOperationResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.KeyOperationResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyOperationsParameters(algorithm=algorithm, value=value) - - # Construct URL - url = self.wrap_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyOperationsParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyOperationResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - wrap_key.metadata = {'url': '/keys/{key-name}/{key-version}/wrapkey'} - - def unwrap_key( - self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): - """Unwraps a symmetric key using the specified key that was initially used - for wrapping that key. - - The UNWRAP operation supports decryption of a symmetric key using the - target key encryption key. This operation is the reverse of the WRAP - operation. The UNWRAP operation applies to asymmetric and symmetric - keys stored in Azure Key Vault since it uses the private portion of the - key. This operation requires the keys/unwrapKey permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param key_version: The version of the key. - :type key_version: str - :param algorithm: algorithm identifier. Possible values include: - 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' - :type algorithm: str or - ~azure.keyvault.v7_0.models.JsonWebKeyEncryptionAlgorithm - :param value: - :type value: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyOperationResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.KeyOperationResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyOperationsParameters(algorithm=algorithm, value=value) - - # Construct URL - url = self.unwrap_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyOperationsParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyOperationResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - unwrap_key.metadata = {'url': '/keys/{key-name}/{key-version}/unwrapkey'} - - def get_deleted_keys( - self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): - """Lists the deleted keys in the specified vault. - - Retrieves a list of the keys in the Key Vault as JSON Web Key - structures that contain the public part of a deleted key. This - operation includes deletion-specific information. The Get Deleted Keys - operation is applicable for vaults enabled for soft-delete. While the - operation can be invoked on any vault, it will return an error if - invoked on a non soft-delete enabled vault. This operation requires the - keys/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of DeletedKeyItem - :rtype: - ~azure.keyvault.v7_0.models.DeletedKeyItemPaged[~azure.keyvault.v7_0.models.DeletedKeyItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_deleted_keys.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.DeletedKeyItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.DeletedKeyItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_deleted_keys.metadata = {'url': '/deletedkeys'} - - def get_deleted_key( - self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): - """Gets the public part of a deleted key. - - The Get Deleted Key operation is applicable for soft-delete enabled - vaults. While the operation can be invoked on any vault, it will return - an error if invoked on a non soft-delete enabled vault. This operation - requires the keys/get permission. . - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedKeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.DeletedKeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_deleted_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedKeyBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_deleted_key.metadata = {'url': '/deletedkeys/{key-name}'} - - def purge_deleted_key( - self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): - """Permanently deletes the specified key. - - The Purge Deleted Key operation is applicable for soft-delete enabled - vaults. While the operation can be invoked on any vault, it will return - an error if invoked on a non soft-delete enabled vault. This operation - requires the keys/purge permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key - :type key_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.purge_deleted_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [204]: - raise models.KeyVaultErrorException(self._deserialize, response) - - if raw: - client_raw_response = ClientRawResponse(None, response) - return client_raw_response - purge_deleted_key.metadata = {'url': '/deletedkeys/{key-name}'} - - def recover_deleted_key( - self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): - """Recovers the deleted key to its latest version. - - The Recover Deleted Key operation is applicable for deleted keys in - soft-delete enabled vaults. It recovers the deleted key back to its - latest version under /keys. An attempt to recover an non-deleted key - will return an error. Consider this the inverse of the delete operation - on soft-delete enabled vaults. This operation requires the keys/recover - permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the deleted key. - :type key_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.KeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.recover_deleted_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - recover_deleted_key.metadata = {'url': '/deletedkeys/{key-name}/recover'} - - def set_secret( - self, vault_base_url, secret_name, value, tags=None, content_type=None, secret_attributes=None, custom_headers=None, raw=False, **operation_config): - """Sets a secret in a specified key vault. - - The SET operation adds a secret to the Azure Key Vault. If the named - secret already exists, Azure Key Vault creates a new version of that - secret. This operation requires the secrets/set permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param value: The value of the secret. - :type value: str - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param content_type: Type of the secret value such as a password. - :type content_type: str - :param secret_attributes: The secret management attributes. - :type secret_attributes: ~azure.keyvault.v7_0.models.SecretAttributes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SecretBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.SecretBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.SecretSetParameters(value=value, tags=tags, content_type=content_type, secret_attributes=secret_attributes) - - # Construct URL - url = self.set_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'SecretSetParameters') - - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SecretBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - set_secret.metadata = {'url': '/secrets/{secret-name}'} - - def delete_secret( - self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): - """Deletes a secret from a specified key vault. - - The DELETE operation applies to any secret stored in Azure Key Vault. - DELETE cannot be applied to an individual version of a secret. This - operation requires the secrets/delete permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedSecretBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.DeletedSecretBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.delete_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedSecretBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_secret.metadata = {'url': '/secrets/{secret-name}'} - - def update_secret( - self, vault_base_url, secret_name, secret_version, content_type=None, secret_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Updates the attributes associated with a specified secret in a given - key vault. - - The UPDATE operation changes specified attributes of an existing stored - secret. Attributes that are not specified in the request are left - unchanged. The value of a secret itself cannot be changed. This - operation requires the secrets/set permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param secret_version: The version of the secret. - :type secret_version: str - :param content_type: Type of the secret value such as a password. - :type content_type: str - :param secret_attributes: The secret management attributes. - :type secret_attributes: ~azure.keyvault.v7_0.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SecretBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.SecretBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.SecretUpdateParameters(content_type=content_type, secret_attributes=secret_attributes, tags=tags) - - # Construct URL - url = self.update_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str'), - 'secret-version': self._serialize.url("secret_version", secret_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'SecretUpdateParameters') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SecretBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_secret.metadata = {'url': '/secrets/{secret-name}/{secret-version}'} - - def get_secret( - self, vault_base_url, secret_name, secret_version, custom_headers=None, raw=False, **operation_config): - """Get a specified secret from a given key vault. - - The GET operation is applicable to any secret stored in Azure Key - Vault. This operation requires the secrets/get permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param secret_version: The version of the secret. - :type secret_version: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SecretBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.SecretBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str'), - 'secret-version': self._serialize.url("secret_version", secret_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SecretBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_secret.metadata = {'url': '/secrets/{secret-name}/{secret-version}'} - - def get_secrets( - self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): - """List secrets in a specified key vault. - - The Get Secrets operation is applicable to the entire vault. However, - only the base secret identifier and its attributes are provided in the - response. Individual secret versions are not listed in the response. - This operation requires the secrets/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified, the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of SecretItem - :rtype: - ~azure.keyvault.v7_0.models.SecretItemPaged[~azure.keyvault.v7_0.models.SecretItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_secrets.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.SecretItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.SecretItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_secrets.metadata = {'url': '/secrets'} - - def get_secret_versions( - self, vault_base_url, secret_name, maxresults=None, custom_headers=None, raw=False, **operation_config): - """List all versions of the specified secret. - - The full secret identifier and attributes are provided in the response. - No values are returned for the secrets. This operations requires the - secrets/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param maxresults: Maximum number of results to return in a page. If - not specified, the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of SecretItem - :rtype: - ~azure.keyvault.v7_0.models.SecretItemPaged[~azure.keyvault.v7_0.models.SecretItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_secret_versions.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.SecretItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.SecretItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_secret_versions.metadata = {'url': '/secrets/{secret-name}/versions'} - - def get_deleted_secrets( - self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): - """Lists deleted secrets for the specified vault. - - The Get Deleted Secrets operation returns the secrets that have been - deleted for a vault enabled for soft-delete. This operation requires - the secrets/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of DeletedSecretItem - :rtype: - ~azure.keyvault.v7_0.models.DeletedSecretItemPaged[~azure.keyvault.v7_0.models.DeletedSecretItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_deleted_secrets.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.DeletedSecretItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.DeletedSecretItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_deleted_secrets.metadata = {'url': '/deletedsecrets'} - - def get_deleted_secret( - self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): - """Gets the specified deleted secret. - - The Get Deleted Secret operation returns the specified deleted secret - along with its attributes. This operation requires the secrets/get - permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedSecretBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.DeletedSecretBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_deleted_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedSecretBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_deleted_secret.metadata = {'url': '/deletedsecrets/{secret-name}'} - - def purge_deleted_secret( - self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): - """Permanently deletes the specified secret. - - The purge deleted secret operation removes the secret permanently, - without the possibility of recovery. This operation can only be enabled - on a soft-delete enabled vault. This operation requires the - secrets/purge permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.purge_deleted_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [204]: - raise models.KeyVaultErrorException(self._deserialize, response) - - if raw: - client_raw_response = ClientRawResponse(None, response) - return client_raw_response - purge_deleted_secret.metadata = {'url': '/deletedsecrets/{secret-name}'} - - def recover_deleted_secret( - self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): - """Recovers the deleted secret to the latest version. - - Recovers the deleted secret in the specified vault. This operation can - only be performed on a soft-delete enabled vault. This operation - requires the secrets/recover permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the deleted secret. - :type secret_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SecretBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.SecretBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.recover_deleted_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SecretBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - recover_deleted_secret.metadata = {'url': '/deletedsecrets/{secret-name}/recover'} - - def backup_secret( - self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): - """Backs up the specified secret. - - Requests that a backup of the specified secret be downloaded to the - client. All versions of the secret will be downloaded. This operation - requires the secrets/backup permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: BackupSecretResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.BackupSecretResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.backup_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('BackupSecretResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - backup_secret.metadata = {'url': '/secrets/{secret-name}/backup'} - - def restore_secret( - self, vault_base_url, secret_bundle_backup, custom_headers=None, raw=False, **operation_config): - """Restores a backed up secret to a vault. - - Restores a backed up secret, and all its versions, to a vault. This - operation requires the secrets/restore permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_bundle_backup: The backup blob associated with a secret - bundle. - :type secret_bundle_backup: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SecretBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.SecretBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.SecretRestoreParameters(secret_bundle_backup=secret_bundle_backup) - - # Construct URL - url = self.restore_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'SecretRestoreParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SecretBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - restore_secret.metadata = {'url': '/secrets/restore'} - - def get_certificates( - self, vault_base_url, maxresults=None, include_pending=None, custom_headers=None, raw=False, **operation_config): - """List certificates in a specified key vault. - - The GetCertificates operation returns the set of certificates resources - in the specified key vault. This operation requires the - certificates/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param include_pending: Specifies whether to include certificates - which are not completely provisioned. - :type include_pending: bool - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of CertificateItem - :rtype: - ~azure.keyvault.v7_0.models.CertificateItemPaged[~azure.keyvault.v7_0.models.CertificateItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_certificates.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - if include_pending is not None: - query_parameters['includePending'] = self._serialize.query("include_pending", include_pending, 'bool') - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.CertificateItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.CertificateItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_certificates.metadata = {'url': '/certificates'} - - def delete_certificate( - self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Deletes a certificate from a specified key vault. - - Deletes all versions of a certificate object along with its associated - policy. Delete certificate cannot be used to remove individual versions - of a certificate object. This operation requires the - certificates/delete permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedCertificateBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.DeletedCertificateBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.delete_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedCertificateBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_certificate.metadata = {'url': '/certificates/{certificate-name}'} - - def set_certificate_contacts( - self, vault_base_url, contact_list=None, custom_headers=None, raw=False, **operation_config): - """Sets the certificate contacts for the specified key vault. - - Sets the certificate contacts for the specified key vault. This - operation requires the certificates/managecontacts permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param contact_list: The contact list for the vault certificates. - :type contact_list: list[~azure.keyvault.v7_0.models.Contact] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: Contacts or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.Contacts or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - contacts = models.Contacts(contact_list=contact_list) - - # Construct URL - url = self.set_certificate_contacts.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(contacts, 'Contacts') - - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('Contacts', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - set_certificate_contacts.metadata = {'url': '/certificates/contacts'} - - def get_certificate_contacts( - self, vault_base_url, custom_headers=None, raw=False, **operation_config): - """Lists the certificate contacts for a specified key vault. - - The GetCertificateContacts operation returns the set of certificate - contact resources in the specified key vault. This operation requires - the certificates/managecontacts permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: Contacts or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.Contacts or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_certificate_contacts.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('Contacts', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_certificate_contacts.metadata = {'url': '/certificates/contacts'} - - def delete_certificate_contacts( - self, vault_base_url, custom_headers=None, raw=False, **operation_config): - """Deletes the certificate contacts for a specified key vault. - - Deletes the certificate contacts for a specified key vault certificate. - This operation requires the certificates/managecontacts permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: Contacts or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.Contacts or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.delete_certificate_contacts.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('Contacts', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_certificate_contacts.metadata = {'url': '/certificates/contacts'} - - def get_certificate_issuers( - self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): - """List certificate issuers for a specified key vault. - - The GetCertificateIssuers operation returns the set of certificate - issuer resources in the specified key vault. This operation requires - the certificates/manageissuers/getissuers permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of CertificateIssuerItem - :rtype: - ~azure.keyvault.v7_0.models.CertificateIssuerItemPaged[~azure.keyvault.v7_0.models.CertificateIssuerItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_certificate_issuers.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.CertificateIssuerItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.CertificateIssuerItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_certificate_issuers.metadata = {'url': '/certificates/issuers'} - - def set_certificate_issuer( - self, vault_base_url, issuer_name, provider, credentials=None, organization_details=None, attributes=None, custom_headers=None, raw=False, **operation_config): - """Sets the specified certificate issuer. - - The SetCertificateIssuer operation adds or updates the specified - certificate issuer. This operation requires the certificates/setissuers - permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param issuer_name: The name of the issuer. - :type issuer_name: str - :param provider: The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: ~azure.keyvault.v7_0.models.IssuerCredentials - :param organization_details: Details of the organization as provided - to the issuer. - :type organization_details: - ~azure.keyvault.v7_0.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.v7_0.models.IssuerAttributes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: IssuerBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.IssuerBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameter = models.CertificateIssuerSetParameters(provider=provider, credentials=credentials, organization_details=organization_details, attributes=attributes) - - # Construct URL - url = self.set_certificate_issuer.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'issuer-name': self._serialize.url("issuer_name", issuer_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameter, 'CertificateIssuerSetParameters') - - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('IssuerBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - set_certificate_issuer.metadata = {'url': '/certificates/issuers/{issuer-name}'} - - def update_certificate_issuer( - self, vault_base_url, issuer_name, provider=None, credentials=None, organization_details=None, attributes=None, custom_headers=None, raw=False, **operation_config): - """Updates the specified certificate issuer. - - The UpdateCertificateIssuer operation performs an update on the - specified certificate issuer entity. This operation requires the - certificates/setissuers permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param issuer_name: The name of the issuer. - :type issuer_name: str - :param provider: The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: ~azure.keyvault.v7_0.models.IssuerCredentials - :param organization_details: Details of the organization as provided - to the issuer. - :type organization_details: - ~azure.keyvault.v7_0.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.v7_0.models.IssuerAttributes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: IssuerBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.IssuerBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameter = models.CertificateIssuerUpdateParameters(provider=provider, credentials=credentials, organization_details=organization_details, attributes=attributes) - - # Construct URL - url = self.update_certificate_issuer.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'issuer-name': self._serialize.url("issuer_name", issuer_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameter, 'CertificateIssuerUpdateParameters') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('IssuerBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_certificate_issuer.metadata = {'url': '/certificates/issuers/{issuer-name}'} - - def get_certificate_issuer( - self, vault_base_url, issuer_name, custom_headers=None, raw=False, **operation_config): - """Lists the specified certificate issuer. - - The GetCertificateIssuer operation returns the specified certificate - issuer resources in the specified key vault. This operation requires - the certificates/manageissuers/getissuers permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param issuer_name: The name of the issuer. - :type issuer_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: IssuerBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.IssuerBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_certificate_issuer.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'issuer-name': self._serialize.url("issuer_name", issuer_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('IssuerBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_certificate_issuer.metadata = {'url': '/certificates/issuers/{issuer-name}'} - - def delete_certificate_issuer( - self, vault_base_url, issuer_name, custom_headers=None, raw=False, **operation_config): - """Deletes the specified certificate issuer. - - The DeleteCertificateIssuer operation permanently removes the specified - certificate issuer from the vault. This operation requires the - certificates/manageissuers/deleteissuers permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param issuer_name: The name of the issuer. - :type issuer_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: IssuerBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.IssuerBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.delete_certificate_issuer.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'issuer-name': self._serialize.url("issuer_name", issuer_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('IssuerBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_certificate_issuer.metadata = {'url': '/certificates/issuers/{issuer-name}'} - - def create_certificate( - self, vault_base_url, certificate_name, certificate_policy=None, certificate_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Creates a new certificate. - - If this is the first version, the certificate resource is created. This - operation requires the certificates/create permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: - ~azure.keyvault.v7_0.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v7_0.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateOperation or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.CertificateOperation or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.CertificateCreateParameters(certificate_policy=certificate_policy, certificate_attributes=certificate_attributes, tags=tags) - - # Construct URL - url = self.create_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'CertificateCreateParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [202]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 202: - deserialized = self._deserialize('CertificateOperation', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - create_certificate.metadata = {'url': '/certificates/{certificate-name}/create'} - - def import_certificate( - self, vault_base_url, certificate_name, base64_encoded_certificate, password=None, certificate_policy=None, certificate_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Imports a certificate into a specified key vault. - - Imports an existing valid certificate, containing a private key, into - Azure Key Vault. The certificate to be imported can be in either PFX or - PEM format. If the certificate is in PEM format the PEM file must - contain the key as well as x509 certificates. This operation requires - the certificates/import permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param base64_encoded_certificate: Base64 encoded representation of - the certificate object to import. This certificate needs to contain - the private key. - :type base64_encoded_certificate: str - :param password: If the private key in base64EncodedCertificate is - encrypted, the password used for encryption. - :type password: str - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: - ~azure.keyvault.v7_0.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v7_0.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.CertificateBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.CertificateImportParameters(base64_encoded_certificate=base64_encoded_certificate, password=password, certificate_policy=certificate_policy, certificate_attributes=certificate_attributes, tags=tags) - - # Construct URL - url = self.import_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'CertificateImportParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificateBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - import_certificate.metadata = {'url': '/certificates/{certificate-name}/import'} - - def get_certificate_versions( - self, vault_base_url, certificate_name, maxresults=None, custom_headers=None, raw=False, **operation_config): - """List the versions of a certificate. - - The GetCertificateVersions operation returns the versions of a - certificate in the specified key vault. This operation requires the - certificates/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of CertificateItem - :rtype: - ~azure.keyvault.v7_0.models.CertificateItemPaged[~azure.keyvault.v7_0.models.CertificateItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_certificate_versions.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.CertificateItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.CertificateItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_certificate_versions.metadata = {'url': '/certificates/{certificate-name}/versions'} - - def get_certificate_policy( - self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Lists the policy for a certificate. - - The GetCertificatePolicy operation returns the specified certificate - policy resources in the specified key vault. This operation requires - the certificates/get permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate in a given key - vault. - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificatePolicy or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.CertificatePolicy or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_certificate_policy.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificatePolicy', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_certificate_policy.metadata = {'url': '/certificates/{certificate-name}/policy'} - - def update_certificate_policy( - self, vault_base_url, certificate_name, certificate_policy, custom_headers=None, raw=False, **operation_config): - """Updates the policy for a certificate. - - Set specified members in the certificate policy. Leave others as null. - This operation requires the certificates/update permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate in the given - vault. - :type certificate_name: str - :param certificate_policy: The policy for the certificate. - :type certificate_policy: - ~azure.keyvault.v7_0.models.CertificatePolicy - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificatePolicy or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.CertificatePolicy or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.update_certificate_policy.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(certificate_policy, 'CertificatePolicy') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificatePolicy', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_certificate_policy.metadata = {'url': '/certificates/{certificate-name}/policy'} - - def update_certificate( - self, vault_base_url, certificate_name, certificate_version, certificate_policy=None, certificate_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Updates the specified attributes associated with the given certificate. - - The UpdateCertificate operation applies the specified update on the - given certificate; the only elements updated are the certificate's - attributes. This operation requires the certificates/update permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate in the given key - vault. - :type certificate_name: str - :param certificate_version: The version of the certificate. - :type certificate_version: str - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: - ~azure.keyvault.v7_0.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v7_0.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.CertificateBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.CertificateUpdateParameters(certificate_policy=certificate_policy, certificate_attributes=certificate_attributes, tags=tags) - - # Construct URL - url = self.update_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str'), - 'certificate-version': self._serialize.url("certificate_version", certificate_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'CertificateUpdateParameters') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificateBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_certificate.metadata = {'url': '/certificates/{certificate-name}/{certificate-version}'} - - def get_certificate( - self, vault_base_url, certificate_name, certificate_version, custom_headers=None, raw=False, **operation_config): - """Gets information about a certificate. - - Gets information about a specific certificate. This operation requires - the certificates/get permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate in the given - vault. - :type certificate_name: str - :param certificate_version: The version of the certificate. - :type certificate_version: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.CertificateBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str'), - 'certificate-version': self._serialize.url("certificate_version", certificate_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificateBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_certificate.metadata = {'url': '/certificates/{certificate-name}/{certificate-version}'} - - def update_certificate_operation( - self, vault_base_url, certificate_name, cancellation_requested, custom_headers=None, raw=False, **operation_config): - """Updates a certificate operation. - - Updates a certificate creation operation that is already in progress. - This operation requires the certificates/update permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param cancellation_requested: Indicates if cancellation was requested - on the certificate operation. - :type cancellation_requested: bool - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateOperation or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.CertificateOperation or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - certificate_operation = models.CertificateOperationUpdateParameter(cancellation_requested=cancellation_requested) - - # Construct URL - url = self.update_certificate_operation.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(certificate_operation, 'CertificateOperationUpdateParameter') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificateOperation', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_certificate_operation.metadata = {'url': '/certificates/{certificate-name}/pending'} - - def get_certificate_operation( - self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Gets the creation operation of a certificate. - - Gets the creation operation associated with a specified certificate. - This operation requires the certificates/get permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateOperation or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.CertificateOperation or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_certificate_operation.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificateOperation', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_certificate_operation.metadata = {'url': '/certificates/{certificate-name}/pending'} - - def delete_certificate_operation( - self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Deletes the creation operation for a specific certificate. - - Deletes the creation operation for a specified certificate that is in - the process of being created. The certificate is no longer created. - This operation requires the certificates/update permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateOperation or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.CertificateOperation or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.delete_certificate_operation.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificateOperation', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_certificate_operation.metadata = {'url': '/certificates/{certificate-name}/pending'} - - def merge_certificate( - self, vault_base_url, certificate_name, x509_certificates, certificate_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Merges a certificate or a certificate chain with a key pair existing on - the server. - - The MergeCertificate operation performs the merging of a certificate or - certificate chain with a key pair currently available in the service. - This operation requires the certificates/create permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param x509_certificates: The certificate or the certificate chain to - merge. - :type x509_certificates: list[bytearray] - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v7_0.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.CertificateBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.CertificateMergeParameters(x509_certificates=x509_certificates, certificate_attributes=certificate_attributes, tags=tags) - - # Construct URL - url = self.merge_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'CertificateMergeParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [201]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 201: - deserialized = self._deserialize('CertificateBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - merge_certificate.metadata = {'url': '/certificates/{certificate-name}/pending/merge'} - - def backup_certificate( - self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Backs up the specified certificate. - - Requests that a backup of the specified certificate be downloaded to - the client. All versions of the certificate will be downloaded. This - operation requires the certificates/backup permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: BackupCertificateResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.BackupCertificateResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.backup_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('BackupCertificateResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - backup_certificate.metadata = {'url': '/certificates/{certificate-name}/backup'} - - def restore_certificate( - self, vault_base_url, certificate_bundle_backup, custom_headers=None, raw=False, **operation_config): - """Restores a backed up certificate to a vault. - - Restores a backed up certificate, and all its versions, to a vault. - This operation requires the certificates/restore permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_bundle_backup: The backup blob associated with a - certificate bundle. - :type certificate_bundle_backup: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.CertificateBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.CertificateRestoreParameters(certificate_bundle_backup=certificate_bundle_backup) - - # Construct URL - url = self.restore_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'CertificateRestoreParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificateBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - restore_certificate.metadata = {'url': '/certificates/restore'} - - def get_deleted_certificates( - self, vault_base_url, maxresults=None, include_pending=None, custom_headers=None, raw=False, **operation_config): - """Lists the deleted certificates in the specified vault currently - available for recovery. - - The GetDeletedCertificates operation retrieves the certificates in the - current vault which are in a deleted state and ready for recovery or - purging. This operation includes deletion-specific information. This - operation requires the certificates/get/list permission. This operation - can only be enabled on soft-delete enabled vaults. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param include_pending: Specifies whether to include certificates - which are not completely provisioned. - :type include_pending: bool - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of DeletedCertificateItem - :rtype: - ~azure.keyvault.v7_0.models.DeletedCertificateItemPaged[~azure.keyvault.v7_0.models.DeletedCertificateItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_deleted_certificates.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - if include_pending is not None: - query_parameters['includePending'] = self._serialize.query("include_pending", include_pending, 'bool') - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.DeletedCertificateItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.DeletedCertificateItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_deleted_certificates.metadata = {'url': '/deletedcertificates'} - - def get_deleted_certificate( - self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Retrieves information about the specified deleted certificate. - - The GetDeletedCertificate operation retrieves the deleted certificate - information plus its attributes, such as retention interval, scheduled - permanent deletion and the current deletion recovery level. This - operation requires the certificates/get permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedCertificateBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.DeletedCertificateBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_deleted_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedCertificateBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_deleted_certificate.metadata = {'url': '/deletedcertificates/{certificate-name}'} - - def purge_deleted_certificate( - self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Permanently deletes the specified deleted certificate. - - The PurgeDeletedCertificate operation performs an irreversible deletion - of the specified certificate, without possibility for recovery. The - operation is not available if the recovery level does not specify - 'Purgeable'. This operation requires the certificate/purge permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.purge_deleted_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [204]: - raise models.KeyVaultErrorException(self._deserialize, response) - - if raw: - client_raw_response = ClientRawResponse(None, response) - return client_raw_response - purge_deleted_certificate.metadata = {'url': '/deletedcertificates/{certificate-name}'} - - def recover_deleted_certificate( - self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Recovers the deleted certificate back to its current version under - /certificates. - - The RecoverDeletedCertificate operation performs the reversal of the - Delete operation. The operation is applicable in vaults enabled for - soft-delete, and must be issued during the retention interval - (available in the deleted certificate's attributes). This operation - requires the certificates/recover permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the deleted certificate - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.CertificateBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.recover_deleted_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificateBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - recover_deleted_certificate.metadata = {'url': '/deletedcertificates/{certificate-name}/recover'} - - def get_storage_accounts( - self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): - """List storage accounts managed by the specified key vault. This - operation requires the storage/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of StorageAccountItem - :rtype: - ~azure.keyvault.v7_0.models.StorageAccountItemPaged[~azure.keyvault.v7_0.models.StorageAccountItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_storage_accounts.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.StorageAccountItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.StorageAccountItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_storage_accounts.metadata = {'url': '/storage'} - - def get_deleted_storage_accounts( - self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): - """Lists deleted storage accounts for the specified vault. - - The Get Deleted Storage Accounts operation returns the storage accounts - that have been deleted for a vault enabled for soft-delete. This - operation requires the storage/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of DeletedStorageAccountItem - :rtype: - ~azure.keyvault.v7_0.models.DeletedStorageAccountItemPaged[~azure.keyvault.v7_0.models.DeletedStorageAccountItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_deleted_storage_accounts.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.DeletedStorageAccountItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.DeletedStorageAccountItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_deleted_storage_accounts.metadata = {'url': '/deletedstorage'} - - def get_deleted_storage_account( - self, vault_base_url, storage_account_name, custom_headers=None, raw=False, **operation_config): - """Gets the specified deleted storage account. - - The Get Deleted Storage Account operation returns the specified deleted - storage account along with its attributes. This operation requires the - storage/get permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedStorageBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.DeletedStorageBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_deleted_storage_account.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedStorageBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_deleted_storage_account.metadata = {'url': '/deletedstorage/{storage-account-name}'} - - def purge_deleted_storage_account( - self, vault_base_url, storage_account_name, custom_headers=None, raw=False, **operation_config): - """Permanently deletes the specified storage account. - - The purge deleted storage account operation removes the secret - permanently, without the possibility of recovery. This operation can - only be performed on a soft-delete enabled vault. This operation - requires the storage/purge permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.purge_deleted_storage_account.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [204]: - raise models.KeyVaultErrorException(self._deserialize, response) - - if raw: - client_raw_response = ClientRawResponse(None, response) - return client_raw_response - purge_deleted_storage_account.metadata = {'url': '/deletedstorage/{storage-account-name}'} - - def recover_deleted_storage_account( - self, vault_base_url, storage_account_name, custom_headers=None, raw=False, **operation_config): - """Recovers the deleted storage account. - - Recovers the deleted storage account in the specified vault. This - operation can only be performed on a soft-delete enabled vault. This - operation requires the storage/recover permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: StorageBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.StorageBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.recover_deleted_storage_account.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('StorageBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - recover_deleted_storage_account.metadata = {'url': '/deletedstorage/{storage-account-name}/recover'} - - def backup_storage_account( - self, vault_base_url, storage_account_name, custom_headers=None, raw=False, **operation_config): - """Backs up the specified storage account. - - Requests that a backup of the specified storage account be downloaded - to the client. This operation requires the storage/backup permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: BackupStorageResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.BackupStorageResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.backup_storage_account.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('BackupStorageResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - backup_storage_account.metadata = {'url': '/storage/{storage-account-name}/backup'} - - def restore_storage_account( - self, vault_base_url, storage_bundle_backup, custom_headers=None, raw=False, **operation_config): - """Restores a backed up storage account to a vault. - - Restores a backed up storage account to a vault. This operation - requires the storage/restore permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_bundle_backup: The backup blob associated with a - storage account. - :type storage_bundle_backup: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: StorageBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.StorageBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.StorageRestoreParameters(storage_bundle_backup=storage_bundle_backup) - - # Construct URL - url = self.restore_storage_account.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'StorageRestoreParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('StorageBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - restore_storage_account.metadata = {'url': '/storage/restore'} - - def delete_storage_account( - self, vault_base_url, storage_account_name, custom_headers=None, raw=False, **operation_config): - """Deletes a storage account. This operation requires the storage/delete - permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedStorageBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.DeletedStorageBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.delete_storage_account.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedStorageBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_storage_account.metadata = {'url': '/storage/{storage-account-name}'} - - def get_storage_account( - self, vault_base_url, storage_account_name, custom_headers=None, raw=False, **operation_config): - """Gets information about a specified storage account. This operation - requires the storage/get permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: StorageBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.StorageBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_storage_account.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('StorageBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_storage_account.metadata = {'url': '/storage/{storage-account-name}'} - - def set_storage_account( - self, vault_base_url, storage_account_name, resource_id, active_key_name, auto_regenerate_key, regeneration_period=None, storage_account_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Creates or updates a new storage account. This operation requires the - storage/set permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param resource_id: Storage account resource id. - :type resource_id: str - :param active_key_name: Current active storage account key name. - :type active_key_name: str - :param auto_regenerate_key: whether keyvault should manage the storage - account for the user. - :type auto_regenerate_key: bool - :param regeneration_period: The key regeneration time duration - specified in ISO-8601 format. - :type regeneration_period: str - :param storage_account_attributes: The attributes of the storage - account. - :type storage_account_attributes: - ~azure.keyvault.v7_0.models.StorageAccountAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: StorageBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.StorageBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.StorageAccountCreateParameters(resource_id=resource_id, active_key_name=active_key_name, auto_regenerate_key=auto_regenerate_key, regeneration_period=regeneration_period, storage_account_attributes=storage_account_attributes, tags=tags) - - # Construct URL - url = self.set_storage_account.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'StorageAccountCreateParameters') - - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('StorageBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - set_storage_account.metadata = {'url': '/storage/{storage-account-name}'} - - def update_storage_account( - self, vault_base_url, storage_account_name, active_key_name=None, auto_regenerate_key=None, regeneration_period=None, storage_account_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Updates the specified attributes associated with the given storage - account. This operation requires the storage/set/update permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param active_key_name: The current active storage account key name. - :type active_key_name: str - :param auto_regenerate_key: whether keyvault should manage the storage - account for the user. - :type auto_regenerate_key: bool - :param regeneration_period: The key regeneration time duration - specified in ISO-8601 format. - :type regeneration_period: str - :param storage_account_attributes: The attributes of the storage - account. - :type storage_account_attributes: - ~azure.keyvault.v7_0.models.StorageAccountAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: StorageBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.StorageBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.StorageAccountUpdateParameters(active_key_name=active_key_name, auto_regenerate_key=auto_regenerate_key, regeneration_period=regeneration_period, storage_account_attributes=storage_account_attributes, tags=tags) - - # Construct URL - url = self.update_storage_account.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'StorageAccountUpdateParameters') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('StorageBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_storage_account.metadata = {'url': '/storage/{storage-account-name}'} - - def regenerate_storage_account_key( - self, vault_base_url, storage_account_name, key_name, custom_headers=None, raw=False, **operation_config): - """Regenerates the specified key value for the given storage account. This - operation requires the storage/regeneratekey permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param key_name: The storage account key name. - :type key_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: StorageBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.StorageBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.StorageAccountRegenerteKeyParameters(key_name=key_name) - - # Construct URL - url = self.regenerate_storage_account_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'StorageAccountRegenerteKeyParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('StorageBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - regenerate_storage_account_key.metadata = {'url': '/storage/{storage-account-name}/regeneratekey'} - - def get_sas_definitions( - self, vault_base_url, storage_account_name, maxresults=None, custom_headers=None, raw=False, **operation_config): - """List storage SAS definitions for the given storage account. This - operation requires the storage/listsas permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of SasDefinitionItem - :rtype: - ~azure.keyvault.v7_0.models.SasDefinitionItemPaged[~azure.keyvault.v7_0.models.SasDefinitionItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_sas_definitions.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.SasDefinitionItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.SasDefinitionItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_sas_definitions.metadata = {'url': '/storage/{storage-account-name}/sas'} - - def get_deleted_sas_definitions( - self, vault_base_url, storage_account_name, maxresults=None, custom_headers=None, raw=False, **operation_config): - """Lists deleted SAS definitions for the specified vault and storage - account. - - The Get Deleted Sas Definitions operation returns the SAS definitions - that have been deleted for a vault enabled for soft-delete. This - operation requires the storage/listsas permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of DeletedSasDefinitionItem - :rtype: - ~azure.keyvault.v7_0.models.DeletedSasDefinitionItemPaged[~azure.keyvault.v7_0.models.DeletedSasDefinitionItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_deleted_sas_definitions.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.DeletedSasDefinitionItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.DeletedSasDefinitionItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_deleted_sas_definitions.metadata = {'url': '/deletedstorage/{storage-account-name}/sas'} - - def get_deleted_sas_definition( - self, vault_base_url, storage_account_name, sas_definition_name, custom_headers=None, raw=False, **operation_config): - """Gets the specified deleted sas definition. - - The Get Deleted SAS Definition operation returns the specified deleted - SAS definition along with its attributes. This operation requires the - storage/getsas permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param sas_definition_name: The name of the SAS definition. - :type sas_definition_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedSasDefinitionBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.DeletedSasDefinitionBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_deleted_sas_definition.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), - 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedSasDefinitionBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_deleted_sas_definition.metadata = {'url': '/deletedstorage/{storage-account-name}/sas/{sas-definition-name}'} - - def recover_deleted_sas_definition( - self, vault_base_url, storage_account_name, sas_definition_name, custom_headers=None, raw=False, **operation_config): - """Recovers the deleted SAS definition. - - Recovers the deleted SAS definition for the specified storage account. - This operation can only be performed on a soft-delete enabled vault. - This operation requires the storage/recover permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param sas_definition_name: The name of the SAS definition. - :type sas_definition_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SasDefinitionBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.SasDefinitionBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.recover_deleted_sas_definition.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), - 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SasDefinitionBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - recover_deleted_sas_definition.metadata = {'url': '/deletedstorage/{storage-account-name}/sas/{sas-definition-name}/recover'} - - def delete_sas_definition( - self, vault_base_url, storage_account_name, sas_definition_name, custom_headers=None, raw=False, **operation_config): - """Deletes a SAS definition from a specified storage account. This - operation requires the storage/deletesas permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param sas_definition_name: The name of the SAS definition. - :type sas_definition_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedSasDefinitionBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.DeletedSasDefinitionBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.delete_sas_definition.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), - 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedSasDefinitionBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_sas_definition.metadata = {'url': '/storage/{storage-account-name}/sas/{sas-definition-name}'} - - def get_sas_definition( - self, vault_base_url, storage_account_name, sas_definition_name, custom_headers=None, raw=False, **operation_config): - """Gets information about a SAS definition for the specified storage - account. This operation requires the storage/getsas permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param sas_definition_name: The name of the SAS definition. - :type sas_definition_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SasDefinitionBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.SasDefinitionBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_sas_definition.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), - 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SasDefinitionBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_sas_definition.metadata = {'url': '/storage/{storage-account-name}/sas/{sas-definition-name}'} - - def set_sas_definition( - self, vault_base_url, storage_account_name, sas_definition_name, template_uri, sas_type, validity_period, sas_definition_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Creates or updates a new SAS definition for the specified storage - account. This operation requires the storage/setsas permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param sas_definition_name: The name of the SAS definition. - :type sas_definition_name: str - :param template_uri: The SAS definition token template signed with an - arbitrary key. Tokens created according to the SAS definition will - have the same properties as the template. - :type template_uri: str - :param sas_type: The type of SAS token the SAS definition will create. - Possible values include: 'account', 'service' - :type sas_type: str or ~azure.keyvault.v7_0.models.SasTokenType - :param validity_period: The validity period of SAS tokens created - according to the SAS definition. - :type validity_period: str - :param sas_definition_attributes: The attributes of the SAS - definition. - :type sas_definition_attributes: - ~azure.keyvault.v7_0.models.SasDefinitionAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SasDefinitionBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.SasDefinitionBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.SasDefinitionCreateParameters(template_uri=template_uri, sas_type=sas_type, validity_period=validity_period, sas_definition_attributes=sas_definition_attributes, tags=tags) - - # Construct URL - url = self.set_sas_definition.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), - 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'SasDefinitionCreateParameters') - - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SasDefinitionBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - set_sas_definition.metadata = {'url': '/storage/{storage-account-name}/sas/{sas-definition-name}'} - - def update_sas_definition( - self, vault_base_url, storage_account_name, sas_definition_name, template_uri=None, sas_type=None, validity_period=None, sas_definition_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Updates the specified attributes associated with the given SAS - definition. This operation requires the storage/setsas permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param sas_definition_name: The name of the SAS definition. - :type sas_definition_name: str - :param template_uri: The SAS definition token template signed with an - arbitrary key. Tokens created according to the SAS definition will - have the same properties as the template. - :type template_uri: str - :param sas_type: The type of SAS token the SAS definition will create. - Possible values include: 'account', 'service' - :type sas_type: str or ~azure.keyvault.v7_0.models.SasTokenType - :param validity_period: The validity period of SAS tokens created - according to the SAS definition. - :type validity_period: str - :param sas_definition_attributes: The attributes of the SAS - definition. - :type sas_definition_attributes: - ~azure.keyvault.v7_0.models.SasDefinitionAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SasDefinitionBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.v7_0.models.SasDefinitionBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.SasDefinitionUpdateParameters(template_uri=template_uri, sas_type=sas_type, validity_period=validity_period, sas_definition_attributes=sas_definition_attributes, tags=tags) - - # Construct URL - url = self.update_sas_definition.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), - 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'SasDefinitionUpdateParameters') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SasDefinitionBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_sas_definition.metadata = {'url': '/storage/{storage-account-name}/sas/{sas-definition-name}'} diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/__init__.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/__init__.py deleted file mode 100644 index 70233748f308..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/__init__.py +++ /dev/null @@ -1,292 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -try: - from .attributes_py3 import Attributes - from .json_web_key_py3 import JsonWebKey - from .key_attributes_py3 import KeyAttributes - from .key_bundle_py3 import KeyBundle - from .key_item_py3 import KeyItem - from .deleted_key_bundle_py3 import DeletedKeyBundle - from .deleted_key_item_py3 import DeletedKeyItem - from .secret_attributes_py3 import SecretAttributes - from .secret_bundle_py3 import SecretBundle - from .secret_item_py3 import SecretItem - from .deleted_secret_bundle_py3 import DeletedSecretBundle - from .deleted_secret_item_py3 import DeletedSecretItem - from .secret_restore_parameters_py3 import SecretRestoreParameters - from .storage_restore_parameters_py3 import StorageRestoreParameters - from .certificate_attributes_py3 import CertificateAttributes - from .certificate_item_py3 import CertificateItem - from .certificate_issuer_item_py3 import CertificateIssuerItem - from .key_properties_py3 import KeyProperties - from .secret_properties_py3 import SecretProperties - from .subject_alternative_names_py3 import SubjectAlternativeNames - from .x509_certificate_properties_py3 import X509CertificateProperties - from .trigger_py3 import Trigger - from .action_py3 import Action - from .lifetime_action_py3 import LifetimeAction - from .issuer_parameters_py3 import IssuerParameters - from .certificate_policy_py3 import CertificatePolicy - from .certificate_bundle_py3 import CertificateBundle - from .deleted_certificate_bundle_py3 import DeletedCertificateBundle - from .deleted_certificate_item_py3 import DeletedCertificateItem - from .error_py3 import Error - from .certificate_operation_py3 import CertificateOperation - from .issuer_credentials_py3 import IssuerCredentials - from .administrator_details_py3 import AdministratorDetails - from .organization_details_py3 import OrganizationDetails - from .issuer_attributes_py3 import IssuerAttributes - from .issuer_bundle_py3 import IssuerBundle - from .contact_py3 import Contact - from .contacts_py3 import Contacts - from .key_create_parameters_py3 import KeyCreateParameters - from .key_import_parameters_py3 import KeyImportParameters - from .key_operations_parameters_py3 import KeyOperationsParameters - from .key_sign_parameters_py3 import KeySignParameters - from .key_verify_parameters_py3 import KeyVerifyParameters - from .key_update_parameters_py3 import KeyUpdateParameters - from .key_restore_parameters_py3 import KeyRestoreParameters - from .secret_set_parameters_py3 import SecretSetParameters - from .secret_update_parameters_py3 import SecretUpdateParameters - from .certificate_create_parameters_py3 import CertificateCreateParameters - from .certificate_import_parameters_py3 import CertificateImportParameters - from .certificate_update_parameters_py3 import CertificateUpdateParameters - from .certificate_merge_parameters_py3 import CertificateMergeParameters - from .certificate_issuer_set_parameters_py3 import CertificateIssuerSetParameters - from .certificate_issuer_update_parameters_py3 import CertificateIssuerUpdateParameters - from .certificate_operation_update_parameter_py3 import CertificateOperationUpdateParameter - from .key_operation_result_py3 import KeyOperationResult - from .key_verify_result_py3 import KeyVerifyResult - from .backup_key_result_py3 import BackupKeyResult - from .backup_secret_result_py3 import BackupSecretResult - from .backup_storage_result_py3 import BackupStorageResult - from .pending_certificate_signing_request_result_py3 import PendingCertificateSigningRequestResult - from .storage_account_attributes_py3 import StorageAccountAttributes - from .storage_bundle_py3 import StorageBundle - from .deleted_storage_bundle_py3 import DeletedStorageBundle - from .storage_account_create_parameters_py3 import StorageAccountCreateParameters - from .storage_account_update_parameters_py3 import StorageAccountUpdateParameters - from .storage_account_regenerte_key_parameters_py3 import StorageAccountRegenerteKeyParameters - from .storage_account_item_py3 import StorageAccountItem - from .deleted_storage_account_item_py3 import DeletedStorageAccountItem - from .sas_definition_attributes_py3 import SasDefinitionAttributes - from .sas_definition_bundle_py3 import SasDefinitionBundle - from .deleted_sas_definition_bundle_py3 import DeletedSasDefinitionBundle - from .sas_definition_item_py3 import SasDefinitionItem - from .deleted_sas_definition_item_py3 import DeletedSasDefinitionItem - from .sas_definition_create_parameters_py3 import SasDefinitionCreateParameters - from .sas_definition_update_parameters_py3 import SasDefinitionUpdateParameters - from .key_vault_error_py3 import KeyVaultError, KeyVaultErrorException - from .certificate_restore_parameters_py3 import CertificateRestoreParameters - from .backup_certificate_result_py3 import BackupCertificateResult -except (SyntaxError, ImportError): - from .attributes import Attributes - from .json_web_key import JsonWebKey - from .key_attributes import KeyAttributes - from .key_bundle import KeyBundle - from .key_item import KeyItem - from .deleted_key_bundle import DeletedKeyBundle - from .deleted_key_item import DeletedKeyItem - from .secret_attributes import SecretAttributes - from .secret_bundle import SecretBundle - from .secret_item import SecretItem - from .deleted_secret_bundle import DeletedSecretBundle - from .deleted_secret_item import DeletedSecretItem - from .secret_restore_parameters import SecretRestoreParameters - from .storage_restore_parameters import StorageRestoreParameters - from .certificate_attributes import CertificateAttributes - from .certificate_item import CertificateItem - from .certificate_issuer_item import CertificateIssuerItem - from .key_properties import KeyProperties - from .secret_properties import SecretProperties - from .subject_alternative_names import SubjectAlternativeNames - from .x509_certificate_properties import X509CertificateProperties - from .trigger import Trigger - from .action import Action - from .lifetime_action import LifetimeAction - from .issuer_parameters import IssuerParameters - from .certificate_policy import CertificatePolicy - from .certificate_bundle import CertificateBundle - from .deleted_certificate_bundle import DeletedCertificateBundle - from .deleted_certificate_item import DeletedCertificateItem - from .error import Error - from .certificate_operation import CertificateOperation - from .issuer_credentials import IssuerCredentials - from .administrator_details import AdministratorDetails - from .organization_details import OrganizationDetails - from .issuer_attributes import IssuerAttributes - from .issuer_bundle import IssuerBundle - from .contact import Contact - from .contacts import Contacts - from .key_create_parameters import KeyCreateParameters - from .key_import_parameters import KeyImportParameters - from .key_operations_parameters import KeyOperationsParameters - from .key_sign_parameters import KeySignParameters - from .key_verify_parameters import KeyVerifyParameters - from .key_update_parameters import KeyUpdateParameters - from .key_restore_parameters import KeyRestoreParameters - from .secret_set_parameters import SecretSetParameters - from .secret_update_parameters import SecretUpdateParameters - from .certificate_create_parameters import CertificateCreateParameters - from .certificate_import_parameters import CertificateImportParameters - from .certificate_update_parameters import CertificateUpdateParameters - from .certificate_merge_parameters import CertificateMergeParameters - from .certificate_issuer_set_parameters import CertificateIssuerSetParameters - from .certificate_issuer_update_parameters import CertificateIssuerUpdateParameters - from .certificate_operation_update_parameter import CertificateOperationUpdateParameter - from .key_operation_result import KeyOperationResult - from .key_verify_result import KeyVerifyResult - from .backup_key_result import BackupKeyResult - from .backup_secret_result import BackupSecretResult - from .backup_storage_result import BackupStorageResult - from .pending_certificate_signing_request_result import PendingCertificateSigningRequestResult - from .storage_account_attributes import StorageAccountAttributes - from .storage_bundle import StorageBundle - from .deleted_storage_bundle import DeletedStorageBundle - from .storage_account_create_parameters import StorageAccountCreateParameters - from .storage_account_update_parameters import StorageAccountUpdateParameters - from .storage_account_regenerte_key_parameters import StorageAccountRegenerteKeyParameters - from .storage_account_item import StorageAccountItem - from .deleted_storage_account_item import DeletedStorageAccountItem - from .sas_definition_attributes import SasDefinitionAttributes - from .sas_definition_bundle import SasDefinitionBundle - from .deleted_sas_definition_bundle import DeletedSasDefinitionBundle - from .sas_definition_item import SasDefinitionItem - from .deleted_sas_definition_item import DeletedSasDefinitionItem - from .sas_definition_create_parameters import SasDefinitionCreateParameters - from .sas_definition_update_parameters import SasDefinitionUpdateParameters - from .key_vault_error import KeyVaultError, KeyVaultErrorException - from .certificate_restore_parameters import CertificateRestoreParameters - from .backup_certificate_result import BackupCertificateResult -from .key_item_paged import KeyItemPaged -from .deleted_key_item_paged import DeletedKeyItemPaged -from .secret_item_paged import SecretItemPaged -from .deleted_secret_item_paged import DeletedSecretItemPaged -from .certificate_item_paged import CertificateItemPaged -from .certificate_issuer_item_paged import CertificateIssuerItemPaged -from .deleted_certificate_item_paged import DeletedCertificateItemPaged -from .storage_account_item_paged import StorageAccountItemPaged -from .deleted_storage_account_item_paged import DeletedStorageAccountItemPaged -from .sas_definition_item_paged import SasDefinitionItemPaged -from .deleted_sas_definition_item_paged import DeletedSasDefinitionItemPaged -from .key_vault_client_enums import ( - JsonWebKeyType, - JsonWebKeyCurveName, - DeletionRecoveryLevel, - KeyUsageType, - ActionType, - JsonWebKeyOperation, - JsonWebKeyEncryptionAlgorithm, - JsonWebKeySignatureAlgorithm, - SasTokenType, -) - -__all__ = [ - 'Attributes', - 'JsonWebKey', - 'KeyAttributes', - 'KeyBundle', - 'KeyItem', - 'DeletedKeyBundle', - 'DeletedKeyItem', - 'SecretAttributes', - 'SecretBundle', - 'SecretItem', - 'DeletedSecretBundle', - 'DeletedSecretItem', - 'SecretRestoreParameters', - 'StorageRestoreParameters', - 'CertificateAttributes', - 'CertificateItem', - 'CertificateIssuerItem', - 'KeyProperties', - 'SecretProperties', - 'SubjectAlternativeNames', - 'X509CertificateProperties', - 'Trigger', - 'Action', - 'LifetimeAction', - 'IssuerParameters', - 'CertificatePolicy', - 'CertificateBundle', - 'DeletedCertificateBundle', - 'DeletedCertificateItem', - 'Error', - 'CertificateOperation', - 'IssuerCredentials', - 'AdministratorDetails', - 'OrganizationDetails', - 'IssuerAttributes', - 'IssuerBundle', - 'Contact', - 'Contacts', - 'KeyCreateParameters', - 'KeyImportParameters', - 'KeyOperationsParameters', - 'KeySignParameters', - 'KeyVerifyParameters', - 'KeyUpdateParameters', - 'KeyRestoreParameters', - 'SecretSetParameters', - 'SecretUpdateParameters', - 'CertificateCreateParameters', - 'CertificateImportParameters', - 'CertificateUpdateParameters', - 'CertificateMergeParameters', - 'CertificateIssuerSetParameters', - 'CertificateIssuerUpdateParameters', - 'CertificateOperationUpdateParameter', - 'KeyOperationResult', - 'KeyVerifyResult', - 'BackupKeyResult', - 'BackupSecretResult', - 'BackupStorageResult', - 'PendingCertificateSigningRequestResult', - 'StorageAccountAttributes', - 'StorageBundle', - 'DeletedStorageBundle', - 'StorageAccountCreateParameters', - 'StorageAccountUpdateParameters', - 'StorageAccountRegenerteKeyParameters', - 'StorageAccountItem', - 'DeletedStorageAccountItem', - 'SasDefinitionAttributes', - 'SasDefinitionBundle', - 'DeletedSasDefinitionBundle', - 'SasDefinitionItem', - 'DeletedSasDefinitionItem', - 'SasDefinitionCreateParameters', - 'SasDefinitionUpdateParameters', - 'KeyVaultError', 'KeyVaultErrorException', - 'CertificateRestoreParameters', - 'BackupCertificateResult', - 'KeyItemPaged', - 'DeletedKeyItemPaged', - 'SecretItemPaged', - 'DeletedSecretItemPaged', - 'CertificateItemPaged', - 'CertificateIssuerItemPaged', - 'DeletedCertificateItemPaged', - 'StorageAccountItemPaged', - 'DeletedStorageAccountItemPaged', - 'SasDefinitionItemPaged', - 'DeletedSasDefinitionItemPaged', - 'JsonWebKeyType', - 'JsonWebKeyCurveName', - 'DeletionRecoveryLevel', - 'KeyUsageType', - 'ActionType', - 'JsonWebKeyOperation', - 'JsonWebKeyEncryptionAlgorithm', - 'JsonWebKeySignatureAlgorithm', - 'SasTokenType', -] diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/action.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/action.py deleted file mode 100644 index cf2f4787eb06..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/action.py +++ /dev/null @@ -1,29 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Action(Model): - """The action that will be executed. - - :param action_type: The type of the action. Possible values include: - 'EmailContacts', 'AutoRenew' - :type action_type: str or ~azure.keyvault.v7_0.models.ActionType - """ - - _attribute_map = { - 'action_type': {'key': 'action_type', 'type': 'ActionType'}, - } - - def __init__(self, **kwargs): - super(Action, self).__init__(**kwargs) - self.action_type = kwargs.get('action_type', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/action_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/action_py3.py deleted file mode 100644 index 7f0a5c39861c..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/action_py3.py +++ /dev/null @@ -1,29 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Action(Model): - """The action that will be executed. - - :param action_type: The type of the action. Possible values include: - 'EmailContacts', 'AutoRenew' - :type action_type: str or ~azure.keyvault.v7_0.models.ActionType - """ - - _attribute_map = { - 'action_type': {'key': 'action_type', 'type': 'ActionType'}, - } - - def __init__(self, *, action_type=None, **kwargs) -> None: - super(Action, self).__init__(**kwargs) - self.action_type = action_type diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/administrator_details.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/administrator_details.py deleted file mode 100644 index 4026a83a5da4..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/administrator_details.py +++ /dev/null @@ -1,40 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class AdministratorDetails(Model): - """Details of the organization administrator of the certificate issuer. - - :param first_name: First name. - :type first_name: str - :param last_name: Last name. - :type last_name: str - :param email_address: Email addresss. - :type email_address: str - :param phone: Phone number. - :type phone: str - """ - - _attribute_map = { - 'first_name': {'key': 'first_name', 'type': 'str'}, - 'last_name': {'key': 'last_name', 'type': 'str'}, - 'email_address': {'key': 'email', 'type': 'str'}, - 'phone': {'key': 'phone', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(AdministratorDetails, self).__init__(**kwargs) - self.first_name = kwargs.get('first_name', None) - self.last_name = kwargs.get('last_name', None) - self.email_address = kwargs.get('email_address', None) - self.phone = kwargs.get('phone', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/administrator_details_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/administrator_details_py3.py deleted file mode 100644 index 24a8ef8a3a1b..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/administrator_details_py3.py +++ /dev/null @@ -1,40 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class AdministratorDetails(Model): - """Details of the organization administrator of the certificate issuer. - - :param first_name: First name. - :type first_name: str - :param last_name: Last name. - :type last_name: str - :param email_address: Email addresss. - :type email_address: str - :param phone: Phone number. - :type phone: str - """ - - _attribute_map = { - 'first_name': {'key': 'first_name', 'type': 'str'}, - 'last_name': {'key': 'last_name', 'type': 'str'}, - 'email_address': {'key': 'email', 'type': 'str'}, - 'phone': {'key': 'phone', 'type': 'str'}, - } - - def __init__(self, *, first_name: str=None, last_name: str=None, email_address: str=None, phone: str=None, **kwargs) -> None: - super(AdministratorDetails, self).__init__(**kwargs) - self.first_name = first_name - self.last_name = last_name - self.email_address = email_address - self.phone = phone diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/attributes.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/attributes.py deleted file mode 100644 index 5c89678b313f..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/attributes.py +++ /dev/null @@ -1,52 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Attributes(Model): - """The object attributes managed by the KeyVault service. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the object is enabled. - :type enabled: bool - :param not_before: Not before date in UTC. - :type not_before: datetime - :param expires: Expiry date in UTC. - :type expires: datetime - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'not_before': {'key': 'nbf', 'type': 'unix-time'}, - 'expires': {'key': 'exp', 'type': 'unix-time'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(Attributes, self).__init__(**kwargs) - self.enabled = kwargs.get('enabled', None) - self.not_before = kwargs.get('not_before', None) - self.expires = kwargs.get('expires', None) - self.created = None - self.updated = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/attributes_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/attributes_py3.py deleted file mode 100644 index 16fe316c84cb..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/attributes_py3.py +++ /dev/null @@ -1,52 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Attributes(Model): - """The object attributes managed by the KeyVault service. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the object is enabled. - :type enabled: bool - :param not_before: Not before date in UTC. - :type not_before: datetime - :param expires: Expiry date in UTC. - :type expires: datetime - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'not_before': {'key': 'nbf', 'type': 'unix-time'}, - 'expires': {'key': 'exp', 'type': 'unix-time'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - } - - def __init__(self, *, enabled: bool=None, not_before=None, expires=None, **kwargs) -> None: - super(Attributes, self).__init__(**kwargs) - self.enabled = enabled - self.not_before = not_before - self.expires = expires - self.created = None - self.updated = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_certificate_result.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_certificate_result.py deleted file mode 100644 index 670034f28a2a..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_certificate_result.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class BackupCertificateResult(Model): - """The backup certificate result, containing the backup blob. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar value: The backup blob containing the backed up certificate. - :vartype value: bytes - """ - - _validation = { - 'value': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(BackupCertificateResult, self).__init__(**kwargs) - self.value = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_certificate_result_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_certificate_result_py3.py deleted file mode 100644 index 1d65f5dd8cc9..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_certificate_result_py3.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class BackupCertificateResult(Model): - """The backup certificate result, containing the backup blob. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar value: The backup blob containing the backed up certificate. - :vartype value: bytes - """ - - _validation = { - 'value': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs) -> None: - super(BackupCertificateResult, self).__init__(**kwargs) - self.value = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_key_result.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_key_result.py deleted file mode 100644 index 4aaa5fc2ebe8..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_key_result.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class BackupKeyResult(Model): - """The backup key result, containing the backup blob. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar value: The backup blob containing the backed up key. - :vartype value: bytes - """ - - _validation = { - 'value': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(BackupKeyResult, self).__init__(**kwargs) - self.value = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_key_result_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_key_result_py3.py deleted file mode 100644 index 7865e8701f76..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_key_result_py3.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class BackupKeyResult(Model): - """The backup key result, containing the backup blob. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar value: The backup blob containing the backed up key. - :vartype value: bytes - """ - - _validation = { - 'value': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs) -> None: - super(BackupKeyResult, self).__init__(**kwargs) - self.value = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_secret_result.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_secret_result.py deleted file mode 100644 index 4f803fc0cefe..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_secret_result.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class BackupSecretResult(Model): - """The backup secret result, containing the backup blob. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar value: The backup blob containing the backed up secret. - :vartype value: bytes - """ - - _validation = { - 'value': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(BackupSecretResult, self).__init__(**kwargs) - self.value = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_secret_result_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_secret_result_py3.py deleted file mode 100644 index 444ba7fe0fb5..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_secret_result_py3.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class BackupSecretResult(Model): - """The backup secret result, containing the backup blob. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar value: The backup blob containing the backed up secret. - :vartype value: bytes - """ - - _validation = { - 'value': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs) -> None: - super(BackupSecretResult, self).__init__(**kwargs) - self.value = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_storage_result.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_storage_result.py deleted file mode 100644 index 0847f47dd5c1..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_storage_result.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class BackupStorageResult(Model): - """The backup storage result, containing the backup blob. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar value: The backup blob containing the backed up storage account. - :vartype value: bytes - """ - - _validation = { - 'value': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(BackupStorageResult, self).__init__(**kwargs) - self.value = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_storage_result_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_storage_result_py3.py deleted file mode 100644 index 26b965744a7a..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/backup_storage_result_py3.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class BackupStorageResult(Model): - """The backup storage result, containing the backup blob. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar value: The backup blob containing the backed up storage account. - :vartype value: bytes - """ - - _validation = { - 'value': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs) -> None: - super(BackupStorageResult, self).__init__(**kwargs) - self.value = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_attributes.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_attributes.py deleted file mode 100644 index db34e562c9b5..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_attributes.py +++ /dev/null @@ -1,59 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .attributes import Attributes - - -class CertificateAttributes(Attributes): - """The certificate management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the object is enabled. - :type enabled: bool - :param not_before: Not before date in UTC. - :type not_before: datetime - :param expires: Expiry date in UTC. - :type expires: datetime - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for certificates in the current vault. If it contains 'Purgeable', - the certificate can be permanently deleted by a privileged user; - otherwise, only the system can purge the certificate, at the end of the - retention interval. Possible values include: 'Purgeable', - 'Recoverable+Purgeable', 'Recoverable', - 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.v7_0.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'not_before': {'key': 'nbf', 'type': 'unix-time'}, - 'expires': {'key': 'exp', 'type': 'unix-time'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(CertificateAttributes, self).__init__(**kwargs) - self.recovery_level = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_attributes_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_attributes_py3.py deleted file mode 100644 index 1b18d29e0dec..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_attributes_py3.py +++ /dev/null @@ -1,59 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .attributes_py3 import Attributes - - -class CertificateAttributes(Attributes): - """The certificate management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the object is enabled. - :type enabled: bool - :param not_before: Not before date in UTC. - :type not_before: datetime - :param expires: Expiry date in UTC. - :type expires: datetime - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for certificates in the current vault. If it contains 'Purgeable', - the certificate can be permanently deleted by a privileged user; - otherwise, only the system can purge the certificate, at the end of the - retention interval. Possible values include: 'Purgeable', - 'Recoverable+Purgeable', 'Recoverable', - 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.v7_0.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'not_before': {'key': 'nbf', 'type': 'unix-time'}, - 'expires': {'key': 'exp', 'type': 'unix-time'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, *, enabled: bool=None, not_before=None, expires=None, **kwargs) -> None: - super(CertificateAttributes, self).__init__(enabled=enabled, not_before=not_before, expires=expires, **kwargs) - self.recovery_level = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_bundle.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_bundle.py deleted file mode 100644 index a9de6bf52f04..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_bundle.py +++ /dev/null @@ -1,71 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateBundle(Model): - """A certificate bundle consists of a certificate (X509) plus its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :ivar kid: The key id. - :vartype kid: str - :ivar sid: The secret id. - :vartype sid: str - :ivar x509_thumbprint: Thumbprint of the certificate. - :vartype x509_thumbprint: bytes - :ivar policy: The management policy. - :vartype policy: ~azure.keyvault.v7_0.models.CertificatePolicy - :param cer: CER contents of x509 certificate. - :type cer: bytearray - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The certificate attributes. - :type attributes: ~azure.keyvault.v7_0.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs - :type tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'kid': {'readonly': True}, - 'sid': {'readonly': True}, - 'x509_thumbprint': {'readonly': True}, - 'policy': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'sid': {'key': 'sid', 'type': 'str'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - 'policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'cer': {'key': 'cer', 'type': 'bytearray'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(CertificateBundle, self).__init__(**kwargs) - self.id = None - self.kid = None - self.sid = None - self.x509_thumbprint = None - self.policy = None - self.cer = kwargs.get('cer', None) - self.content_type = kwargs.get('content_type', None) - self.attributes = kwargs.get('attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_bundle_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_bundle_py3.py deleted file mode 100644 index f50baa50afd6..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_bundle_py3.py +++ /dev/null @@ -1,71 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateBundle(Model): - """A certificate bundle consists of a certificate (X509) plus its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :ivar kid: The key id. - :vartype kid: str - :ivar sid: The secret id. - :vartype sid: str - :ivar x509_thumbprint: Thumbprint of the certificate. - :vartype x509_thumbprint: bytes - :ivar policy: The management policy. - :vartype policy: ~azure.keyvault.v7_0.models.CertificatePolicy - :param cer: CER contents of x509 certificate. - :type cer: bytearray - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The certificate attributes. - :type attributes: ~azure.keyvault.v7_0.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs - :type tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'kid': {'readonly': True}, - 'sid': {'readonly': True}, - 'x509_thumbprint': {'readonly': True}, - 'policy': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'sid': {'key': 'sid', 'type': 'str'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - 'policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'cer': {'key': 'cer', 'type': 'bytearray'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, cer: bytearray=None, content_type: str=None, attributes=None, tags=None, **kwargs) -> None: - super(CertificateBundle, self).__init__(**kwargs) - self.id = None - self.kid = None - self.sid = None - self.x509_thumbprint = None - self.policy = None - self.cer = cer - self.content_type = content_type - self.attributes = attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_create_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_create_parameters.py deleted file mode 100644 index 4b7559073014..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_create_parameters.py +++ /dev/null @@ -1,38 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateCreateParameters(Model): - """The certificate create parameters. - - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: ~azure.keyvault.v7_0.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v7_0.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(CertificateCreateParameters, self).__init__(**kwargs) - self.certificate_policy = kwargs.get('certificate_policy', None) - self.certificate_attributes = kwargs.get('certificate_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_create_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_create_parameters_py3.py deleted file mode 100644 index 46260f39666a..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_create_parameters_py3.py +++ /dev/null @@ -1,38 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateCreateParameters(Model): - """The certificate create parameters. - - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: ~azure.keyvault.v7_0.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v7_0.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, certificate_policy=None, certificate_attributes=None, tags=None, **kwargs) -> None: - super(CertificateCreateParameters, self).__init__(**kwargs) - self.certificate_policy = certificate_policy - self.certificate_attributes = certificate_attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_import_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_import_parameters.py deleted file mode 100644 index b1954e6a741a..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_import_parameters.py +++ /dev/null @@ -1,55 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateImportParameters(Model): - """The certificate import parameters. - - All required parameters must be populated in order to send to Azure. - - :param base64_encoded_certificate: Required. Base64 encoded representation - of the certificate object to import. This certificate needs to contain the - private key. - :type base64_encoded_certificate: str - :param password: If the private key in base64EncodedCertificate is - encrypted, the password used for encryption. - :type password: str - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: ~azure.keyvault.v7_0.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v7_0.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'base64_encoded_certificate': {'required': True}, - } - - _attribute_map = { - 'base64_encoded_certificate': {'key': 'value', 'type': 'str'}, - 'password': {'key': 'pwd', 'type': 'str'}, - 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(CertificateImportParameters, self).__init__(**kwargs) - self.base64_encoded_certificate = kwargs.get('base64_encoded_certificate', None) - self.password = kwargs.get('password', None) - self.certificate_policy = kwargs.get('certificate_policy', None) - self.certificate_attributes = kwargs.get('certificate_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_import_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_import_parameters_py3.py deleted file mode 100644 index 38cf0c686996..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_import_parameters_py3.py +++ /dev/null @@ -1,55 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateImportParameters(Model): - """The certificate import parameters. - - All required parameters must be populated in order to send to Azure. - - :param base64_encoded_certificate: Required. Base64 encoded representation - of the certificate object to import. This certificate needs to contain the - private key. - :type base64_encoded_certificate: str - :param password: If the private key in base64EncodedCertificate is - encrypted, the password used for encryption. - :type password: str - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: ~azure.keyvault.v7_0.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v7_0.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'base64_encoded_certificate': {'required': True}, - } - - _attribute_map = { - 'base64_encoded_certificate': {'key': 'value', 'type': 'str'}, - 'password': {'key': 'pwd', 'type': 'str'}, - 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, base64_encoded_certificate: str, password: str=None, certificate_policy=None, certificate_attributes=None, tags=None, **kwargs) -> None: - super(CertificateImportParameters, self).__init__(**kwargs) - self.base64_encoded_certificate = base64_encoded_certificate - self.password = password - self.certificate_policy = certificate_policy - self.certificate_attributes = certificate_attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_item.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_item.py deleted file mode 100644 index 98713b2ab4c1..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_item.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateIssuerItem(Model): - """The certificate issuer item containing certificate issuer metadata. - - :param id: Certificate Identifier. - :type id: str - :param provider: The issuer provider. - :type provider: str - """ - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'provider': {'key': 'provider', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(CertificateIssuerItem, self).__init__(**kwargs) - self.id = kwargs.get('id', None) - self.provider = kwargs.get('provider', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_item_paged.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_item_paged.py deleted file mode 100644 index 6e9d66d8a8b6..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.paging import Paged - - -class CertificateIssuerItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`CertificateIssuerItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[CertificateIssuerItem]'} - } - - def __init__(self, *args, **kwargs): - - super(CertificateIssuerItemPaged, self).__init__(*args, **kwargs) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_item_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_item_py3.py deleted file mode 100644 index f11aa78f8cdd..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_item_py3.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateIssuerItem(Model): - """The certificate issuer item containing certificate issuer metadata. - - :param id: Certificate Identifier. - :type id: str - :param provider: The issuer provider. - :type provider: str - """ - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'provider': {'key': 'provider', 'type': 'str'}, - } - - def __init__(self, *, id: str=None, provider: str=None, **kwargs) -> None: - super(CertificateIssuerItem, self).__init__(**kwargs) - self.id = id - self.provider = provider diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_set_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_set_parameters.py deleted file mode 100644 index 869b865631a7..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_set_parameters.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateIssuerSetParameters(Model): - """The certificate issuer set parameters. - - All required parameters must be populated in order to send to Azure. - - :param provider: Required. The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: ~azure.keyvault.v7_0.models.IssuerCredentials - :param organization_details: Details of the organization as provided to - the issuer. - :type organization_details: - ~azure.keyvault.v7_0.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.v7_0.models.IssuerAttributes - """ - - _validation = { - 'provider': {'required': True}, - } - - _attribute_map = { - 'provider': {'key': 'provider', 'type': 'str'}, - 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, - 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, - 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, - } - - def __init__(self, **kwargs): - super(CertificateIssuerSetParameters, self).__init__(**kwargs) - self.provider = kwargs.get('provider', None) - self.credentials = kwargs.get('credentials', None) - self.organization_details = kwargs.get('organization_details', None) - self.attributes = kwargs.get('attributes', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_set_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_set_parameters_py3.py deleted file mode 100644 index 33eb58b209ab..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_set_parameters_py3.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateIssuerSetParameters(Model): - """The certificate issuer set parameters. - - All required parameters must be populated in order to send to Azure. - - :param provider: Required. The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: ~azure.keyvault.v7_0.models.IssuerCredentials - :param organization_details: Details of the organization as provided to - the issuer. - :type organization_details: - ~azure.keyvault.v7_0.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.v7_0.models.IssuerAttributes - """ - - _validation = { - 'provider': {'required': True}, - } - - _attribute_map = { - 'provider': {'key': 'provider', 'type': 'str'}, - 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, - 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, - 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, - } - - def __init__(self, *, provider: str, credentials=None, organization_details=None, attributes=None, **kwargs) -> None: - super(CertificateIssuerSetParameters, self).__init__(**kwargs) - self.provider = provider - self.credentials = credentials - self.organization_details = organization_details - self.attributes = attributes diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_update_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_update_parameters.py deleted file mode 100644 index 1e08f2e31a3e..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_update_parameters.py +++ /dev/null @@ -1,42 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateIssuerUpdateParameters(Model): - """The certificate issuer update parameters. - - :param provider: The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: ~azure.keyvault.v7_0.models.IssuerCredentials - :param organization_details: Details of the organization as provided to - the issuer. - :type organization_details: - ~azure.keyvault.v7_0.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.v7_0.models.IssuerAttributes - """ - - _attribute_map = { - 'provider': {'key': 'provider', 'type': 'str'}, - 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, - 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, - 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, - } - - def __init__(self, **kwargs): - super(CertificateIssuerUpdateParameters, self).__init__(**kwargs) - self.provider = kwargs.get('provider', None) - self.credentials = kwargs.get('credentials', None) - self.organization_details = kwargs.get('organization_details', None) - self.attributes = kwargs.get('attributes', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_update_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_update_parameters_py3.py deleted file mode 100644 index 46d4b1694ccd..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_update_parameters_py3.py +++ /dev/null @@ -1,42 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateIssuerUpdateParameters(Model): - """The certificate issuer update parameters. - - :param provider: The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: ~azure.keyvault.v7_0.models.IssuerCredentials - :param organization_details: Details of the organization as provided to - the issuer. - :type organization_details: - ~azure.keyvault.v7_0.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.v7_0.models.IssuerAttributes - """ - - _attribute_map = { - 'provider': {'key': 'provider', 'type': 'str'}, - 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, - 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, - 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, - } - - def __init__(self, *, provider: str=None, credentials=None, organization_details=None, attributes=None, **kwargs) -> None: - super(CertificateIssuerUpdateParameters, self).__init__(**kwargs) - self.provider = provider - self.credentials = credentials - self.organization_details = organization_details - self.attributes = attributes diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_item.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_item.py deleted file mode 100644 index 2939da6965db..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_item.py +++ /dev/null @@ -1,40 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateItem(Model): - """The certificate item containing certificate metadata. - - :param id: Certificate identifier. - :type id: str - :param attributes: The certificate management attributes. - :type attributes: ~azure.keyvault.v7_0.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param x509_thumbprint: Thumbprint of the certificate. - :type x509_thumbprint: bytes - """ - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(CertificateItem, self).__init__(**kwargs) - self.id = kwargs.get('id', None) - self.attributes = kwargs.get('attributes', None) - self.tags = kwargs.get('tags', None) - self.x509_thumbprint = kwargs.get('x509_thumbprint', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_item_paged.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_item_paged.py deleted file mode 100644 index f17dbfbbee5e..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.paging import Paged - - -class CertificateItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`CertificateItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[CertificateItem]'} - } - - def __init__(self, *args, **kwargs): - - super(CertificateItemPaged, self).__init__(*args, **kwargs) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_item_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_item_py3.py deleted file mode 100644 index 6f408aa6c9ab..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_item_py3.py +++ /dev/null @@ -1,40 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateItem(Model): - """The certificate item containing certificate metadata. - - :param id: Certificate identifier. - :type id: str - :param attributes: The certificate management attributes. - :type attributes: ~azure.keyvault.v7_0.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param x509_thumbprint: Thumbprint of the certificate. - :type x509_thumbprint: bytes - """ - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - } - - def __init__(self, *, id: str=None, attributes=None, tags=None, x509_thumbprint: bytes=None, **kwargs) -> None: - super(CertificateItem, self).__init__(**kwargs) - self.id = id - self.attributes = attributes - self.tags = tags - self.x509_thumbprint = x509_thumbprint diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_merge_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_merge_parameters.py deleted file mode 100644 index a4fadaedac55..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_merge_parameters.py +++ /dev/null @@ -1,45 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateMergeParameters(Model): - """The certificate merge parameters. - - All required parameters must be populated in order to send to Azure. - - :param x509_certificates: Required. The certificate or the certificate - chain to merge. - :type x509_certificates: list[bytearray] - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v7_0.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'x509_certificates': {'required': True}, - } - - _attribute_map = { - 'x509_certificates': {'key': 'x5c', 'type': '[bytearray]'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(CertificateMergeParameters, self).__init__(**kwargs) - self.x509_certificates = kwargs.get('x509_certificates', None) - self.certificate_attributes = kwargs.get('certificate_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_merge_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_merge_parameters_py3.py deleted file mode 100644 index 02b5864042b6..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_merge_parameters_py3.py +++ /dev/null @@ -1,45 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateMergeParameters(Model): - """The certificate merge parameters. - - All required parameters must be populated in order to send to Azure. - - :param x509_certificates: Required. The certificate or the certificate - chain to merge. - :type x509_certificates: list[bytearray] - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v7_0.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'x509_certificates': {'required': True}, - } - - _attribute_map = { - 'x509_certificates': {'key': 'x5c', 'type': '[bytearray]'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, x509_certificates, certificate_attributes=None, tags=None, **kwargs) -> None: - super(CertificateMergeParameters, self).__init__(**kwargs) - self.x509_certificates = x509_certificates - self.certificate_attributes = certificate_attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation.py deleted file mode 100644 index cef44f1f7e82..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation.py +++ /dev/null @@ -1,71 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateOperation(Model): - """A certificate operation is returned in case of asynchronous requests. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :param issuer_parameters: Parameters for the issuer of the X509 component - of a certificate. - :type issuer_parameters: ~azure.keyvault.v7_0.models.IssuerParameters - :param csr: The certificate signing request (CSR) that is being used in - the certificate operation. - :type csr: bytearray - :param cancellation_requested: Indicates if cancellation was requested on - the certificate operation. - :type cancellation_requested: bool - :param status: Status of the certificate operation. - :type status: str - :param status_details: The status details of the certificate operation. - :type status_details: str - :param error: Error encountered, if any, during the certificate operation. - :type error: ~azure.keyvault.v7_0.models.Error - :param target: Location which contains the result of the certificate - operation. - :type target: str - :param request_id: Identifier for the certificate operation. - :type request_id: str - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'issuer_parameters': {'key': 'issuer', 'type': 'IssuerParameters'}, - 'csr': {'key': 'csr', 'type': 'bytearray'}, - 'cancellation_requested': {'key': 'cancellation_requested', 'type': 'bool'}, - 'status': {'key': 'status', 'type': 'str'}, - 'status_details': {'key': 'status_details', 'type': 'str'}, - 'error': {'key': 'error', 'type': 'Error'}, - 'target': {'key': 'target', 'type': 'str'}, - 'request_id': {'key': 'request_id', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(CertificateOperation, self).__init__(**kwargs) - self.id = None - self.issuer_parameters = kwargs.get('issuer_parameters', None) - self.csr = kwargs.get('csr', None) - self.cancellation_requested = kwargs.get('cancellation_requested', None) - self.status = kwargs.get('status', None) - self.status_details = kwargs.get('status_details', None) - self.error = kwargs.get('error', None) - self.target = kwargs.get('target', None) - self.request_id = kwargs.get('request_id', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation_py3.py deleted file mode 100644 index d48725e4f868..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation_py3.py +++ /dev/null @@ -1,71 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateOperation(Model): - """A certificate operation is returned in case of asynchronous requests. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :param issuer_parameters: Parameters for the issuer of the X509 component - of a certificate. - :type issuer_parameters: ~azure.keyvault.v7_0.models.IssuerParameters - :param csr: The certificate signing request (CSR) that is being used in - the certificate operation. - :type csr: bytearray - :param cancellation_requested: Indicates if cancellation was requested on - the certificate operation. - :type cancellation_requested: bool - :param status: Status of the certificate operation. - :type status: str - :param status_details: The status details of the certificate operation. - :type status_details: str - :param error: Error encountered, if any, during the certificate operation. - :type error: ~azure.keyvault.v7_0.models.Error - :param target: Location which contains the result of the certificate - operation. - :type target: str - :param request_id: Identifier for the certificate operation. - :type request_id: str - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'issuer_parameters': {'key': 'issuer', 'type': 'IssuerParameters'}, - 'csr': {'key': 'csr', 'type': 'bytearray'}, - 'cancellation_requested': {'key': 'cancellation_requested', 'type': 'bool'}, - 'status': {'key': 'status', 'type': 'str'}, - 'status_details': {'key': 'status_details', 'type': 'str'}, - 'error': {'key': 'error', 'type': 'Error'}, - 'target': {'key': 'target', 'type': 'str'}, - 'request_id': {'key': 'request_id', 'type': 'str'}, - } - - def __init__(self, *, issuer_parameters=None, csr: bytearray=None, cancellation_requested: bool=None, status: str=None, status_details: str=None, error=None, target: str=None, request_id: str=None, **kwargs) -> None: - super(CertificateOperation, self).__init__(**kwargs) - self.id = None - self.issuer_parameters = issuer_parameters - self.csr = csr - self.cancellation_requested = cancellation_requested - self.status = status - self.status_details = status_details - self.error = error - self.target = target - self.request_id = request_id diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation_update_parameter.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation_update_parameter.py deleted file mode 100644 index fadc2e3ea734..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation_update_parameter.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateOperationUpdateParameter(Model): - """The certificate operation update parameters. - - All required parameters must be populated in order to send to Azure. - - :param cancellation_requested: Required. Indicates if cancellation was - requested on the certificate operation. - :type cancellation_requested: bool - """ - - _validation = { - 'cancellation_requested': {'required': True}, - } - - _attribute_map = { - 'cancellation_requested': {'key': 'cancellation_requested', 'type': 'bool'}, - } - - def __init__(self, **kwargs): - super(CertificateOperationUpdateParameter, self).__init__(**kwargs) - self.cancellation_requested = kwargs.get('cancellation_requested', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation_update_parameter_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation_update_parameter_py3.py deleted file mode 100644 index c9fea79090ee..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation_update_parameter_py3.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateOperationUpdateParameter(Model): - """The certificate operation update parameters. - - All required parameters must be populated in order to send to Azure. - - :param cancellation_requested: Required. Indicates if cancellation was - requested on the certificate operation. - :type cancellation_requested: bool - """ - - _validation = { - 'cancellation_requested': {'required': True}, - } - - _attribute_map = { - 'cancellation_requested': {'key': 'cancellation_requested', 'type': 'bool'}, - } - - def __init__(self, *, cancellation_requested: bool, **kwargs) -> None: - super(CertificateOperationUpdateParameter, self).__init__(**kwargs) - self.cancellation_requested = cancellation_requested diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_policy.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_policy.py deleted file mode 100644 index 854cd453d325..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_policy.py +++ /dev/null @@ -1,63 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificatePolicy(Model): - """Management policy for a certificate. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :param key_properties: Properties of the key backing a certificate. - :type key_properties: ~azure.keyvault.v7_0.models.KeyProperties - :param secret_properties: Properties of the secret backing a certificate. - :type secret_properties: ~azure.keyvault.v7_0.models.SecretProperties - :param x509_certificate_properties: Properties of the X509 component of a - certificate. - :type x509_certificate_properties: - ~azure.keyvault.v7_0.models.X509CertificateProperties - :param lifetime_actions: Actions that will be performed by Key Vault over - the lifetime of a certificate. - :type lifetime_actions: list[~azure.keyvault.v7_0.models.LifetimeAction] - :param issuer_parameters: Parameters for the issuer of the X509 component - of a certificate. - :type issuer_parameters: ~azure.keyvault.v7_0.models.IssuerParameters - :param attributes: The certificate attributes. - :type attributes: ~azure.keyvault.v7_0.models.CertificateAttributes - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'key_properties': {'key': 'key_props', 'type': 'KeyProperties'}, - 'secret_properties': {'key': 'secret_props', 'type': 'SecretProperties'}, - 'x509_certificate_properties': {'key': 'x509_props', 'type': 'X509CertificateProperties'}, - 'lifetime_actions': {'key': 'lifetime_actions', 'type': '[LifetimeAction]'}, - 'issuer_parameters': {'key': 'issuer', 'type': 'IssuerParameters'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - } - - def __init__(self, **kwargs): - super(CertificatePolicy, self).__init__(**kwargs) - self.id = None - self.key_properties = kwargs.get('key_properties', None) - self.secret_properties = kwargs.get('secret_properties', None) - self.x509_certificate_properties = kwargs.get('x509_certificate_properties', None) - self.lifetime_actions = kwargs.get('lifetime_actions', None) - self.issuer_parameters = kwargs.get('issuer_parameters', None) - self.attributes = kwargs.get('attributes', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_policy_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_policy_py3.py deleted file mode 100644 index 9bc83458c818..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_policy_py3.py +++ /dev/null @@ -1,63 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificatePolicy(Model): - """Management policy for a certificate. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :param key_properties: Properties of the key backing a certificate. - :type key_properties: ~azure.keyvault.v7_0.models.KeyProperties - :param secret_properties: Properties of the secret backing a certificate. - :type secret_properties: ~azure.keyvault.v7_0.models.SecretProperties - :param x509_certificate_properties: Properties of the X509 component of a - certificate. - :type x509_certificate_properties: - ~azure.keyvault.v7_0.models.X509CertificateProperties - :param lifetime_actions: Actions that will be performed by Key Vault over - the lifetime of a certificate. - :type lifetime_actions: list[~azure.keyvault.v7_0.models.LifetimeAction] - :param issuer_parameters: Parameters for the issuer of the X509 component - of a certificate. - :type issuer_parameters: ~azure.keyvault.v7_0.models.IssuerParameters - :param attributes: The certificate attributes. - :type attributes: ~azure.keyvault.v7_0.models.CertificateAttributes - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'key_properties': {'key': 'key_props', 'type': 'KeyProperties'}, - 'secret_properties': {'key': 'secret_props', 'type': 'SecretProperties'}, - 'x509_certificate_properties': {'key': 'x509_props', 'type': 'X509CertificateProperties'}, - 'lifetime_actions': {'key': 'lifetime_actions', 'type': '[LifetimeAction]'}, - 'issuer_parameters': {'key': 'issuer', 'type': 'IssuerParameters'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - } - - def __init__(self, *, key_properties=None, secret_properties=None, x509_certificate_properties=None, lifetime_actions=None, issuer_parameters=None, attributes=None, **kwargs) -> None: - super(CertificatePolicy, self).__init__(**kwargs) - self.id = None - self.key_properties = key_properties - self.secret_properties = secret_properties - self.x509_certificate_properties = x509_certificate_properties - self.lifetime_actions = lifetime_actions - self.issuer_parameters = issuer_parameters - self.attributes = attributes diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_restore_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_restore_parameters.py deleted file mode 100644 index 2a03516d6356..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_restore_parameters.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateRestoreParameters(Model): - """The certificate restore parameters. - - All required parameters must be populated in order to send to Azure. - - :param certificate_bundle_backup: Required. The backup blob associated - with a certificate bundle. - :type certificate_bundle_backup: bytes - """ - - _validation = { - 'certificate_bundle_backup': {'required': True}, - } - - _attribute_map = { - 'certificate_bundle_backup': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(CertificateRestoreParameters, self).__init__(**kwargs) - self.certificate_bundle_backup = kwargs.get('certificate_bundle_backup', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_restore_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_restore_parameters_py3.py deleted file mode 100644 index 674a1294fed1..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_restore_parameters_py3.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateRestoreParameters(Model): - """The certificate restore parameters. - - All required parameters must be populated in order to send to Azure. - - :param certificate_bundle_backup: Required. The backup blob associated - with a certificate bundle. - :type certificate_bundle_backup: bytes - """ - - _validation = { - 'certificate_bundle_backup': {'required': True}, - } - - _attribute_map = { - 'certificate_bundle_backup': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, *, certificate_bundle_backup: bytes, **kwargs) -> None: - super(CertificateRestoreParameters, self).__init__(**kwargs) - self.certificate_bundle_backup = certificate_bundle_backup diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_update_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_update_parameters.py deleted file mode 100644 index ca0ad948dcea..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_update_parameters.py +++ /dev/null @@ -1,38 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateUpdateParameters(Model): - """The certificate update parameters. - - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: ~azure.keyvault.v7_0.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v7_0.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(CertificateUpdateParameters, self).__init__(**kwargs) - self.certificate_policy = kwargs.get('certificate_policy', None) - self.certificate_attributes = kwargs.get('certificate_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_update_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_update_parameters_py3.py deleted file mode 100644 index 4d4cf80139f9..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/certificate_update_parameters_py3.py +++ /dev/null @@ -1,38 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateUpdateParameters(Model): - """The certificate update parameters. - - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: ~azure.keyvault.v7_0.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.v7_0.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, certificate_policy=None, certificate_attributes=None, tags=None, **kwargs) -> None: - super(CertificateUpdateParameters, self).__init__(**kwargs) - self.certificate_policy = certificate_policy - self.certificate_attributes = certificate_attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/contact.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/contact.py deleted file mode 100644 index 217a04fb85d0..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/contact.py +++ /dev/null @@ -1,36 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Contact(Model): - """The contact information for the vault certificates. - - :param email_address: Email addresss. - :type email_address: str - :param name: Name. - :type name: str - :param phone: Phone number. - :type phone: str - """ - - _attribute_map = { - 'email_address': {'key': 'email', 'type': 'str'}, - 'name': {'key': 'name', 'type': 'str'}, - 'phone': {'key': 'phone', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(Contact, self).__init__(**kwargs) - self.email_address = kwargs.get('email_address', None) - self.name = kwargs.get('name', None) - self.phone = kwargs.get('phone', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/contact_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/contact_py3.py deleted file mode 100644 index 56569b0d9912..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/contact_py3.py +++ /dev/null @@ -1,36 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Contact(Model): - """The contact information for the vault certificates. - - :param email_address: Email addresss. - :type email_address: str - :param name: Name. - :type name: str - :param phone: Phone number. - :type phone: str - """ - - _attribute_map = { - 'email_address': {'key': 'email', 'type': 'str'}, - 'name': {'key': 'name', 'type': 'str'}, - 'phone': {'key': 'phone', 'type': 'str'}, - } - - def __init__(self, *, email_address: str=None, name: str=None, phone: str=None, **kwargs) -> None: - super(Contact, self).__init__(**kwargs) - self.email_address = email_address - self.name = name - self.phone = phone diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/contacts.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/contacts.py deleted file mode 100644 index 565fb99c42dc..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/contacts.py +++ /dev/null @@ -1,39 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Contacts(Model): - """The contacts for the vault certificates. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Identifier for the contacts collection. - :vartype id: str - :param contact_list: The contact list for the vault certificates. - :type contact_list: list[~azure.keyvault.v7_0.models.Contact] - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'contact_list': {'key': 'contacts', 'type': '[Contact]'}, - } - - def __init__(self, **kwargs): - super(Contacts, self).__init__(**kwargs) - self.id = None - self.contact_list = kwargs.get('contact_list', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/contacts_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/contacts_py3.py deleted file mode 100644 index 642b9cbe7ad2..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/contacts_py3.py +++ /dev/null @@ -1,39 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Contacts(Model): - """The contacts for the vault certificates. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Identifier for the contacts collection. - :vartype id: str - :param contact_list: The contact list for the vault certificates. - :type contact_list: list[~azure.keyvault.v7_0.models.Contact] - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'contact_list': {'key': 'contacts', 'type': '[Contact]'}, - } - - def __init__(self, *, contact_list=None, **kwargs) -> None: - super(Contacts, self).__init__(**kwargs) - self.id = None - self.contact_list = contact_list diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_bundle.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_bundle.py deleted file mode 100644 index 950e78105879..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_bundle.py +++ /dev/null @@ -1,79 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .certificate_bundle import CertificateBundle - - -class DeletedCertificateBundle(CertificateBundle): - """A Deleted Certificate consisting of its previous id, attributes and its - tags, as well as information on when it will be purged. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :ivar kid: The key id. - :vartype kid: str - :ivar sid: The secret id. - :vartype sid: str - :ivar x509_thumbprint: Thumbprint of the certificate. - :vartype x509_thumbprint: bytes - :ivar policy: The management policy. - :vartype policy: ~azure.keyvault.v7_0.models.CertificatePolicy - :param cer: CER contents of x509 certificate. - :type cer: bytearray - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The certificate attributes. - :type attributes: ~azure.keyvault.v7_0.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs - :type tags: dict[str, str] - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted certificate. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the certificate is scheduled to - be purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the certificate was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'id': {'readonly': True}, - 'kid': {'readonly': True}, - 'sid': {'readonly': True}, - 'x509_thumbprint': {'readonly': True}, - 'policy': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'sid': {'key': 'sid', 'type': 'str'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - 'policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'cer': {'key': 'cer', 'type': 'bytearray'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(DeletedCertificateBundle, self).__init__(**kwargs) - self.recovery_id = kwargs.get('recovery_id', None) - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_bundle_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_bundle_py3.py deleted file mode 100644 index df0cd527a31c..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_bundle_py3.py +++ /dev/null @@ -1,79 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .certificate_bundle_py3 import CertificateBundle - - -class DeletedCertificateBundle(CertificateBundle): - """A Deleted Certificate consisting of its previous id, attributes and its - tags, as well as information on when it will be purged. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :ivar kid: The key id. - :vartype kid: str - :ivar sid: The secret id. - :vartype sid: str - :ivar x509_thumbprint: Thumbprint of the certificate. - :vartype x509_thumbprint: bytes - :ivar policy: The management policy. - :vartype policy: ~azure.keyvault.v7_0.models.CertificatePolicy - :param cer: CER contents of x509 certificate. - :type cer: bytearray - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The certificate attributes. - :type attributes: ~azure.keyvault.v7_0.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs - :type tags: dict[str, str] - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted certificate. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the certificate is scheduled to - be purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the certificate was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'id': {'readonly': True}, - 'kid': {'readonly': True}, - 'sid': {'readonly': True}, - 'x509_thumbprint': {'readonly': True}, - 'policy': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'sid': {'key': 'sid', 'type': 'str'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - 'policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'cer': {'key': 'cer', 'type': 'bytearray'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, *, cer: bytearray=None, content_type: str=None, attributes=None, tags=None, recovery_id: str=None, **kwargs) -> None: - super(DeletedCertificateBundle, self).__init__(cer=cer, content_type=content_type, attributes=attributes, tags=tags, **kwargs) - self.recovery_id = recovery_id - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_item.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_item.py deleted file mode 100644 index 3d5cfdcd3d70..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_item.py +++ /dev/null @@ -1,59 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .certificate_item import CertificateItem - - -class DeletedCertificateItem(CertificateItem): - """The deleted certificate item containing metadata about the deleted - certificate. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param id: Certificate identifier. - :type id: str - :param attributes: The certificate management attributes. - :type attributes: ~azure.keyvault.v7_0.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param x509_thumbprint: Thumbprint of the certificate. - :type x509_thumbprint: bytes - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted certificate. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the certificate is scheduled to - be purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the certificate was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(DeletedCertificateItem, self).__init__(**kwargs) - self.recovery_id = kwargs.get('recovery_id', None) - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_item_paged.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_item_paged.py deleted file mode 100644 index 1fe1ee3e0023..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.paging import Paged - - -class DeletedCertificateItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`DeletedCertificateItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[DeletedCertificateItem]'} - } - - def __init__(self, *args, **kwargs): - - super(DeletedCertificateItemPaged, self).__init__(*args, **kwargs) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_item_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_item_py3.py deleted file mode 100644 index 2dd477800a23..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_item_py3.py +++ /dev/null @@ -1,59 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .certificate_item_py3 import CertificateItem - - -class DeletedCertificateItem(CertificateItem): - """The deleted certificate item containing metadata about the deleted - certificate. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param id: Certificate identifier. - :type id: str - :param attributes: The certificate management attributes. - :type attributes: ~azure.keyvault.v7_0.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param x509_thumbprint: Thumbprint of the certificate. - :type x509_thumbprint: bytes - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted certificate. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the certificate is scheduled to - be purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the certificate was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, *, id: str=None, attributes=None, tags=None, x509_thumbprint: bytes=None, recovery_id: str=None, **kwargs) -> None: - super(DeletedCertificateItem, self).__init__(id=id, attributes=attributes, tags=tags, x509_thumbprint=x509_thumbprint, **kwargs) - self.recovery_id = recovery_id - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_bundle.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_bundle.py deleted file mode 100644 index 27caf91df574..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_bundle.py +++ /dev/null @@ -1,61 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .key_bundle import KeyBundle - - -class DeletedKeyBundle(KeyBundle): - """A DeletedKeyBundle consisting of a WebKey plus its Attributes and deletion - info. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param key: The Json web key. - :type key: ~azure.keyvault.v7_0.models.JsonWebKey - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.v7_0.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted key. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the key is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the key was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'key': {'key': 'key', 'type': 'JsonWebKey'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(DeletedKeyBundle, self).__init__(**kwargs) - self.recovery_id = kwargs.get('recovery_id', None) - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_bundle_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_bundle_py3.py deleted file mode 100644 index 31300ec3f063..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_bundle_py3.py +++ /dev/null @@ -1,61 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .key_bundle_py3 import KeyBundle - - -class DeletedKeyBundle(KeyBundle): - """A DeletedKeyBundle consisting of a WebKey plus its Attributes and deletion - info. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param key: The Json web key. - :type key: ~azure.keyvault.v7_0.models.JsonWebKey - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.v7_0.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted key. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the key is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the key was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'key': {'key': 'key', 'type': 'JsonWebKey'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, *, key=None, attributes=None, tags=None, recovery_id: str=None, **kwargs) -> None: - super(DeletedKeyBundle, self).__init__(key=key, attributes=attributes, tags=tags, **kwargs) - self.recovery_id = recovery_id - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_item.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_item.py deleted file mode 100644 index 9f9d434ce234..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_item.py +++ /dev/null @@ -1,61 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .key_item import KeyItem - - -class DeletedKeyItem(KeyItem): - """The deleted key item containing the deleted key metadata and information - about deletion. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param kid: Key identifier. - :type kid: str - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.v7_0.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted key. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the key is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the key was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'kid': {'key': 'kid', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(DeletedKeyItem, self).__init__(**kwargs) - self.recovery_id = kwargs.get('recovery_id', None) - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_item_paged.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_item_paged.py deleted file mode 100644 index cae53dbb6fb6..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.paging import Paged - - -class DeletedKeyItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`DeletedKeyItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[DeletedKeyItem]'} - } - - def __init__(self, *args, **kwargs): - - super(DeletedKeyItemPaged, self).__init__(*args, **kwargs) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_item_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_item_py3.py deleted file mode 100644 index c03283f3cdf0..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_item_py3.py +++ /dev/null @@ -1,61 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .key_item_py3 import KeyItem - - -class DeletedKeyItem(KeyItem): - """The deleted key item containing the deleted key metadata and information - about deletion. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param kid: Key identifier. - :type kid: str - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.v7_0.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted key. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the key is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the key was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'kid': {'key': 'kid', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, *, kid: str=None, attributes=None, tags=None, recovery_id: str=None, **kwargs) -> None: - super(DeletedKeyItem, self).__init__(kid=kid, attributes=attributes, tags=tags, **kwargs) - self.recovery_id = recovery_id - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_bundle.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_bundle.py deleted file mode 100644 index 247249a0091a..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_bundle.py +++ /dev/null @@ -1,79 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .sas_definition_bundle import SasDefinitionBundle - - -class DeletedSasDefinitionBundle(SasDefinitionBundle): - """A deleted SAS definition bundle consisting of its previous id, attributes - and its tags, as well as information on when it will be purged. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The SAS definition id. - :vartype id: str - :ivar secret_id: Storage account SAS definition secret id. - :vartype secret_id: str - :ivar template_uri: The SAS definition token template signed with an - arbitrary key. Tokens created according to the SAS definition will have - the same properties as the template. - :vartype template_uri: str - :ivar sas_type: The type of SAS token the SAS definition will create. - Possible values include: 'account', 'service' - :vartype sas_type: str or ~azure.keyvault.v7_0.models.SasTokenType - :ivar validity_period: The validity period of SAS tokens created according - to the SAS definition. - :vartype validity_period: str - :ivar attributes: The SAS definition attributes. - :vartype attributes: ~azure.keyvault.v7_0.models.SasDefinitionAttributes - :ivar tags: Application specific metadata in the form of key-value pairs - :vartype tags: dict[str, str] - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted SAS definition. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the SAS definition is scheduled - to be purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the SAS definition was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'id': {'readonly': True}, - 'secret_id': {'readonly': True}, - 'template_uri': {'readonly': True}, - 'sas_type': {'readonly': True}, - 'validity_period': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'secret_id': {'key': 'sid', 'type': 'str'}, - 'template_uri': {'key': 'templateUri', 'type': 'str'}, - 'sas_type': {'key': 'sasType', 'type': 'str'}, - 'validity_period': {'key': 'validityPeriod', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(DeletedSasDefinitionBundle, self).__init__(**kwargs) - self.recovery_id = kwargs.get('recovery_id', None) - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_bundle_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_bundle_py3.py deleted file mode 100644 index 75e0ac0e497e..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_bundle_py3.py +++ /dev/null @@ -1,79 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .sas_definition_bundle_py3 import SasDefinitionBundle - - -class DeletedSasDefinitionBundle(SasDefinitionBundle): - """A deleted SAS definition bundle consisting of its previous id, attributes - and its tags, as well as information on when it will be purged. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The SAS definition id. - :vartype id: str - :ivar secret_id: Storage account SAS definition secret id. - :vartype secret_id: str - :ivar template_uri: The SAS definition token template signed with an - arbitrary key. Tokens created according to the SAS definition will have - the same properties as the template. - :vartype template_uri: str - :ivar sas_type: The type of SAS token the SAS definition will create. - Possible values include: 'account', 'service' - :vartype sas_type: str or ~azure.keyvault.v7_0.models.SasTokenType - :ivar validity_period: The validity period of SAS tokens created according - to the SAS definition. - :vartype validity_period: str - :ivar attributes: The SAS definition attributes. - :vartype attributes: ~azure.keyvault.v7_0.models.SasDefinitionAttributes - :ivar tags: Application specific metadata in the form of key-value pairs - :vartype tags: dict[str, str] - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted SAS definition. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the SAS definition is scheduled - to be purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the SAS definition was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'id': {'readonly': True}, - 'secret_id': {'readonly': True}, - 'template_uri': {'readonly': True}, - 'sas_type': {'readonly': True}, - 'validity_period': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'secret_id': {'key': 'sid', 'type': 'str'}, - 'template_uri': {'key': 'templateUri', 'type': 'str'}, - 'sas_type': {'key': 'sasType', 'type': 'str'}, - 'validity_period': {'key': 'validityPeriod', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, *, recovery_id: str=None, **kwargs) -> None: - super(DeletedSasDefinitionBundle, self).__init__(**kwargs) - self.recovery_id = recovery_id - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_item.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_item.py deleted file mode 100644 index bb165a58f0d1..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_item.py +++ /dev/null @@ -1,63 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .sas_definition_item import SasDefinitionItem - - -class DeletedSasDefinitionItem(SasDefinitionItem): - """The deleted SAS definition item containing metadata about the deleted SAS - definition. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The storage SAS identifier. - :vartype id: str - :ivar secret_id: The storage account SAS definition secret id. - :vartype secret_id: str - :ivar attributes: The SAS definition management attributes. - :vartype attributes: ~azure.keyvault.v7_0.models.SasDefinitionAttributes - :ivar tags: Application specific metadata in the form of key-value pairs. - :vartype tags: dict[str, str] - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted SAS definition. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the SAS definition is scheduled - to be purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the SAS definition was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'id': {'readonly': True}, - 'secret_id': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'secret_id': {'key': 'sid', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(DeletedSasDefinitionItem, self).__init__(**kwargs) - self.recovery_id = kwargs.get('recovery_id', None) - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_item_paged.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_item_paged.py deleted file mode 100644 index d4ca0a5fd502..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.paging import Paged - - -class DeletedSasDefinitionItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`DeletedSasDefinitionItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[DeletedSasDefinitionItem]'} - } - - def __init__(self, *args, **kwargs): - - super(DeletedSasDefinitionItemPaged, self).__init__(*args, **kwargs) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_item_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_item_py3.py deleted file mode 100644 index bdb3f36b864d..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_item_py3.py +++ /dev/null @@ -1,63 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .sas_definition_item_py3 import SasDefinitionItem - - -class DeletedSasDefinitionItem(SasDefinitionItem): - """The deleted SAS definition item containing metadata about the deleted SAS - definition. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The storage SAS identifier. - :vartype id: str - :ivar secret_id: The storage account SAS definition secret id. - :vartype secret_id: str - :ivar attributes: The SAS definition management attributes. - :vartype attributes: ~azure.keyvault.v7_0.models.SasDefinitionAttributes - :ivar tags: Application specific metadata in the form of key-value pairs. - :vartype tags: dict[str, str] - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted SAS definition. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the SAS definition is scheduled - to be purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the SAS definition was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'id': {'readonly': True}, - 'secret_id': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'secret_id': {'key': 'sid', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, *, recovery_id: str=None, **kwargs) -> None: - super(DeletedSasDefinitionItem, self).__init__(**kwargs) - self.recovery_id = recovery_id - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_bundle.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_bundle.py deleted file mode 100644 index 4c1a8b6d69ee..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_bundle.py +++ /dev/null @@ -1,72 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .secret_bundle import SecretBundle - - -class DeletedSecretBundle(SecretBundle): - """A Deleted Secret consisting of its previous id, attributes and its tags, as - well as information on when it will be purged. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param value: The secret value. - :type value: str - :param id: The secret id. - :type id: str - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.v7_0.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar kid: If this is a secret backing a KV certificate, then this field - specifies the corresponding key backing the KV certificate. - :vartype kid: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a secret backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted secret. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the secret is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the secret was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'kid': {'readonly': True}, - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'str'}, - 'id': {'key': 'id', 'type': 'str'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(DeletedSecretBundle, self).__init__(**kwargs) - self.recovery_id = kwargs.get('recovery_id', None) - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_bundle_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_bundle_py3.py deleted file mode 100644 index 6357df55ddc3..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_bundle_py3.py +++ /dev/null @@ -1,72 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .secret_bundle_py3 import SecretBundle - - -class DeletedSecretBundle(SecretBundle): - """A Deleted Secret consisting of its previous id, attributes and its tags, as - well as information on when it will be purged. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param value: The secret value. - :type value: str - :param id: The secret id. - :type id: str - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.v7_0.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar kid: If this is a secret backing a KV certificate, then this field - specifies the corresponding key backing the KV certificate. - :vartype kid: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a secret backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted secret. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the secret is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the secret was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'kid': {'readonly': True}, - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'str'}, - 'id': {'key': 'id', 'type': 'str'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, *, value: str=None, id: str=None, content_type: str=None, attributes=None, tags=None, recovery_id: str=None, **kwargs) -> None: - super(DeletedSecretBundle, self).__init__(value=value, id=id, content_type=content_type, attributes=attributes, tags=tags, **kwargs) - self.recovery_id = recovery_id - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_item.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_item.py deleted file mode 100644 index fe9313a79537..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_item.py +++ /dev/null @@ -1,63 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .secret_item import SecretItem - - -class DeletedSecretItem(SecretItem): - """The deleted secret item containing metadata about the deleted secret. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param id: Secret identifier. - :type id: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.v7_0.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param content_type: Type of the secret value such as a password. - :type content_type: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a key backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted secret. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the secret is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the secret was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(DeletedSecretItem, self).__init__(**kwargs) - self.recovery_id = kwargs.get('recovery_id', None) - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_item_paged.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_item_paged.py deleted file mode 100644 index 6f86a1c06818..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.paging import Paged - - -class DeletedSecretItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`DeletedSecretItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[DeletedSecretItem]'} - } - - def __init__(self, *args, **kwargs): - - super(DeletedSecretItemPaged, self).__init__(*args, **kwargs) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_item_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_item_py3.py deleted file mode 100644 index 64de344c3d22..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_item_py3.py +++ /dev/null @@ -1,63 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .secret_item_py3 import SecretItem - - -class DeletedSecretItem(SecretItem): - """The deleted secret item containing metadata about the deleted secret. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param id: Secret identifier. - :type id: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.v7_0.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param content_type: Type of the secret value such as a password. - :type content_type: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a key backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted secret. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the secret is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the secret was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, *, id: str=None, attributes=None, tags=None, content_type: str=None, recovery_id: str=None, **kwargs) -> None: - super(DeletedSecretItem, self).__init__(id=id, attributes=attributes, tags=tags, content_type=content_type, **kwargs) - self.recovery_id = recovery_id - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_account_item.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_account_item.py deleted file mode 100644 index 02323e19c062..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_account_item.py +++ /dev/null @@ -1,63 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .storage_account_item import StorageAccountItem - - -class DeletedStorageAccountItem(StorageAccountItem): - """The deleted storage account item containing metadata about the deleted - storage account. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Storage identifier. - :vartype id: str - :ivar resource_id: Storage account resource Id. - :vartype resource_id: str - :ivar attributes: The storage account management attributes. - :vartype attributes: ~azure.keyvault.v7_0.models.StorageAccountAttributes - :ivar tags: Application specific metadata in the form of key-value pairs. - :vartype tags: dict[str, str] - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted storage account. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the storage account is scheduled - to be purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the storage account was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'id': {'readonly': True}, - 'resource_id': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'resource_id': {'key': 'resourceId', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(DeletedStorageAccountItem, self).__init__(**kwargs) - self.recovery_id = kwargs.get('recovery_id', None) - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_account_item_paged.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_account_item_paged.py deleted file mode 100644 index cf3f086ab95f..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_account_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.paging import Paged - - -class DeletedStorageAccountItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`DeletedStorageAccountItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[DeletedStorageAccountItem]'} - } - - def __init__(self, *args, **kwargs): - - super(DeletedStorageAccountItemPaged, self).__init__(*args, **kwargs) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_account_item_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_account_item_py3.py deleted file mode 100644 index 8203063cdef5..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_account_item_py3.py +++ /dev/null @@ -1,63 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .storage_account_item_py3 import StorageAccountItem - - -class DeletedStorageAccountItem(StorageAccountItem): - """The deleted storage account item containing metadata about the deleted - storage account. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Storage identifier. - :vartype id: str - :ivar resource_id: Storage account resource Id. - :vartype resource_id: str - :ivar attributes: The storage account management attributes. - :vartype attributes: ~azure.keyvault.v7_0.models.StorageAccountAttributes - :ivar tags: Application specific metadata in the form of key-value pairs. - :vartype tags: dict[str, str] - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted storage account. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the storage account is scheduled - to be purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the storage account was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'id': {'readonly': True}, - 'resource_id': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'resource_id': {'key': 'resourceId', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, *, recovery_id: str=None, **kwargs) -> None: - super(DeletedStorageAccountItem, self).__init__(**kwargs) - self.recovery_id = recovery_id - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_bundle.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_bundle.py deleted file mode 100644 index 1c18ec6128a5..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_bundle.py +++ /dev/null @@ -1,77 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .storage_bundle import StorageBundle - - -class DeletedStorageBundle(StorageBundle): - """A deleted storage account bundle consisting of its previous id, attributes - and its tags, as well as information on when it will be purged. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The storage account id. - :vartype id: str - :ivar resource_id: The storage account resource id. - :vartype resource_id: str - :ivar active_key_name: The current active storage account key name. - :vartype active_key_name: str - :ivar auto_regenerate_key: whether keyvault should manage the storage - account for the user. - :vartype auto_regenerate_key: bool - :ivar regeneration_period: The key regeneration time duration specified in - ISO-8601 format. - :vartype regeneration_period: str - :ivar attributes: The storage account attributes. - :vartype attributes: ~azure.keyvault.v7_0.models.StorageAccountAttributes - :ivar tags: Application specific metadata in the form of key-value pairs - :vartype tags: dict[str, str] - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted storage account. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the storage account is scheduled - to be purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the storage account was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'id': {'readonly': True}, - 'resource_id': {'readonly': True}, - 'active_key_name': {'readonly': True}, - 'auto_regenerate_key': {'readonly': True}, - 'regeneration_period': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'resource_id': {'key': 'resourceId', 'type': 'str'}, - 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, - 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, - 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(DeletedStorageBundle, self).__init__(**kwargs) - self.recovery_id = kwargs.get('recovery_id', None) - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_bundle_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_bundle_py3.py deleted file mode 100644 index 13a5e41fcd6c..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_bundle_py3.py +++ /dev/null @@ -1,77 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .storage_bundle_py3 import StorageBundle - - -class DeletedStorageBundle(StorageBundle): - """A deleted storage account bundle consisting of its previous id, attributes - and its tags, as well as information on when it will be purged. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The storage account id. - :vartype id: str - :ivar resource_id: The storage account resource id. - :vartype resource_id: str - :ivar active_key_name: The current active storage account key name. - :vartype active_key_name: str - :ivar auto_regenerate_key: whether keyvault should manage the storage - account for the user. - :vartype auto_regenerate_key: bool - :ivar regeneration_period: The key regeneration time duration specified in - ISO-8601 format. - :vartype regeneration_period: str - :ivar attributes: The storage account attributes. - :vartype attributes: ~azure.keyvault.v7_0.models.StorageAccountAttributes - :ivar tags: Application specific metadata in the form of key-value pairs - :vartype tags: dict[str, str] - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted storage account. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the storage account is scheduled - to be purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the storage account was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'id': {'readonly': True}, - 'resource_id': {'readonly': True}, - 'active_key_name': {'readonly': True}, - 'auto_regenerate_key': {'readonly': True}, - 'regeneration_period': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'resource_id': {'key': 'resourceId', 'type': 'str'}, - 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, - 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, - 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, *, recovery_id: str=None, **kwargs) -> None: - super(DeletedStorageBundle, self).__init__(**kwargs) - self.recovery_id = recovery_id - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/error.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/error.py deleted file mode 100644 index 8cdf64f756a1..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/error.py +++ /dev/null @@ -1,45 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Error(Model): - """The key vault server error. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar inner_error: - :vartype inner_error: ~azure.keyvault.v7_0.models.Error - """ - - _validation = { - 'code': {'readonly': True}, - 'message': {'readonly': True}, - 'inner_error': {'readonly': True}, - } - - _attribute_map = { - 'code': {'key': 'code', 'type': 'str'}, - 'message': {'key': 'message', 'type': 'str'}, - 'inner_error': {'key': 'innererror', 'type': 'Error'}, - } - - def __init__(self, **kwargs): - super(Error, self).__init__(**kwargs) - self.code = None - self.message = None - self.inner_error = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/error_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/error_py3.py deleted file mode 100644 index ab340439a55b..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/error_py3.py +++ /dev/null @@ -1,45 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Error(Model): - """The key vault server error. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar inner_error: - :vartype inner_error: ~azure.keyvault.v7_0.models.Error - """ - - _validation = { - 'code': {'readonly': True}, - 'message': {'readonly': True}, - 'inner_error': {'readonly': True}, - } - - _attribute_map = { - 'code': {'key': 'code', 'type': 'str'}, - 'message': {'key': 'message', 'type': 'str'}, - 'inner_error': {'key': 'innererror', 'type': 'Error'}, - } - - def __init__(self, **kwargs) -> None: - super(Error, self).__init__(**kwargs) - self.code = None - self.message = None - self.inner_error = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_attributes.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_attributes.py deleted file mode 100644 index c10a16642899..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_attributes.py +++ /dev/null @@ -1,44 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class IssuerAttributes(Model): - """The attributes of an issuer managed by the Key Vault service. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the issuer is enabled. - :type enabled: bool - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(IssuerAttributes, self).__init__(**kwargs) - self.enabled = kwargs.get('enabled', None) - self.created = None - self.updated = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_attributes_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_attributes_py3.py deleted file mode 100644 index d52ad4e0fc20..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_attributes_py3.py +++ /dev/null @@ -1,44 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class IssuerAttributes(Model): - """The attributes of an issuer managed by the Key Vault service. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the issuer is enabled. - :type enabled: bool - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - } - - def __init__(self, *, enabled: bool=None, **kwargs) -> None: - super(IssuerAttributes, self).__init__(**kwargs) - self.enabled = enabled - self.created = None - self.updated = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_bundle.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_bundle.py deleted file mode 100644 index e086ff0c9e8d..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_bundle.py +++ /dev/null @@ -1,53 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class IssuerBundle(Model): - """The issuer for Key Vault certificate. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Identifier for the issuer object. - :vartype id: str - :param provider: The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: ~azure.keyvault.v7_0.models.IssuerCredentials - :param organization_details: Details of the organization as provided to - the issuer. - :type organization_details: - ~azure.keyvault.v7_0.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.v7_0.models.IssuerAttributes - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'provider': {'key': 'provider', 'type': 'str'}, - 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, - 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, - 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, - } - - def __init__(self, **kwargs): - super(IssuerBundle, self).__init__(**kwargs) - self.id = None - self.provider = kwargs.get('provider', None) - self.credentials = kwargs.get('credentials', None) - self.organization_details = kwargs.get('organization_details', None) - self.attributes = kwargs.get('attributes', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_bundle_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_bundle_py3.py deleted file mode 100644 index d9cce3e50302..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_bundle_py3.py +++ /dev/null @@ -1,53 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class IssuerBundle(Model): - """The issuer for Key Vault certificate. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Identifier for the issuer object. - :vartype id: str - :param provider: The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: ~azure.keyvault.v7_0.models.IssuerCredentials - :param organization_details: Details of the organization as provided to - the issuer. - :type organization_details: - ~azure.keyvault.v7_0.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.v7_0.models.IssuerAttributes - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'provider': {'key': 'provider', 'type': 'str'}, - 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, - 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, - 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, - } - - def __init__(self, *, provider: str=None, credentials=None, organization_details=None, attributes=None, **kwargs) -> None: - super(IssuerBundle, self).__init__(**kwargs) - self.id = None - self.provider = provider - self.credentials = credentials - self.organization_details = organization_details - self.attributes = attributes diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_credentials.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_credentials.py deleted file mode 100644 index 2f86d863239d..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_credentials.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class IssuerCredentials(Model): - """The credentials to be used for the certificate issuer. - - :param account_id: The user name/account name/account id. - :type account_id: str - :param password: The password/secret/account key. - :type password: str - """ - - _attribute_map = { - 'account_id': {'key': 'account_id', 'type': 'str'}, - 'password': {'key': 'pwd', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(IssuerCredentials, self).__init__(**kwargs) - self.account_id = kwargs.get('account_id', None) - self.password = kwargs.get('password', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_credentials_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_credentials_py3.py deleted file mode 100644 index 2882bad875d0..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_credentials_py3.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class IssuerCredentials(Model): - """The credentials to be used for the certificate issuer. - - :param account_id: The user name/account name/account id. - :type account_id: str - :param password: The password/secret/account key. - :type password: str - """ - - _attribute_map = { - 'account_id': {'key': 'account_id', 'type': 'str'}, - 'password': {'key': 'pwd', 'type': 'str'}, - } - - def __init__(self, *, account_id: str=None, password: str=None, **kwargs) -> None: - super(IssuerCredentials, self).__init__(**kwargs) - self.account_id = account_id - self.password = password diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_parameters.py deleted file mode 100644 index 36f15dae7887..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_parameters.py +++ /dev/null @@ -1,39 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class IssuerParameters(Model): - """Parameters for the issuer of the X509 component of a certificate. - - :param name: Name of the referenced issuer object or reserved names; for - example, 'Self' or 'Unknown'. - :type name: str - :param certificate_type: Type of certificate to be requested from the - issuer provider. - :type certificate_type: str - :param certificate_transparency: Indicates if the certificates generated - under this policy should be published to certificate transparency logs. - :type certificate_transparency: bool - """ - - _attribute_map = { - 'name': {'key': 'name', 'type': 'str'}, - 'certificate_type': {'key': 'cty', 'type': 'str'}, - 'certificate_transparency': {'key': 'cert_transparency', 'type': 'bool'}, - } - - def __init__(self, **kwargs): - super(IssuerParameters, self).__init__(**kwargs) - self.name = kwargs.get('name', None) - self.certificate_type = kwargs.get('certificate_type', None) - self.certificate_transparency = kwargs.get('certificate_transparency', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_parameters_py3.py deleted file mode 100644 index b178321725fd..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/issuer_parameters_py3.py +++ /dev/null @@ -1,39 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class IssuerParameters(Model): - """Parameters for the issuer of the X509 component of a certificate. - - :param name: Name of the referenced issuer object or reserved names; for - example, 'Self' or 'Unknown'. - :type name: str - :param certificate_type: Type of certificate to be requested from the - issuer provider. - :type certificate_type: str - :param certificate_transparency: Indicates if the certificates generated - under this policy should be published to certificate transparency logs. - :type certificate_transparency: bool - """ - - _attribute_map = { - 'name': {'key': 'name', 'type': 'str'}, - 'certificate_type': {'key': 'cty', 'type': 'str'}, - 'certificate_transparency': {'key': 'cert_transparency', 'type': 'bool'}, - } - - def __init__(self, *, name: str=None, certificate_type: str=None, certificate_transparency: bool=None, **kwargs) -> None: - super(IssuerParameters, self).__init__(**kwargs) - self.name = name - self.certificate_type = certificate_type - self.certificate_transparency = certificate_transparency diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/json_web_key.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/json_web_key.py deleted file mode 100644 index 35749f04691b..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/json_web_key.py +++ /dev/null @@ -1,92 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class JsonWebKey(Model): - """As of http://tools.ietf.org/html/draft-ietf-jose-json-web-key-18. - - :param kid: Key identifier. - :type kid: str - :param kty: JsonWebKey Key Type (kty), as defined in - https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-40. - Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', 'oct' - :type kty: str or ~azure.keyvault.v7_0.models.JsonWebKeyType - :param key_ops: - :type key_ops: list[str] - :param n: RSA modulus. - :type n: bytes - :param e: RSA public exponent. - :type e: bytes - :param d: RSA private exponent, or the D component of an EC private key. - :type d: bytes - :param dp: RSA private key parameter. - :type dp: bytes - :param dq: RSA private key parameter. - :type dq: bytes - :param qi: RSA private key parameter. - :type qi: bytes - :param p: RSA secret prime. - :type p: bytes - :param q: RSA secret prime, with p < q. - :type q: bytes - :param k: Symmetric key. - :type k: bytes - :param t: HSM Token, used with 'Bring Your Own Key'. - :type t: bytes - :param crv: Elliptic curve name. For valid values, see - JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', - 'P-256K' - :type crv: str or ~azure.keyvault.v7_0.models.JsonWebKeyCurveName - :param x: X component of an EC public key. - :type x: bytes - :param y: Y component of an EC public key. - :type y: bytes - """ - - _attribute_map = { - 'kid': {'key': 'kid', 'type': 'str'}, - 'kty': {'key': 'kty', 'type': 'str'}, - 'key_ops': {'key': 'key_ops', 'type': '[str]'}, - 'n': {'key': 'n', 'type': 'base64'}, - 'e': {'key': 'e', 'type': 'base64'}, - 'd': {'key': 'd', 'type': 'base64'}, - 'dp': {'key': 'dp', 'type': 'base64'}, - 'dq': {'key': 'dq', 'type': 'base64'}, - 'qi': {'key': 'qi', 'type': 'base64'}, - 'p': {'key': 'p', 'type': 'base64'}, - 'q': {'key': 'q', 'type': 'base64'}, - 'k': {'key': 'k', 'type': 'base64'}, - 't': {'key': 'key_hsm', 'type': 'base64'}, - 'crv': {'key': 'crv', 'type': 'str'}, - 'x': {'key': 'x', 'type': 'base64'}, - 'y': {'key': 'y', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(JsonWebKey, self).__init__(**kwargs) - self.kid = kwargs.get('kid', None) - self.kty = kwargs.get('kty', None) - self.key_ops = kwargs.get('key_ops', None) - self.n = kwargs.get('n', None) - self.e = kwargs.get('e', None) - self.d = kwargs.get('d', None) - self.dp = kwargs.get('dp', None) - self.dq = kwargs.get('dq', None) - self.qi = kwargs.get('qi', None) - self.p = kwargs.get('p', None) - self.q = kwargs.get('q', None) - self.k = kwargs.get('k', None) - self.t = kwargs.get('t', None) - self.crv = kwargs.get('crv', None) - self.x = kwargs.get('x', None) - self.y = kwargs.get('y', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/json_web_key_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/json_web_key_py3.py deleted file mode 100644 index 31a9198ea7c3..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/json_web_key_py3.py +++ /dev/null @@ -1,92 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class JsonWebKey(Model): - """As of http://tools.ietf.org/html/draft-ietf-jose-json-web-key-18. - - :param kid: Key identifier. - :type kid: str - :param kty: JsonWebKey Key Type (kty), as defined in - https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-40. - Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', 'oct' - :type kty: str or ~azure.keyvault.v7_0.models.JsonWebKeyType - :param key_ops: - :type key_ops: list[str] - :param n: RSA modulus. - :type n: bytes - :param e: RSA public exponent. - :type e: bytes - :param d: RSA private exponent, or the D component of an EC private key. - :type d: bytes - :param dp: RSA private key parameter. - :type dp: bytes - :param dq: RSA private key parameter. - :type dq: bytes - :param qi: RSA private key parameter. - :type qi: bytes - :param p: RSA secret prime. - :type p: bytes - :param q: RSA secret prime, with p < q. - :type q: bytes - :param k: Symmetric key. - :type k: bytes - :param t: HSM Token, used with 'Bring Your Own Key'. - :type t: bytes - :param crv: Elliptic curve name. For valid values, see - JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', - 'P-256K' - :type crv: str or ~azure.keyvault.v7_0.models.JsonWebKeyCurveName - :param x: X component of an EC public key. - :type x: bytes - :param y: Y component of an EC public key. - :type y: bytes - """ - - _attribute_map = { - 'kid': {'key': 'kid', 'type': 'str'}, - 'kty': {'key': 'kty', 'type': 'str'}, - 'key_ops': {'key': 'key_ops', 'type': '[str]'}, - 'n': {'key': 'n', 'type': 'base64'}, - 'e': {'key': 'e', 'type': 'base64'}, - 'd': {'key': 'd', 'type': 'base64'}, - 'dp': {'key': 'dp', 'type': 'base64'}, - 'dq': {'key': 'dq', 'type': 'base64'}, - 'qi': {'key': 'qi', 'type': 'base64'}, - 'p': {'key': 'p', 'type': 'base64'}, - 'q': {'key': 'q', 'type': 'base64'}, - 'k': {'key': 'k', 'type': 'base64'}, - 't': {'key': 'key_hsm', 'type': 'base64'}, - 'crv': {'key': 'crv', 'type': 'str'}, - 'x': {'key': 'x', 'type': 'base64'}, - 'y': {'key': 'y', 'type': 'base64'}, - } - - def __init__(self, *, kid: str=None, kty=None, key_ops=None, n: bytes=None, e: bytes=None, d: bytes=None, dp: bytes=None, dq: bytes=None, qi: bytes=None, p: bytes=None, q: bytes=None, k: bytes=None, t: bytes=None, crv=None, x: bytes=None, y: bytes=None, **kwargs) -> None: - super(JsonWebKey, self).__init__(**kwargs) - self.kid = kid - self.kty = kty - self.key_ops = key_ops - self.n = n - self.e = e - self.d = d - self.dp = dp - self.dq = dq - self.qi = qi - self.p = p - self.q = q - self.k = k - self.t = t - self.crv = crv - self.x = x - self.y = y diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_attributes.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_attributes.py deleted file mode 100644 index 5b586729cb98..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_attributes.py +++ /dev/null @@ -1,58 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .attributes import Attributes - - -class KeyAttributes(Attributes): - """The attributes of a key managed by the key vault service. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the object is enabled. - :type enabled: bool - :param not_before: Not before date in UTC. - :type not_before: datetime - :param expires: Expiry date in UTC. - :type expires: datetime - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for keys in the current vault. If it contains 'Purgeable' the key - can be permanently deleted by a privileged user; otherwise, only the - system can purge the key, at the end of the retention interval. Possible - values include: 'Purgeable', 'Recoverable+Purgeable', 'Recoverable', - 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.v7_0.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'not_before': {'key': 'nbf', 'type': 'unix-time'}, - 'expires': {'key': 'exp', 'type': 'unix-time'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(KeyAttributes, self).__init__(**kwargs) - self.recovery_level = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_attributes_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_attributes_py3.py deleted file mode 100644 index 46148560aed3..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_attributes_py3.py +++ /dev/null @@ -1,58 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .attributes_py3 import Attributes - - -class KeyAttributes(Attributes): - """The attributes of a key managed by the key vault service. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the object is enabled. - :type enabled: bool - :param not_before: Not before date in UTC. - :type not_before: datetime - :param expires: Expiry date in UTC. - :type expires: datetime - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for keys in the current vault. If it contains 'Purgeable' the key - can be permanently deleted by a privileged user; otherwise, only the - system can purge the key, at the end of the retention interval. Possible - values include: 'Purgeable', 'Recoverable+Purgeable', 'Recoverable', - 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.v7_0.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'not_before': {'key': 'nbf', 'type': 'unix-time'}, - 'expires': {'key': 'exp', 'type': 'unix-time'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, *, enabled: bool=None, not_before=None, expires=None, **kwargs) -> None: - super(KeyAttributes, self).__init__(enabled=enabled, not_before=not_before, expires=expires, **kwargs) - self.recovery_level = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_bundle.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_bundle.py deleted file mode 100644 index 36dc23a5d29f..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_bundle.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyBundle(Model): - """A KeyBundle consisting of a WebKey plus its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param key: The Json web key. - :type key: ~azure.keyvault.v7_0.models.JsonWebKey - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.v7_0.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'key': {'key': 'key', 'type': 'JsonWebKey'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, **kwargs): - super(KeyBundle, self).__init__(**kwargs) - self.key = kwargs.get('key', None) - self.attributes = kwargs.get('attributes', None) - self.tags = kwargs.get('tags', None) - self.managed = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_bundle_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_bundle_py3.py deleted file mode 100644 index 19b298aa420f..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_bundle_py3.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyBundle(Model): - """A KeyBundle consisting of a WebKey plus its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param key: The Json web key. - :type key: ~azure.keyvault.v7_0.models.JsonWebKey - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.v7_0.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'key': {'key': 'key', 'type': 'JsonWebKey'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, *, key=None, attributes=None, tags=None, **kwargs) -> None: - super(KeyBundle, self).__init__(**kwargs) - self.key = key - self.attributes = attributes - self.tags = tags - self.managed = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_create_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_create_parameters.py deleted file mode 100644 index c5059749940e..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_create_parameters.py +++ /dev/null @@ -1,60 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyCreateParameters(Model): - """The key create parameters. - - All required parameters must be populated in order to send to Azure. - - :param kty: Required. The type of key to create. For valid values, see - JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', - 'oct' - :type kty: str or ~azure.keyvault.v7_0.models.JsonWebKeyType - :param key_size: The key size in bits. For example: 2048, 3072, or 4096 - for RSA. - :type key_size: int - :param key_ops: - :type key_ops: list[str or - ~azure.keyvault.v7_0.models.JsonWebKeyOperation] - :param key_attributes: - :type key_attributes: ~azure.keyvault.v7_0.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param curve: Elliptic curve name. For valid values, see - JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', - 'P-256K' - :type curve: str or ~azure.keyvault.v7_0.models.JsonWebKeyCurveName - """ - - _validation = { - 'kty': {'required': True, 'min_length': 1}, - } - - _attribute_map = { - 'kty': {'key': 'kty', 'type': 'str'}, - 'key_size': {'key': 'key_size', 'type': 'int'}, - 'key_ops': {'key': 'key_ops', 'type': '[str]'}, - 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'curve': {'key': 'crv', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(KeyCreateParameters, self).__init__(**kwargs) - self.kty = kwargs.get('kty', None) - self.key_size = kwargs.get('key_size', None) - self.key_ops = kwargs.get('key_ops', None) - self.key_attributes = kwargs.get('key_attributes', None) - self.tags = kwargs.get('tags', None) - self.curve = kwargs.get('curve', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_create_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_create_parameters_py3.py deleted file mode 100644 index 9bbb49ac9b6b..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_create_parameters_py3.py +++ /dev/null @@ -1,60 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyCreateParameters(Model): - """The key create parameters. - - All required parameters must be populated in order to send to Azure. - - :param kty: Required. The type of key to create. For valid values, see - JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', - 'oct' - :type kty: str or ~azure.keyvault.v7_0.models.JsonWebKeyType - :param key_size: The key size in bits. For example: 2048, 3072, or 4096 - for RSA. - :type key_size: int - :param key_ops: - :type key_ops: list[str or - ~azure.keyvault.v7_0.models.JsonWebKeyOperation] - :param key_attributes: - :type key_attributes: ~azure.keyvault.v7_0.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param curve: Elliptic curve name. For valid values, see - JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', - 'P-256K' - :type curve: str or ~azure.keyvault.v7_0.models.JsonWebKeyCurveName - """ - - _validation = { - 'kty': {'required': True, 'min_length': 1}, - } - - _attribute_map = { - 'kty': {'key': 'kty', 'type': 'str'}, - 'key_size': {'key': 'key_size', 'type': 'int'}, - 'key_ops': {'key': 'key_ops', 'type': '[str]'}, - 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'curve': {'key': 'crv', 'type': 'str'}, - } - - def __init__(self, *, kty, key_size: int=None, key_ops=None, key_attributes=None, tags=None, curve=None, **kwargs) -> None: - super(KeyCreateParameters, self).__init__(**kwargs) - self.kty = kty - self.key_size = key_size - self.key_ops = key_ops - self.key_attributes = key_attributes - self.tags = tags - self.curve = curve diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_import_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_import_parameters.py deleted file mode 100644 index 99c7422fabf8..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_import_parameters.py +++ /dev/null @@ -1,46 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyImportParameters(Model): - """The key import parameters. - - All required parameters must be populated in order to send to Azure. - - :param hsm: Whether to import as a hardware key (HSM) or software key. - :type hsm: bool - :param key: Required. The Json web key - :type key: ~azure.keyvault.v7_0.models.JsonWebKey - :param key_attributes: The key management attributes. - :type key_attributes: ~azure.keyvault.v7_0.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'key': {'required': True}, - } - - _attribute_map = { - 'hsm': {'key': 'Hsm', 'type': 'bool'}, - 'key': {'key': 'key', 'type': 'JsonWebKey'}, - 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(KeyImportParameters, self).__init__(**kwargs) - self.hsm = kwargs.get('hsm', None) - self.key = kwargs.get('key', None) - self.key_attributes = kwargs.get('key_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_import_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_import_parameters_py3.py deleted file mode 100644 index 70fe0453dea2..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_import_parameters_py3.py +++ /dev/null @@ -1,46 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyImportParameters(Model): - """The key import parameters. - - All required parameters must be populated in order to send to Azure. - - :param hsm: Whether to import as a hardware key (HSM) or software key. - :type hsm: bool - :param key: Required. The Json web key - :type key: ~azure.keyvault.v7_0.models.JsonWebKey - :param key_attributes: The key management attributes. - :type key_attributes: ~azure.keyvault.v7_0.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'key': {'required': True}, - } - - _attribute_map = { - 'hsm': {'key': 'Hsm', 'type': 'bool'}, - 'key': {'key': 'key', 'type': 'JsonWebKey'}, - 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, key, hsm: bool=None, key_attributes=None, tags=None, **kwargs) -> None: - super(KeyImportParameters, self).__init__(**kwargs) - self.hsm = hsm - self.key = key - self.key_attributes = key_attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_item.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_item.py deleted file mode 100644 index ec97da0ea370..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_item.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyItem(Model): - """The key item containing key metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param kid: Key identifier. - :type kid: str - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.v7_0.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'kid': {'key': 'kid', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, **kwargs): - super(KeyItem, self).__init__(**kwargs) - self.kid = kwargs.get('kid', None) - self.attributes = kwargs.get('attributes', None) - self.tags = kwargs.get('tags', None) - self.managed = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_item_paged.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_item_paged.py deleted file mode 100644 index 48e7fc05e277..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.paging import Paged - - -class KeyItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`KeyItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[KeyItem]'} - } - - def __init__(self, *args, **kwargs): - - super(KeyItemPaged, self).__init__(*args, **kwargs) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_item_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_item_py3.py deleted file mode 100644 index 5addb549325e..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_item_py3.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyItem(Model): - """The key item containing key metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param kid: Key identifier. - :type kid: str - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.v7_0.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'kid': {'key': 'kid', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, *, kid: str=None, attributes=None, tags=None, **kwargs) -> None: - super(KeyItem, self).__init__(**kwargs) - self.kid = kid - self.attributes = attributes - self.tags = tags - self.managed = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_operation_result.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_operation_result.py deleted file mode 100644 index 577326dcf54c..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_operation_result.py +++ /dev/null @@ -1,40 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyOperationResult(Model): - """The key operation result. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar kid: Key identifier - :vartype kid: str - :ivar result: - :vartype result: bytes - """ - - _validation = { - 'kid': {'readonly': True}, - 'result': {'readonly': True}, - } - - _attribute_map = { - 'kid': {'key': 'kid', 'type': 'str'}, - 'result': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(KeyOperationResult, self).__init__(**kwargs) - self.kid = None - self.result = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_operation_result_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_operation_result_py3.py deleted file mode 100644 index 82cd8de63331..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_operation_result_py3.py +++ /dev/null @@ -1,40 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyOperationResult(Model): - """The key operation result. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar kid: Key identifier - :vartype kid: str - :ivar result: - :vartype result: bytes - """ - - _validation = { - 'kid': {'readonly': True}, - 'result': {'readonly': True}, - } - - _attribute_map = { - 'kid': {'key': 'kid', 'type': 'str'}, - 'result': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs) -> None: - super(KeyOperationResult, self).__init__(**kwargs) - self.kid = None - self.result = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_operations_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_operations_parameters.py deleted file mode 100644 index 9ce91200d920..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_operations_parameters.py +++ /dev/null @@ -1,41 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyOperationsParameters(Model): - """The key operations parameters. - - All required parameters must be populated in order to send to Azure. - - :param algorithm: Required. algorithm identifier. Possible values include: - 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' - :type algorithm: str or - ~azure.keyvault.v7_0.models.JsonWebKeyEncryptionAlgorithm - :param value: Required. - :type value: bytes - """ - - _validation = { - 'algorithm': {'required': True, 'min_length': 1}, - 'value': {'required': True}, - } - - _attribute_map = { - 'algorithm': {'key': 'alg', 'type': 'str'}, - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(KeyOperationsParameters, self).__init__(**kwargs) - self.algorithm = kwargs.get('algorithm', None) - self.value = kwargs.get('value', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_operations_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_operations_parameters_py3.py deleted file mode 100644 index 2f88b1f4d24c..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_operations_parameters_py3.py +++ /dev/null @@ -1,41 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyOperationsParameters(Model): - """The key operations parameters. - - All required parameters must be populated in order to send to Azure. - - :param algorithm: Required. algorithm identifier. Possible values include: - 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' - :type algorithm: str or - ~azure.keyvault.v7_0.models.JsonWebKeyEncryptionAlgorithm - :param value: Required. - :type value: bytes - """ - - _validation = { - 'algorithm': {'required': True, 'min_length': 1}, - 'value': {'required': True}, - } - - _attribute_map = { - 'algorithm': {'key': 'alg', 'type': 'str'}, - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, *, algorithm, value: bytes, **kwargs) -> None: - super(KeyOperationsParameters, self).__init__(**kwargs) - self.algorithm = algorithm - self.value = value diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_properties.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_properties.py deleted file mode 100644 index 23f6ffe746bb..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_properties.py +++ /dev/null @@ -1,49 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyProperties(Model): - """Properties of the key pair backing a certificate. - - :param exportable: Indicates if the private key can be exported. - :type exportable: bool - :param key_type: The type of key pair to be used for the certificate. - Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', 'oct' - :type key_type: str or ~azure.keyvault.v7_0.models.JsonWebKeyType - :param key_size: The key size in bits. For example: 2048, 3072, or 4096 - for RSA. - :type key_size: int - :param reuse_key: Indicates if the same key pair will be used on - certificate renewal. - :type reuse_key: bool - :param curve: Elliptic curve name. For valid values, see - JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', - 'P-256K' - :type curve: str or ~azure.keyvault.v7_0.models.JsonWebKeyCurveName - """ - - _attribute_map = { - 'exportable': {'key': 'exportable', 'type': 'bool'}, - 'key_type': {'key': 'kty', 'type': 'str'}, - 'key_size': {'key': 'key_size', 'type': 'int'}, - 'reuse_key': {'key': 'reuse_key', 'type': 'bool'}, - 'curve': {'key': 'crv', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(KeyProperties, self).__init__(**kwargs) - self.exportable = kwargs.get('exportable', None) - self.key_type = kwargs.get('key_type', None) - self.key_size = kwargs.get('key_size', None) - self.reuse_key = kwargs.get('reuse_key', None) - self.curve = kwargs.get('curve', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_properties_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_properties_py3.py deleted file mode 100644 index 8a384cbf4ac5..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_properties_py3.py +++ /dev/null @@ -1,49 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyProperties(Model): - """Properties of the key pair backing a certificate. - - :param exportable: Indicates if the private key can be exported. - :type exportable: bool - :param key_type: The type of key pair to be used for the certificate. - Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', 'oct' - :type key_type: str or ~azure.keyvault.v7_0.models.JsonWebKeyType - :param key_size: The key size in bits. For example: 2048, 3072, or 4096 - for RSA. - :type key_size: int - :param reuse_key: Indicates if the same key pair will be used on - certificate renewal. - :type reuse_key: bool - :param curve: Elliptic curve name. For valid values, see - JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', - 'P-256K' - :type curve: str or ~azure.keyvault.v7_0.models.JsonWebKeyCurveName - """ - - _attribute_map = { - 'exportable': {'key': 'exportable', 'type': 'bool'}, - 'key_type': {'key': 'kty', 'type': 'str'}, - 'key_size': {'key': 'key_size', 'type': 'int'}, - 'reuse_key': {'key': 'reuse_key', 'type': 'bool'}, - 'curve': {'key': 'crv', 'type': 'str'}, - } - - def __init__(self, *, exportable: bool=None, key_type=None, key_size: int=None, reuse_key: bool=None, curve=None, **kwargs) -> None: - super(KeyProperties, self).__init__(**kwargs) - self.exportable = exportable - self.key_type = key_type - self.key_size = key_size - self.reuse_key = reuse_key - self.curve = curve diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_restore_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_restore_parameters.py deleted file mode 100644 index 7594a7af2833..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_restore_parameters.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyRestoreParameters(Model): - """The key restore parameters. - - All required parameters must be populated in order to send to Azure. - - :param key_bundle_backup: Required. The backup blob associated with a key - bundle. - :type key_bundle_backup: bytes - """ - - _validation = { - 'key_bundle_backup': {'required': True}, - } - - _attribute_map = { - 'key_bundle_backup': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(KeyRestoreParameters, self).__init__(**kwargs) - self.key_bundle_backup = kwargs.get('key_bundle_backup', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_restore_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_restore_parameters_py3.py deleted file mode 100644 index cf74e5904178..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_restore_parameters_py3.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyRestoreParameters(Model): - """The key restore parameters. - - All required parameters must be populated in order to send to Azure. - - :param key_bundle_backup: Required. The backup blob associated with a key - bundle. - :type key_bundle_backup: bytes - """ - - _validation = { - 'key_bundle_backup': {'required': True}, - } - - _attribute_map = { - 'key_bundle_backup': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, *, key_bundle_backup: bytes, **kwargs) -> None: - super(KeyRestoreParameters, self).__init__(**kwargs) - self.key_bundle_backup = key_bundle_backup diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_sign_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_sign_parameters.py deleted file mode 100644 index eae17c52667e..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_sign_parameters.py +++ /dev/null @@ -1,44 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeySignParameters(Model): - """The key operations parameters. - - All required parameters must be populated in order to send to Azure. - - :param algorithm: Required. The signing/verification algorithm identifier. - For more information on possible algorithm types, see - JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', 'PS384', - 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', - 'ES256K' - :type algorithm: str or - ~azure.keyvault.v7_0.models.JsonWebKeySignatureAlgorithm - :param value: Required. - :type value: bytes - """ - - _validation = { - 'algorithm': {'required': True, 'min_length': 1}, - 'value': {'required': True}, - } - - _attribute_map = { - 'algorithm': {'key': 'alg', 'type': 'str'}, - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(KeySignParameters, self).__init__(**kwargs) - self.algorithm = kwargs.get('algorithm', None) - self.value = kwargs.get('value', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_sign_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_sign_parameters_py3.py deleted file mode 100644 index 518ee27dbe13..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_sign_parameters_py3.py +++ /dev/null @@ -1,44 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeySignParameters(Model): - """The key operations parameters. - - All required parameters must be populated in order to send to Azure. - - :param algorithm: Required. The signing/verification algorithm identifier. - For more information on possible algorithm types, see - JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', 'PS384', - 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', - 'ES256K' - :type algorithm: str or - ~azure.keyvault.v7_0.models.JsonWebKeySignatureAlgorithm - :param value: Required. - :type value: bytes - """ - - _validation = { - 'algorithm': {'required': True, 'min_length': 1}, - 'value': {'required': True}, - } - - _attribute_map = { - 'algorithm': {'key': 'alg', 'type': 'str'}, - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, *, algorithm, value: bytes, **kwargs) -> None: - super(KeySignParameters, self).__init__(**kwargs) - self.algorithm = algorithm - self.value = value diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_update_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_update_parameters.py deleted file mode 100644 index ca0d78837954..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_update_parameters.py +++ /dev/null @@ -1,38 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyUpdateParameters(Model): - """The key update parameters. - - :param key_ops: Json web key operations. For more information on possible - key operations, see JsonWebKeyOperation. - :type key_ops: list[str or - ~azure.keyvault.v7_0.models.JsonWebKeyOperation] - :param key_attributes: - :type key_attributes: ~azure.keyvault.v7_0.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'key_ops': {'key': 'key_ops', 'type': '[str]'}, - 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(KeyUpdateParameters, self).__init__(**kwargs) - self.key_ops = kwargs.get('key_ops', None) - self.key_attributes = kwargs.get('key_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_update_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_update_parameters_py3.py deleted file mode 100644 index 4204bf2cebc1..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_update_parameters_py3.py +++ /dev/null @@ -1,38 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyUpdateParameters(Model): - """The key update parameters. - - :param key_ops: Json web key operations. For more information on possible - key operations, see JsonWebKeyOperation. - :type key_ops: list[str or - ~azure.keyvault.v7_0.models.JsonWebKeyOperation] - :param key_attributes: - :type key_attributes: ~azure.keyvault.v7_0.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'key_ops': {'key': 'key_ops', 'type': '[str]'}, - 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, key_ops=None, key_attributes=None, tags=None, **kwargs) -> None: - super(KeyUpdateParameters, self).__init__(**kwargs) - self.key_ops = key_ops - self.key_attributes = key_attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_vault_client_enums.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_vault_client_enums.py deleted file mode 100644 index 046a304e990a..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_vault_client_enums.py +++ /dev/null @@ -1,94 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from enum import Enum - - -class JsonWebKeyType(str, Enum): - - ec = "EC" #: Elliptic Curve. - ec_hsm = "EC-HSM" #: Elliptic Curve with a private key which is not exportable from the HSM. - rsa = "RSA" #: RSA (https://tools.ietf.org/html/rfc3447) - rsa_hsm = "RSA-HSM" #: RSA with a private key which is not exportable from the HSM. - oct = "oct" #: Octet sequence (used to represent symmetric keys) - - -class JsonWebKeyCurveName(str, Enum): - - p_256 = "P-256" #: The NIST P-256 elliptic curve, AKA SECG curve SECP256R1. - p_384 = "P-384" #: The NIST P-384 elliptic curve, AKA SECG curve SECP384R1. - p_521 = "P-521" #: The NIST P-521 elliptic curve, AKA SECG curve SECP521R1. - p_256_k = "P-256K" #: The SECG SECP256K1 elliptic curve. - - -class DeletionRecoveryLevel(str, Enum): - - purgeable = "Purgeable" - recoverable_purgeable = "Recoverable+Purgeable" - recoverable = "Recoverable" - recoverable_protected_subscription = "Recoverable+ProtectedSubscription" - - -class KeyUsageType(str, Enum): - - digital_signature = "digitalSignature" - non_repudiation = "nonRepudiation" - key_encipherment = "keyEncipherment" - data_encipherment = "dataEncipherment" - key_agreement = "keyAgreement" - key_cert_sign = "keyCertSign" - c_rl_sign = "cRLSign" - encipher_only = "encipherOnly" - decipher_only = "decipherOnly" - - -class ActionType(str, Enum): - - email_contacts = "EmailContacts" - auto_renew = "AutoRenew" - - -class JsonWebKeyOperation(str, Enum): - - encrypt = "encrypt" - decrypt = "decrypt" - sign = "sign" - verify = "verify" - wrap_key = "wrapKey" - unwrap_key = "unwrapKey" - - -class JsonWebKeyEncryptionAlgorithm(str, Enum): - - rsa_oaep = "RSA-OAEP" - rsa_oaep_256 = "RSA-OAEP-256" - rsa1_5 = "RSA1_5" - - -class JsonWebKeySignatureAlgorithm(str, Enum): - - ps256 = "PS256" #: RSASSA-PSS using SHA-256 and MGF1 with SHA-256, as described in https://tools.ietf.org/html/rfc7518 - ps384 = "PS384" #: RSASSA-PSS using SHA-384 and MGF1 with SHA-384, as described in https://tools.ietf.org/html/rfc7518 - ps512 = "PS512" #: RSASSA-PSS using SHA-512 and MGF1 with SHA-512, as described in https://tools.ietf.org/html/rfc7518 - rs256 = "RS256" #: RSASSA-PKCS1-v1_5 using SHA-256, as described in https://tools.ietf.org/html/rfc7518 - rs384 = "RS384" #: RSASSA-PKCS1-v1_5 using SHA-384, as described in https://tools.ietf.org/html/rfc7518 - rs512 = "RS512" #: RSASSA-PKCS1-v1_5 using SHA-512, as described in https://tools.ietf.org/html/rfc7518 - rsnull = "RSNULL" #: Reserved - es256 = "ES256" #: ECDSA using P-256 and SHA-256, as described in https://tools.ietf.org/html/rfc7518. - es384 = "ES384" #: ECDSA using P-384 and SHA-384, as described in https://tools.ietf.org/html/rfc7518 - es512 = "ES512" #: ECDSA using P-521 and SHA-512, as described in https://tools.ietf.org/html/rfc7518 - es256_k = "ES256K" #: ECDSA using P-256K and SHA-256, as described in https://tools.ietf.org/html/rfc7518 - - -class SasTokenType(str, Enum): - - account = "account" - service = "service" diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_vault_error.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_vault_error.py deleted file mode 100644 index 653e201084bf..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_vault_error.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model -from msrest.exceptions import HttpOperationError - - -class KeyVaultError(Model): - """The key vault error exception. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar error: - :vartype error: ~azure.keyvault.v7_0.models.Error - """ - - _validation = { - 'error': {'readonly': True}, - } - - _attribute_map = { - 'error': {'key': 'error', 'type': 'Error'}, - } - - def __init__(self, **kwargs): - super(KeyVaultError, self).__init__(**kwargs) - self.error = None - - -class KeyVaultErrorException(HttpOperationError): - """Server responsed with exception of type: 'KeyVaultError'. - - :param deserialize: A deserializer - :param response: Server response to be deserialized. - """ - - def __init__(self, deserialize, response, *args): - - super(KeyVaultErrorException, self).__init__(deserialize, response, 'KeyVaultError', *args) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_vault_error_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_vault_error_py3.py deleted file mode 100644 index 81c9da53d826..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_vault_error_py3.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model -from msrest.exceptions import HttpOperationError - - -class KeyVaultError(Model): - """The key vault error exception. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar error: - :vartype error: ~azure.keyvault.v7_0.models.Error - """ - - _validation = { - 'error': {'readonly': True}, - } - - _attribute_map = { - 'error': {'key': 'error', 'type': 'Error'}, - } - - def __init__(self, **kwargs) -> None: - super(KeyVaultError, self).__init__(**kwargs) - self.error = None - - -class KeyVaultErrorException(HttpOperationError): - """Server responsed with exception of type: 'KeyVaultError'. - - :param deserialize: A deserializer - :param response: Server response to be deserialized. - """ - - def __init__(self, deserialize, response, *args): - - super(KeyVaultErrorException, self).__init__(deserialize, response, 'KeyVaultError', *args) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_verify_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_verify_parameters.py deleted file mode 100644 index 70f4ff6d1dbd..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_verify_parameters.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyVerifyParameters(Model): - """The key verify parameters. - - All required parameters must be populated in order to send to Azure. - - :param algorithm: Required. The signing/verification algorithm. For more - information on possible algorithm types, see JsonWebKeySignatureAlgorithm. - Possible values include: 'PS256', 'PS384', 'PS512', 'RS256', 'RS384', - 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', 'ES256K' - :type algorithm: str or - ~azure.keyvault.v7_0.models.JsonWebKeySignatureAlgorithm - :param digest: Required. The digest used for signing. - :type digest: bytes - :param signature: Required. The signature to be verified. - :type signature: bytes - """ - - _validation = { - 'algorithm': {'required': True, 'min_length': 1}, - 'digest': {'required': True}, - 'signature': {'required': True}, - } - - _attribute_map = { - 'algorithm': {'key': 'alg', 'type': 'str'}, - 'digest': {'key': 'digest', 'type': 'base64'}, - 'signature': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(KeyVerifyParameters, self).__init__(**kwargs) - self.algorithm = kwargs.get('algorithm', None) - self.digest = kwargs.get('digest', None) - self.signature = kwargs.get('signature', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_verify_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_verify_parameters_py3.py deleted file mode 100644 index 8d8a6fee6b3d..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_verify_parameters_py3.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyVerifyParameters(Model): - """The key verify parameters. - - All required parameters must be populated in order to send to Azure. - - :param algorithm: Required. The signing/verification algorithm. For more - information on possible algorithm types, see JsonWebKeySignatureAlgorithm. - Possible values include: 'PS256', 'PS384', 'PS512', 'RS256', 'RS384', - 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', 'ES256K' - :type algorithm: str or - ~azure.keyvault.v7_0.models.JsonWebKeySignatureAlgorithm - :param digest: Required. The digest used for signing. - :type digest: bytes - :param signature: Required. The signature to be verified. - :type signature: bytes - """ - - _validation = { - 'algorithm': {'required': True, 'min_length': 1}, - 'digest': {'required': True}, - 'signature': {'required': True}, - } - - _attribute_map = { - 'algorithm': {'key': 'alg', 'type': 'str'}, - 'digest': {'key': 'digest', 'type': 'base64'}, - 'signature': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, *, algorithm, digest: bytes, signature: bytes, **kwargs) -> None: - super(KeyVerifyParameters, self).__init__(**kwargs) - self.algorithm = algorithm - self.digest = digest - self.signature = signature diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_verify_result.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_verify_result.py deleted file mode 100644 index baffb85589cc..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_verify_result.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyVerifyResult(Model): - """The key verify result. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar value: True if the signature is verified, otherwise false. - :vartype value: bool - """ - - _validation = { - 'value': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'bool'}, - } - - def __init__(self, **kwargs): - super(KeyVerifyResult, self).__init__(**kwargs) - self.value = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_verify_result_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_verify_result_py3.py deleted file mode 100644 index 33a7a7ebaefa..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/key_verify_result_py3.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyVerifyResult(Model): - """The key verify result. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar value: True if the signature is verified, otherwise false. - :vartype value: bool - """ - - _validation = { - 'value': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'bool'}, - } - - def __init__(self, **kwargs) -> None: - super(KeyVerifyResult, self).__init__(**kwargs) - self.value = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/lifetime_action.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/lifetime_action.py deleted file mode 100644 index a999fb34f89c..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/lifetime_action.py +++ /dev/null @@ -1,33 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class LifetimeAction(Model): - """Action and its trigger that will be performed by Key Vault over the - lifetime of a certificate. - - :param trigger: The condition that will execute the action. - :type trigger: ~azure.keyvault.v7_0.models.Trigger - :param action: The action that will be executed. - :type action: ~azure.keyvault.v7_0.models.Action - """ - - _attribute_map = { - 'trigger': {'key': 'trigger', 'type': 'Trigger'}, - 'action': {'key': 'action', 'type': 'Action'}, - } - - def __init__(self, **kwargs): - super(LifetimeAction, self).__init__(**kwargs) - self.trigger = kwargs.get('trigger', None) - self.action = kwargs.get('action', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/lifetime_action_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/lifetime_action_py3.py deleted file mode 100644 index 2144c9d19dd2..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/lifetime_action_py3.py +++ /dev/null @@ -1,33 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class LifetimeAction(Model): - """Action and its trigger that will be performed by Key Vault over the - lifetime of a certificate. - - :param trigger: The condition that will execute the action. - :type trigger: ~azure.keyvault.v7_0.models.Trigger - :param action: The action that will be executed. - :type action: ~azure.keyvault.v7_0.models.Action - """ - - _attribute_map = { - 'trigger': {'key': 'trigger', 'type': 'Trigger'}, - 'action': {'key': 'action', 'type': 'Action'}, - } - - def __init__(self, *, trigger=None, action=None, **kwargs) -> None: - super(LifetimeAction, self).__init__(**kwargs) - self.trigger = trigger - self.action = action diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/organization_details.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/organization_details.py deleted file mode 100644 index 3956fdfc3e2f..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/organization_details.py +++ /dev/null @@ -1,33 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class OrganizationDetails(Model): - """Details of the organization of the certificate issuer. - - :param id: Id of the organization. - :type id: str - :param admin_details: Details of the organization administrator. - :type admin_details: - list[~azure.keyvault.v7_0.models.AdministratorDetails] - """ - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'admin_details': {'key': 'admin_details', 'type': '[AdministratorDetails]'}, - } - - def __init__(self, **kwargs): - super(OrganizationDetails, self).__init__(**kwargs) - self.id = kwargs.get('id', None) - self.admin_details = kwargs.get('admin_details', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/organization_details_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/organization_details_py3.py deleted file mode 100644 index bd3893310a87..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/organization_details_py3.py +++ /dev/null @@ -1,33 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class OrganizationDetails(Model): - """Details of the organization of the certificate issuer. - - :param id: Id of the organization. - :type id: str - :param admin_details: Details of the organization administrator. - :type admin_details: - list[~azure.keyvault.v7_0.models.AdministratorDetails] - """ - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'admin_details': {'key': 'admin_details', 'type': '[AdministratorDetails]'}, - } - - def __init__(self, *, id: str=None, admin_details=None, **kwargs) -> None: - super(OrganizationDetails, self).__init__(**kwargs) - self.id = id - self.admin_details = admin_details diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/pending_certificate_signing_request_result.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/pending_certificate_signing_request_result.py deleted file mode 100644 index 2bea9bfcdd61..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/pending_certificate_signing_request_result.py +++ /dev/null @@ -1,36 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class PendingCertificateSigningRequestResult(Model): - """The pending certificate signing request result. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar value: The pending certificate signing request as Base64 encoded - string. - :vartype value: str - """ - - _validation = { - 'value': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(PendingCertificateSigningRequestResult, self).__init__(**kwargs) - self.value = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/pending_certificate_signing_request_result_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/pending_certificate_signing_request_result_py3.py deleted file mode 100644 index 2895d5a77a03..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/pending_certificate_signing_request_result_py3.py +++ /dev/null @@ -1,36 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class PendingCertificateSigningRequestResult(Model): - """The pending certificate signing request result. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar value: The pending certificate signing request as Base64 encoded - string. - :vartype value: str - """ - - _validation = { - 'value': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'str'}, - } - - def __init__(self, **kwargs) -> None: - super(PendingCertificateSigningRequestResult, self).__init__(**kwargs) - self.value = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_attributes.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_attributes.py deleted file mode 100644 index 3b99ef90d6d1..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_attributes.py +++ /dev/null @@ -1,56 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionAttributes(Model): - """The SAS definition management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: the enabled state of the object. - :type enabled: bool - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for SAS definitions in the current vault. If it contains - 'Purgeable' the SAS definition can be permanently deleted by a privileged - user; otherwise, only the system can purge the SAS definition, at the end - of the retention interval. Possible values include: 'Purgeable', - 'Recoverable+Purgeable', 'Recoverable', - 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.v7_0.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(SasDefinitionAttributes, self).__init__(**kwargs) - self.enabled = kwargs.get('enabled', None) - self.created = None - self.updated = None - self.recovery_level = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_attributes_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_attributes_py3.py deleted file mode 100644 index 1ef307224d33..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_attributes_py3.py +++ /dev/null @@ -1,56 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionAttributes(Model): - """The SAS definition management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: the enabled state of the object. - :type enabled: bool - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for SAS definitions in the current vault. If it contains - 'Purgeable' the SAS definition can be permanently deleted by a privileged - user; otherwise, only the system can purge the SAS definition, at the end - of the retention interval. Possible values include: 'Purgeable', - 'Recoverable+Purgeable', 'Recoverable', - 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.v7_0.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, *, enabled: bool=None, **kwargs) -> None: - super(SasDefinitionAttributes, self).__init__(**kwargs) - self.enabled = enabled - self.created = None - self.updated = None - self.recovery_level = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_bundle.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_bundle.py deleted file mode 100644 index 79c6e69a1aa9..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_bundle.py +++ /dev/null @@ -1,70 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionBundle(Model): - """A SAS definition bundle consists of key vault SAS definition details plus - its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The SAS definition id. - :vartype id: str - :ivar secret_id: Storage account SAS definition secret id. - :vartype secret_id: str - :ivar template_uri: The SAS definition token template signed with an - arbitrary key. Tokens created according to the SAS definition will have - the same properties as the template. - :vartype template_uri: str - :ivar sas_type: The type of SAS token the SAS definition will create. - Possible values include: 'account', 'service' - :vartype sas_type: str or ~azure.keyvault.v7_0.models.SasTokenType - :ivar validity_period: The validity period of SAS tokens created according - to the SAS definition. - :vartype validity_period: str - :ivar attributes: The SAS definition attributes. - :vartype attributes: ~azure.keyvault.v7_0.models.SasDefinitionAttributes - :ivar tags: Application specific metadata in the form of key-value pairs - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'secret_id': {'readonly': True}, - 'template_uri': {'readonly': True}, - 'sas_type': {'readonly': True}, - 'validity_period': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'secret_id': {'key': 'sid', 'type': 'str'}, - 'template_uri': {'key': 'templateUri', 'type': 'str'}, - 'sas_type': {'key': 'sasType', 'type': 'str'}, - 'validity_period': {'key': 'validityPeriod', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(SasDefinitionBundle, self).__init__(**kwargs) - self.id = None - self.secret_id = None - self.template_uri = None - self.sas_type = None - self.validity_period = None - self.attributes = None - self.tags = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_bundle_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_bundle_py3.py deleted file mode 100644 index c2f87f40478a..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_bundle_py3.py +++ /dev/null @@ -1,70 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionBundle(Model): - """A SAS definition bundle consists of key vault SAS definition details plus - its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The SAS definition id. - :vartype id: str - :ivar secret_id: Storage account SAS definition secret id. - :vartype secret_id: str - :ivar template_uri: The SAS definition token template signed with an - arbitrary key. Tokens created according to the SAS definition will have - the same properties as the template. - :vartype template_uri: str - :ivar sas_type: The type of SAS token the SAS definition will create. - Possible values include: 'account', 'service' - :vartype sas_type: str or ~azure.keyvault.v7_0.models.SasTokenType - :ivar validity_period: The validity period of SAS tokens created according - to the SAS definition. - :vartype validity_period: str - :ivar attributes: The SAS definition attributes. - :vartype attributes: ~azure.keyvault.v7_0.models.SasDefinitionAttributes - :ivar tags: Application specific metadata in the form of key-value pairs - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'secret_id': {'readonly': True}, - 'template_uri': {'readonly': True}, - 'sas_type': {'readonly': True}, - 'validity_period': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'secret_id': {'key': 'sid', 'type': 'str'}, - 'template_uri': {'key': 'templateUri', 'type': 'str'}, - 'sas_type': {'key': 'sasType', 'type': 'str'}, - 'validity_period': {'key': 'validityPeriod', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs) -> None: - super(SasDefinitionBundle, self).__init__(**kwargs) - self.id = None - self.secret_id = None - self.template_uri = None - self.sas_type = None - self.validity_period = None - self.attributes = None - self.tags = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_create_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_create_parameters.py deleted file mode 100644 index 246d237537b9..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_create_parameters.py +++ /dev/null @@ -1,57 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionCreateParameters(Model): - """The SAS definition create parameters. - - All required parameters must be populated in order to send to Azure. - - :param template_uri: Required. The SAS definition token template signed - with an arbitrary key. Tokens created according to the SAS definition - will have the same properties as the template. - :type template_uri: str - :param sas_type: Required. The type of SAS token the SAS definition will - create. Possible values include: 'account', 'service' - :type sas_type: str or ~azure.keyvault.v7_0.models.SasTokenType - :param validity_period: Required. The validity period of SAS tokens - created according to the SAS definition. - :type validity_period: str - :param sas_definition_attributes: The attributes of the SAS definition. - :type sas_definition_attributes: - ~azure.keyvault.v7_0.models.SasDefinitionAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'template_uri': {'required': True}, - 'sas_type': {'required': True}, - 'validity_period': {'required': True}, - } - - _attribute_map = { - 'template_uri': {'key': 'templateUri', 'type': 'str'}, - 'sas_type': {'key': 'sasType', 'type': 'str'}, - 'validity_period': {'key': 'validityPeriod', 'type': 'str'}, - 'sas_definition_attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(SasDefinitionCreateParameters, self).__init__(**kwargs) - self.template_uri = kwargs.get('template_uri', None) - self.sas_type = kwargs.get('sas_type', None) - self.validity_period = kwargs.get('validity_period', None) - self.sas_definition_attributes = kwargs.get('sas_definition_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_create_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_create_parameters_py3.py deleted file mode 100644 index 1245a78df685..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_create_parameters_py3.py +++ /dev/null @@ -1,57 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionCreateParameters(Model): - """The SAS definition create parameters. - - All required parameters must be populated in order to send to Azure. - - :param template_uri: Required. The SAS definition token template signed - with an arbitrary key. Tokens created according to the SAS definition - will have the same properties as the template. - :type template_uri: str - :param sas_type: Required. The type of SAS token the SAS definition will - create. Possible values include: 'account', 'service' - :type sas_type: str or ~azure.keyvault.v7_0.models.SasTokenType - :param validity_period: Required. The validity period of SAS tokens - created according to the SAS definition. - :type validity_period: str - :param sas_definition_attributes: The attributes of the SAS definition. - :type sas_definition_attributes: - ~azure.keyvault.v7_0.models.SasDefinitionAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'template_uri': {'required': True}, - 'sas_type': {'required': True}, - 'validity_period': {'required': True}, - } - - _attribute_map = { - 'template_uri': {'key': 'templateUri', 'type': 'str'}, - 'sas_type': {'key': 'sasType', 'type': 'str'}, - 'validity_period': {'key': 'validityPeriod', 'type': 'str'}, - 'sas_definition_attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, template_uri: str, sas_type, validity_period: str, sas_definition_attributes=None, tags=None, **kwargs) -> None: - super(SasDefinitionCreateParameters, self).__init__(**kwargs) - self.template_uri = template_uri - self.sas_type = sas_type - self.validity_period = validity_period - self.sas_definition_attributes = sas_definition_attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_item.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_item.py deleted file mode 100644 index 31693ad2818e..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_item.py +++ /dev/null @@ -1,50 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionItem(Model): - """The SAS definition item containing storage SAS definition metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The storage SAS identifier. - :vartype id: str - :ivar secret_id: The storage account SAS definition secret id. - :vartype secret_id: str - :ivar attributes: The SAS definition management attributes. - :vartype attributes: ~azure.keyvault.v7_0.models.SasDefinitionAttributes - :ivar tags: Application specific metadata in the form of key-value pairs. - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'secret_id': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'secret_id': {'key': 'sid', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(SasDefinitionItem, self).__init__(**kwargs) - self.id = None - self.secret_id = None - self.attributes = None - self.tags = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_item_paged.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_item_paged.py deleted file mode 100644 index 5ff6be6a7287..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.paging import Paged - - -class SasDefinitionItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`SasDefinitionItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[SasDefinitionItem]'} - } - - def __init__(self, *args, **kwargs): - - super(SasDefinitionItemPaged, self).__init__(*args, **kwargs) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_item_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_item_py3.py deleted file mode 100644 index 2d42ed555538..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_item_py3.py +++ /dev/null @@ -1,50 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionItem(Model): - """The SAS definition item containing storage SAS definition metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The storage SAS identifier. - :vartype id: str - :ivar secret_id: The storage account SAS definition secret id. - :vartype secret_id: str - :ivar attributes: The SAS definition management attributes. - :vartype attributes: ~azure.keyvault.v7_0.models.SasDefinitionAttributes - :ivar tags: Application specific metadata in the form of key-value pairs. - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'secret_id': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'secret_id': {'key': 'sid', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs) -> None: - super(SasDefinitionItem, self).__init__(**kwargs) - self.id = None - self.secret_id = None - self.attributes = None - self.tags = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_update_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_update_parameters.py deleted file mode 100644 index 480e75a9402d..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_update_parameters.py +++ /dev/null @@ -1,49 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionUpdateParameters(Model): - """The SAS definition update parameters. - - :param template_uri: The SAS definition token template signed with an - arbitrary key. Tokens created according to the SAS definition will have - the same properties as the template. - :type template_uri: str - :param sas_type: The type of SAS token the SAS definition will create. - Possible values include: 'account', 'service' - :type sas_type: str or ~azure.keyvault.v7_0.models.SasTokenType - :param validity_period: The validity period of SAS tokens created - according to the SAS definition. - :type validity_period: str - :param sas_definition_attributes: The attributes of the SAS definition. - :type sas_definition_attributes: - ~azure.keyvault.v7_0.models.SasDefinitionAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'template_uri': {'key': 'templateUri', 'type': 'str'}, - 'sas_type': {'key': 'sasType', 'type': 'str'}, - 'validity_period': {'key': 'validityPeriod', 'type': 'str'}, - 'sas_definition_attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(SasDefinitionUpdateParameters, self).__init__(**kwargs) - self.template_uri = kwargs.get('template_uri', None) - self.sas_type = kwargs.get('sas_type', None) - self.validity_period = kwargs.get('validity_period', None) - self.sas_definition_attributes = kwargs.get('sas_definition_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_update_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_update_parameters_py3.py deleted file mode 100644 index 3ed375792dc9..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_update_parameters_py3.py +++ /dev/null @@ -1,49 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionUpdateParameters(Model): - """The SAS definition update parameters. - - :param template_uri: The SAS definition token template signed with an - arbitrary key. Tokens created according to the SAS definition will have - the same properties as the template. - :type template_uri: str - :param sas_type: The type of SAS token the SAS definition will create. - Possible values include: 'account', 'service' - :type sas_type: str or ~azure.keyvault.v7_0.models.SasTokenType - :param validity_period: The validity period of SAS tokens created - according to the SAS definition. - :type validity_period: str - :param sas_definition_attributes: The attributes of the SAS definition. - :type sas_definition_attributes: - ~azure.keyvault.v7_0.models.SasDefinitionAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'template_uri': {'key': 'templateUri', 'type': 'str'}, - 'sas_type': {'key': 'sasType', 'type': 'str'}, - 'validity_period': {'key': 'validityPeriod', 'type': 'str'}, - 'sas_definition_attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, template_uri: str=None, sas_type=None, validity_period: str=None, sas_definition_attributes=None, tags=None, **kwargs) -> None: - super(SasDefinitionUpdateParameters, self).__init__(**kwargs) - self.template_uri = template_uri - self.sas_type = sas_type - self.validity_period = validity_period - self.sas_definition_attributes = sas_definition_attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_attributes.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_attributes.py deleted file mode 100644 index 9e84342bd4a6..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_attributes.py +++ /dev/null @@ -1,58 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .attributes import Attributes - - -class SecretAttributes(Attributes): - """The secret management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the object is enabled. - :type enabled: bool - :param not_before: Not before date in UTC. - :type not_before: datetime - :param expires: Expiry date in UTC. - :type expires: datetime - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for secrets in the current vault. If it contains 'Purgeable', the - secret can be permanently deleted by a privileged user; otherwise, only - the system can purge the secret, at the end of the retention interval. - Possible values include: 'Purgeable', 'Recoverable+Purgeable', - 'Recoverable', 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.v7_0.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'not_before': {'key': 'nbf', 'type': 'unix-time'}, - 'expires': {'key': 'exp', 'type': 'unix-time'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(SecretAttributes, self).__init__(**kwargs) - self.recovery_level = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_attributes_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_attributes_py3.py deleted file mode 100644 index 5d96228788b2..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_attributes_py3.py +++ /dev/null @@ -1,58 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .attributes_py3 import Attributes - - -class SecretAttributes(Attributes): - """The secret management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the object is enabled. - :type enabled: bool - :param not_before: Not before date in UTC. - :type not_before: datetime - :param expires: Expiry date in UTC. - :type expires: datetime - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for secrets in the current vault. If it contains 'Purgeable', the - secret can be permanently deleted by a privileged user; otherwise, only - the system can purge the secret, at the end of the retention interval. - Possible values include: 'Purgeable', 'Recoverable+Purgeable', - 'Recoverable', 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.v7_0.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'not_before': {'key': 'nbf', 'type': 'unix-time'}, - 'expires': {'key': 'exp', 'type': 'unix-time'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, *, enabled: bool=None, not_before=None, expires=None, **kwargs) -> None: - super(SecretAttributes, self).__init__(enabled=enabled, not_before=not_before, expires=expires, **kwargs) - self.recovery_level = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_bundle.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_bundle.py deleted file mode 100644 index 80c3c2936875..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_bundle.py +++ /dev/null @@ -1,62 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretBundle(Model): - """A secret consisting of a value, id and its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param value: The secret value. - :type value: str - :param id: The secret id. - :type id: str - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.v7_0.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar kid: If this is a secret backing a KV certificate, then this field - specifies the corresponding key backing the KV certificate. - :vartype kid: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a secret backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'kid': {'readonly': True}, - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'str'}, - 'id': {'key': 'id', 'type': 'str'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, **kwargs): - super(SecretBundle, self).__init__(**kwargs) - self.value = kwargs.get('value', None) - self.id = kwargs.get('id', None) - self.content_type = kwargs.get('content_type', None) - self.attributes = kwargs.get('attributes', None) - self.tags = kwargs.get('tags', None) - self.kid = None - self.managed = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_bundle_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_bundle_py3.py deleted file mode 100644 index 1ea21449b64b..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_bundle_py3.py +++ /dev/null @@ -1,62 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretBundle(Model): - """A secret consisting of a value, id and its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param value: The secret value. - :type value: str - :param id: The secret id. - :type id: str - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.v7_0.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar kid: If this is a secret backing a KV certificate, then this field - specifies the corresponding key backing the KV certificate. - :vartype kid: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a secret backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'kid': {'readonly': True}, - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'str'}, - 'id': {'key': 'id', 'type': 'str'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, *, value: str=None, id: str=None, content_type: str=None, attributes=None, tags=None, **kwargs) -> None: - super(SecretBundle, self).__init__(**kwargs) - self.value = value - self.id = id - self.content_type = content_type - self.attributes = attributes - self.tags = tags - self.kid = None - self.managed = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_item.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_item.py deleted file mode 100644 index 5cd24113a895..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_item.py +++ /dev/null @@ -1,52 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretItem(Model): - """The secret item containing secret metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param id: Secret identifier. - :type id: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.v7_0.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param content_type: Type of the secret value such as a password. - :type content_type: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a key backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, **kwargs): - super(SecretItem, self).__init__(**kwargs) - self.id = kwargs.get('id', None) - self.attributes = kwargs.get('attributes', None) - self.tags = kwargs.get('tags', None) - self.content_type = kwargs.get('content_type', None) - self.managed = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_item_paged.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_item_paged.py deleted file mode 100644 index c203c4f853ec..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.paging import Paged - - -class SecretItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`SecretItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[SecretItem]'} - } - - def __init__(self, *args, **kwargs): - - super(SecretItemPaged, self).__init__(*args, **kwargs) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_item_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_item_py3.py deleted file mode 100644 index 3113cdb1b8a2..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_item_py3.py +++ /dev/null @@ -1,52 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretItem(Model): - """The secret item containing secret metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param id: Secret identifier. - :type id: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.v7_0.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param content_type: Type of the secret value such as a password. - :type content_type: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a key backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, *, id: str=None, attributes=None, tags=None, content_type: str=None, **kwargs) -> None: - super(SecretItem, self).__init__(**kwargs) - self.id = id - self.attributes = attributes - self.tags = tags - self.content_type = content_type - self.managed = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_properties.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_properties.py deleted file mode 100644 index 03794579e47c..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_properties.py +++ /dev/null @@ -1,28 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretProperties(Model): - """Properties of the key backing a certificate. - - :param content_type: The media type (MIME type). - :type content_type: str - """ - - _attribute_map = { - 'content_type': {'key': 'contentType', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(SecretProperties, self).__init__(**kwargs) - self.content_type = kwargs.get('content_type', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_properties_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_properties_py3.py deleted file mode 100644 index f071d84220b8..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_properties_py3.py +++ /dev/null @@ -1,28 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretProperties(Model): - """Properties of the key backing a certificate. - - :param content_type: The media type (MIME type). - :type content_type: str - """ - - _attribute_map = { - 'content_type': {'key': 'contentType', 'type': 'str'}, - } - - def __init__(self, *, content_type: str=None, **kwargs) -> None: - super(SecretProperties, self).__init__(**kwargs) - self.content_type = content_type diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_restore_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_restore_parameters.py deleted file mode 100644 index 9e34c4259edc..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_restore_parameters.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretRestoreParameters(Model): - """The secret restore parameters. - - All required parameters must be populated in order to send to Azure. - - :param secret_bundle_backup: Required. The backup blob associated with a - secret bundle. - :type secret_bundle_backup: bytes - """ - - _validation = { - 'secret_bundle_backup': {'required': True}, - } - - _attribute_map = { - 'secret_bundle_backup': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(SecretRestoreParameters, self).__init__(**kwargs) - self.secret_bundle_backup = kwargs.get('secret_bundle_backup', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_restore_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_restore_parameters_py3.py deleted file mode 100644 index 0c81a9b890aa..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_restore_parameters_py3.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretRestoreParameters(Model): - """The secret restore parameters. - - All required parameters must be populated in order to send to Azure. - - :param secret_bundle_backup: Required. The backup blob associated with a - secret bundle. - :type secret_bundle_backup: bytes - """ - - _validation = { - 'secret_bundle_backup': {'required': True}, - } - - _attribute_map = { - 'secret_bundle_backup': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, *, secret_bundle_backup: bytes, **kwargs) -> None: - super(SecretRestoreParameters, self).__init__(**kwargs) - self.secret_bundle_backup = secret_bundle_backup diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_set_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_set_parameters.py deleted file mode 100644 index 7922ff49d2fb..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_set_parameters.py +++ /dev/null @@ -1,46 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretSetParameters(Model): - """The secret set parameters. - - All required parameters must be populated in order to send to Azure. - - :param value: Required. The value of the secret. - :type value: str - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param content_type: Type of the secret value such as a password. - :type content_type: str - :param secret_attributes: The secret management attributes. - :type secret_attributes: ~azure.keyvault.v7_0.models.SecretAttributes - """ - - _validation = { - 'value': {'required': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'str'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'secret_attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - } - - def __init__(self, **kwargs): - super(SecretSetParameters, self).__init__(**kwargs) - self.value = kwargs.get('value', None) - self.tags = kwargs.get('tags', None) - self.content_type = kwargs.get('content_type', None) - self.secret_attributes = kwargs.get('secret_attributes', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_set_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_set_parameters_py3.py deleted file mode 100644 index 358e9f865c8e..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_set_parameters_py3.py +++ /dev/null @@ -1,46 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretSetParameters(Model): - """The secret set parameters. - - All required parameters must be populated in order to send to Azure. - - :param value: Required. The value of the secret. - :type value: str - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param content_type: Type of the secret value such as a password. - :type content_type: str - :param secret_attributes: The secret management attributes. - :type secret_attributes: ~azure.keyvault.v7_0.models.SecretAttributes - """ - - _validation = { - 'value': {'required': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'str'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'secret_attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - } - - def __init__(self, *, value: str, tags=None, content_type: str=None, secret_attributes=None, **kwargs) -> None: - super(SecretSetParameters, self).__init__(**kwargs) - self.value = value - self.tags = tags - self.content_type = content_type - self.secret_attributes = secret_attributes diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_update_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_update_parameters.py deleted file mode 100644 index 7dcf522b59e4..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_update_parameters.py +++ /dev/null @@ -1,36 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretUpdateParameters(Model): - """The secret update parameters. - - :param content_type: Type of the secret value such as a password. - :type content_type: str - :param secret_attributes: The secret management attributes. - :type secret_attributes: ~azure.keyvault.v7_0.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'secret_attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(SecretUpdateParameters, self).__init__(**kwargs) - self.content_type = kwargs.get('content_type', None) - self.secret_attributes = kwargs.get('secret_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_update_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_update_parameters_py3.py deleted file mode 100644 index 892189380b09..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/secret_update_parameters_py3.py +++ /dev/null @@ -1,36 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretUpdateParameters(Model): - """The secret update parameters. - - :param content_type: Type of the secret value such as a password. - :type content_type: str - :param secret_attributes: The secret management attributes. - :type secret_attributes: ~azure.keyvault.v7_0.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'secret_attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, content_type: str=None, secret_attributes=None, tags=None, **kwargs) -> None: - super(SecretUpdateParameters, self).__init__(**kwargs) - self.content_type = content_type - self.secret_attributes = secret_attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_attributes.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_attributes.py deleted file mode 100644 index e241b40cce29..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_attributes.py +++ /dev/null @@ -1,56 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountAttributes(Model): - """The storage account management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: the enabled state of the object. - :type enabled: bool - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for storage accounts in the current vault. If it contains - 'Purgeable' the storage account can be permanently deleted by a privileged - user; otherwise, only the system can purge the storage account, at the end - of the retention interval. Possible values include: 'Purgeable', - 'Recoverable+Purgeable', 'Recoverable', - 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.v7_0.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(StorageAccountAttributes, self).__init__(**kwargs) - self.enabled = kwargs.get('enabled', None) - self.created = None - self.updated = None - self.recovery_level = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_attributes_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_attributes_py3.py deleted file mode 100644 index 6db6639ed7a9..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_attributes_py3.py +++ /dev/null @@ -1,56 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountAttributes(Model): - """The storage account management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: the enabled state of the object. - :type enabled: bool - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for storage accounts in the current vault. If it contains - 'Purgeable' the storage account can be permanently deleted by a privileged - user; otherwise, only the system can purge the storage account, at the end - of the retention interval. Possible values include: 'Purgeable', - 'Recoverable+Purgeable', 'Recoverable', - 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.v7_0.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, *, enabled: bool=None, **kwargs) -> None: - super(StorageAccountAttributes, self).__init__(**kwargs) - self.enabled = enabled - self.created = None - self.updated = None - self.recovery_level = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_create_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_create_parameters.py deleted file mode 100644 index 34447ca25b9f..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_create_parameters.py +++ /dev/null @@ -1,59 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountCreateParameters(Model): - """The storage account create parameters. - - All required parameters must be populated in order to send to Azure. - - :param resource_id: Required. Storage account resource id. - :type resource_id: str - :param active_key_name: Required. Current active storage account key name. - :type active_key_name: str - :param auto_regenerate_key: Required. whether keyvault should manage the - storage account for the user. - :type auto_regenerate_key: bool - :param regeneration_period: The key regeneration time duration specified - in ISO-8601 format. - :type regeneration_period: str - :param storage_account_attributes: The attributes of the storage account. - :type storage_account_attributes: - ~azure.keyvault.v7_0.models.StorageAccountAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'resource_id': {'required': True}, - 'active_key_name': {'required': True}, - 'auto_regenerate_key': {'required': True}, - } - - _attribute_map = { - 'resource_id': {'key': 'resourceId', 'type': 'str'}, - 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, - 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, - 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, - 'storage_account_attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(StorageAccountCreateParameters, self).__init__(**kwargs) - self.resource_id = kwargs.get('resource_id', None) - self.active_key_name = kwargs.get('active_key_name', None) - self.auto_regenerate_key = kwargs.get('auto_regenerate_key', None) - self.regeneration_period = kwargs.get('regeneration_period', None) - self.storage_account_attributes = kwargs.get('storage_account_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_create_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_create_parameters_py3.py deleted file mode 100644 index 8b91451de87f..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_create_parameters_py3.py +++ /dev/null @@ -1,59 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountCreateParameters(Model): - """The storage account create parameters. - - All required parameters must be populated in order to send to Azure. - - :param resource_id: Required. Storage account resource id. - :type resource_id: str - :param active_key_name: Required. Current active storage account key name. - :type active_key_name: str - :param auto_regenerate_key: Required. whether keyvault should manage the - storage account for the user. - :type auto_regenerate_key: bool - :param regeneration_period: The key regeneration time duration specified - in ISO-8601 format. - :type regeneration_period: str - :param storage_account_attributes: The attributes of the storage account. - :type storage_account_attributes: - ~azure.keyvault.v7_0.models.StorageAccountAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'resource_id': {'required': True}, - 'active_key_name': {'required': True}, - 'auto_regenerate_key': {'required': True}, - } - - _attribute_map = { - 'resource_id': {'key': 'resourceId', 'type': 'str'}, - 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, - 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, - 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, - 'storage_account_attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, resource_id: str, active_key_name: str, auto_regenerate_key: bool, regeneration_period: str=None, storage_account_attributes=None, tags=None, **kwargs) -> None: - super(StorageAccountCreateParameters, self).__init__(**kwargs) - self.resource_id = resource_id - self.active_key_name = active_key_name - self.auto_regenerate_key = auto_regenerate_key - self.regeneration_period = regeneration_period - self.storage_account_attributes = storage_account_attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_item.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_item.py deleted file mode 100644 index ad1dedcbc60d..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_item.py +++ /dev/null @@ -1,50 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountItem(Model): - """The storage account item containing storage account metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Storage identifier. - :vartype id: str - :ivar resource_id: Storage account resource Id. - :vartype resource_id: str - :ivar attributes: The storage account management attributes. - :vartype attributes: ~azure.keyvault.v7_0.models.StorageAccountAttributes - :ivar tags: Application specific metadata in the form of key-value pairs. - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'resource_id': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'resource_id': {'key': 'resourceId', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(StorageAccountItem, self).__init__(**kwargs) - self.id = None - self.resource_id = None - self.attributes = None - self.tags = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_item_paged.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_item_paged.py deleted file mode 100644 index d9a373096151..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.paging import Paged - - -class StorageAccountItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`StorageAccountItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[StorageAccountItem]'} - } - - def __init__(self, *args, **kwargs): - - super(StorageAccountItemPaged, self).__init__(*args, **kwargs) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_item_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_item_py3.py deleted file mode 100644 index 7fc4ae8808b4..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_item_py3.py +++ /dev/null @@ -1,50 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountItem(Model): - """The storage account item containing storage account metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Storage identifier. - :vartype id: str - :ivar resource_id: Storage account resource Id. - :vartype resource_id: str - :ivar attributes: The storage account management attributes. - :vartype attributes: ~azure.keyvault.v7_0.models.StorageAccountAttributes - :ivar tags: Application specific metadata in the form of key-value pairs. - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'resource_id': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'resource_id': {'key': 'resourceId', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs) -> None: - super(StorageAccountItem, self).__init__(**kwargs) - self.id = None - self.resource_id = None - self.attributes = None - self.tags = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_regenerte_key_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_regenerte_key_parameters.py deleted file mode 100644 index 459103c575aa..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_regenerte_key_parameters.py +++ /dev/null @@ -1,34 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountRegenerteKeyParameters(Model): - """The storage account key regenerate parameters. - - All required parameters must be populated in order to send to Azure. - - :param key_name: Required. The storage account key name. - :type key_name: str - """ - - _validation = { - 'key_name': {'required': True}, - } - - _attribute_map = { - 'key_name': {'key': 'keyName', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(StorageAccountRegenerteKeyParameters, self).__init__(**kwargs) - self.key_name = kwargs.get('key_name', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_regenerte_key_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_regenerte_key_parameters_py3.py deleted file mode 100644 index 1403108fbac0..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_regenerte_key_parameters_py3.py +++ /dev/null @@ -1,34 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountRegenerteKeyParameters(Model): - """The storage account key regenerate parameters. - - All required parameters must be populated in order to send to Azure. - - :param key_name: Required. The storage account key name. - :type key_name: str - """ - - _validation = { - 'key_name': {'required': True}, - } - - _attribute_map = { - 'key_name': {'key': 'keyName', 'type': 'str'}, - } - - def __init__(self, *, key_name: str, **kwargs) -> None: - super(StorageAccountRegenerteKeyParameters, self).__init__(**kwargs) - self.key_name = key_name diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_update_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_update_parameters.py deleted file mode 100644 index 9f36f6180944..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_update_parameters.py +++ /dev/null @@ -1,47 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountUpdateParameters(Model): - """The storage account update parameters. - - :param active_key_name: The current active storage account key name. - :type active_key_name: str - :param auto_regenerate_key: whether keyvault should manage the storage - account for the user. - :type auto_regenerate_key: bool - :param regeneration_period: The key regeneration time duration specified - in ISO-8601 format. - :type regeneration_period: str - :param storage_account_attributes: The attributes of the storage account. - :type storage_account_attributes: - ~azure.keyvault.v7_0.models.StorageAccountAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, - 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, - 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, - 'storage_account_attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(StorageAccountUpdateParameters, self).__init__(**kwargs) - self.active_key_name = kwargs.get('active_key_name', None) - self.auto_regenerate_key = kwargs.get('auto_regenerate_key', None) - self.regeneration_period = kwargs.get('regeneration_period', None) - self.storage_account_attributes = kwargs.get('storage_account_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_update_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_update_parameters_py3.py deleted file mode 100644 index 75a8e22369d2..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_account_update_parameters_py3.py +++ /dev/null @@ -1,47 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountUpdateParameters(Model): - """The storage account update parameters. - - :param active_key_name: The current active storage account key name. - :type active_key_name: str - :param auto_regenerate_key: whether keyvault should manage the storage - account for the user. - :type auto_regenerate_key: bool - :param regeneration_period: The key regeneration time duration specified - in ISO-8601 format. - :type regeneration_period: str - :param storage_account_attributes: The attributes of the storage account. - :type storage_account_attributes: - ~azure.keyvault.v7_0.models.StorageAccountAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, - 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, - 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, - 'storage_account_attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, active_key_name: str=None, auto_regenerate_key: bool=None, regeneration_period: str=None, storage_account_attributes=None, tags=None, **kwargs) -> None: - super(StorageAccountUpdateParameters, self).__init__(**kwargs) - self.active_key_name = active_key_name - self.auto_regenerate_key = auto_regenerate_key - self.regeneration_period = regeneration_period - self.storage_account_attributes = storage_account_attributes - self.tags = tags diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_bundle.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_bundle.py deleted file mode 100644 index a15d7afcee03..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_bundle.py +++ /dev/null @@ -1,68 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageBundle(Model): - """A Storage account bundle consists of key vault storage account details plus - its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The storage account id. - :vartype id: str - :ivar resource_id: The storage account resource id. - :vartype resource_id: str - :ivar active_key_name: The current active storage account key name. - :vartype active_key_name: str - :ivar auto_regenerate_key: whether keyvault should manage the storage - account for the user. - :vartype auto_regenerate_key: bool - :ivar regeneration_period: The key regeneration time duration specified in - ISO-8601 format. - :vartype regeneration_period: str - :ivar attributes: The storage account attributes. - :vartype attributes: ~azure.keyvault.v7_0.models.StorageAccountAttributes - :ivar tags: Application specific metadata in the form of key-value pairs - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'resource_id': {'readonly': True}, - 'active_key_name': {'readonly': True}, - 'auto_regenerate_key': {'readonly': True}, - 'regeneration_period': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'resource_id': {'key': 'resourceId', 'type': 'str'}, - 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, - 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, - 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(StorageBundle, self).__init__(**kwargs) - self.id = None - self.resource_id = None - self.active_key_name = None - self.auto_regenerate_key = None - self.regeneration_period = None - self.attributes = None - self.tags = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_bundle_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_bundle_py3.py deleted file mode 100644 index 2f97dd4c92e4..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_bundle_py3.py +++ /dev/null @@ -1,68 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageBundle(Model): - """A Storage account bundle consists of key vault storage account details plus - its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The storage account id. - :vartype id: str - :ivar resource_id: The storage account resource id. - :vartype resource_id: str - :ivar active_key_name: The current active storage account key name. - :vartype active_key_name: str - :ivar auto_regenerate_key: whether keyvault should manage the storage - account for the user. - :vartype auto_regenerate_key: bool - :ivar regeneration_period: The key regeneration time duration specified in - ISO-8601 format. - :vartype regeneration_period: str - :ivar attributes: The storage account attributes. - :vartype attributes: ~azure.keyvault.v7_0.models.StorageAccountAttributes - :ivar tags: Application specific metadata in the form of key-value pairs - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'resource_id': {'readonly': True}, - 'active_key_name': {'readonly': True}, - 'auto_regenerate_key': {'readonly': True}, - 'regeneration_period': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'resource_id': {'key': 'resourceId', 'type': 'str'}, - 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, - 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, - 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs) -> None: - super(StorageBundle, self).__init__(**kwargs) - self.id = None - self.resource_id = None - self.active_key_name = None - self.auto_regenerate_key = None - self.regeneration_period = None - self.attributes = None - self.tags = None diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_restore_parameters.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_restore_parameters.py deleted file mode 100644 index add6f3cd22fd..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_restore_parameters.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageRestoreParameters(Model): - """The secret restore parameters. - - All required parameters must be populated in order to send to Azure. - - :param storage_bundle_backup: Required. The backup blob associated with a - storage account. - :type storage_bundle_backup: bytes - """ - - _validation = { - 'storage_bundle_backup': {'required': True}, - } - - _attribute_map = { - 'storage_bundle_backup': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(StorageRestoreParameters, self).__init__(**kwargs) - self.storage_bundle_backup = kwargs.get('storage_bundle_backup', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_restore_parameters_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_restore_parameters_py3.py deleted file mode 100644 index 0496d15ba4ae..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/storage_restore_parameters_py3.py +++ /dev/null @@ -1,35 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageRestoreParameters(Model): - """The secret restore parameters. - - All required parameters must be populated in order to send to Azure. - - :param storage_bundle_backup: Required. The backup blob associated with a - storage account. - :type storage_bundle_backup: bytes - """ - - _validation = { - 'storage_bundle_backup': {'required': True}, - } - - _attribute_map = { - 'storage_bundle_backup': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, *, storage_bundle_backup: bytes, **kwargs) -> None: - super(StorageRestoreParameters, self).__init__(**kwargs) - self.storage_bundle_backup = storage_bundle_backup diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/subject_alternative_names.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/subject_alternative_names.py deleted file mode 100644 index 0ff2911550df..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/subject_alternative_names.py +++ /dev/null @@ -1,36 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SubjectAlternativeNames(Model): - """The subject alternate names of a X509 object. - - :param emails: Email addresses. - :type emails: list[str] - :param dns_names: Domain names. - :type dns_names: list[str] - :param upns: User principal names. - :type upns: list[str] - """ - - _attribute_map = { - 'emails': {'key': 'emails', 'type': '[str]'}, - 'dns_names': {'key': 'dns_names', 'type': '[str]'}, - 'upns': {'key': 'upns', 'type': '[str]'}, - } - - def __init__(self, **kwargs): - super(SubjectAlternativeNames, self).__init__(**kwargs) - self.emails = kwargs.get('emails', None) - self.dns_names = kwargs.get('dns_names', None) - self.upns = kwargs.get('upns', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/subject_alternative_names_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/subject_alternative_names_py3.py deleted file mode 100644 index a2870854d559..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/subject_alternative_names_py3.py +++ /dev/null @@ -1,36 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SubjectAlternativeNames(Model): - """The subject alternate names of a X509 object. - - :param emails: Email addresses. - :type emails: list[str] - :param dns_names: Domain names. - :type dns_names: list[str] - :param upns: User principal names. - :type upns: list[str] - """ - - _attribute_map = { - 'emails': {'key': 'emails', 'type': '[str]'}, - 'dns_names': {'key': 'dns_names', 'type': '[str]'}, - 'upns': {'key': 'upns', 'type': '[str]'}, - } - - def __init__(self, *, emails=None, dns_names=None, upns=None, **kwargs) -> None: - super(SubjectAlternativeNames, self).__init__(**kwargs) - self.emails = emails - self.dns_names = dns_names - self.upns = upns diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/trigger.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/trigger.py deleted file mode 100644 index a68686f8303e..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/trigger.py +++ /dev/null @@ -1,40 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Trigger(Model): - """A condition to be satisfied for an action to be executed. - - :param lifetime_percentage: Percentage of lifetime at which to trigger. - Value should be between 1 and 99. - :type lifetime_percentage: int - :param days_before_expiry: Days before expiry to attempt renewal. Value - should be between 1 and validity_in_months multiplied by 27. If - validity_in_months is 36, then value should be between 1 and 972 (36 * - 27). - :type days_before_expiry: int - """ - - _validation = { - 'lifetime_percentage': {'maximum': 99, 'minimum': 1}, - } - - _attribute_map = { - 'lifetime_percentage': {'key': 'lifetime_percentage', 'type': 'int'}, - 'days_before_expiry': {'key': 'days_before_expiry', 'type': 'int'}, - } - - def __init__(self, **kwargs): - super(Trigger, self).__init__(**kwargs) - self.lifetime_percentage = kwargs.get('lifetime_percentage', None) - self.days_before_expiry = kwargs.get('days_before_expiry', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/trigger_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/trigger_py3.py deleted file mode 100644 index 38faa3471773..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/trigger_py3.py +++ /dev/null @@ -1,40 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Trigger(Model): - """A condition to be satisfied for an action to be executed. - - :param lifetime_percentage: Percentage of lifetime at which to trigger. - Value should be between 1 and 99. - :type lifetime_percentage: int - :param days_before_expiry: Days before expiry to attempt renewal. Value - should be between 1 and validity_in_months multiplied by 27. If - validity_in_months is 36, then value should be between 1 and 972 (36 * - 27). - :type days_before_expiry: int - """ - - _validation = { - 'lifetime_percentage': {'maximum': 99, 'minimum': 1}, - } - - _attribute_map = { - 'lifetime_percentage': {'key': 'lifetime_percentage', 'type': 'int'}, - 'days_before_expiry': {'key': 'days_before_expiry', 'type': 'int'}, - } - - def __init__(self, *, lifetime_percentage: int=None, days_before_expiry: int=None, **kwargs) -> None: - super(Trigger, self).__init__(**kwargs) - self.lifetime_percentage = lifetime_percentage - self.days_before_expiry = days_before_expiry diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/x509_certificate_properties.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/x509_certificate_properties.py deleted file mode 100644 index 75d1be98db4d..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/x509_certificate_properties.py +++ /dev/null @@ -1,51 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class X509CertificateProperties(Model): - """Properties of the X509 component of a certificate. - - :param subject: The subject name. Should be a valid X509 distinguished - Name. - :type subject: str - :param ekus: The enhanced key usage. - :type ekus: list[str] - :param subject_alternative_names: The subject alternative names. - :type subject_alternative_names: - ~azure.keyvault.v7_0.models.SubjectAlternativeNames - :param key_usage: List of key usages. - :type key_usage: list[str or ~azure.keyvault.v7_0.models.KeyUsageType] - :param validity_in_months: The duration that the ceritifcate is valid in - months. - :type validity_in_months: int - """ - - _validation = { - 'validity_in_months': {'minimum': 0}, - } - - _attribute_map = { - 'subject': {'key': 'subject', 'type': 'str'}, - 'ekus': {'key': 'ekus', 'type': '[str]'}, - 'subject_alternative_names': {'key': 'sans', 'type': 'SubjectAlternativeNames'}, - 'key_usage': {'key': 'key_usage', 'type': '[str]'}, - 'validity_in_months': {'key': 'validity_months', 'type': 'int'}, - } - - def __init__(self, **kwargs): - super(X509CertificateProperties, self).__init__(**kwargs) - self.subject = kwargs.get('subject', None) - self.ekus = kwargs.get('ekus', None) - self.subject_alternative_names = kwargs.get('subject_alternative_names', None) - self.key_usage = kwargs.get('key_usage', None) - self.validity_in_months = kwargs.get('validity_in_months', None) diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/x509_certificate_properties_py3.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/x509_certificate_properties_py3.py deleted file mode 100644 index 35c93a44fe1f..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/models/x509_certificate_properties_py3.py +++ /dev/null @@ -1,51 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class X509CertificateProperties(Model): - """Properties of the X509 component of a certificate. - - :param subject: The subject name. Should be a valid X509 distinguished - Name. - :type subject: str - :param ekus: The enhanced key usage. - :type ekus: list[str] - :param subject_alternative_names: The subject alternative names. - :type subject_alternative_names: - ~azure.keyvault.v7_0.models.SubjectAlternativeNames - :param key_usage: List of key usages. - :type key_usage: list[str or ~azure.keyvault.v7_0.models.KeyUsageType] - :param validity_in_months: The duration that the ceritifcate is valid in - months. - :type validity_in_months: int - """ - - _validation = { - 'validity_in_months': {'minimum': 0}, - } - - _attribute_map = { - 'subject': {'key': 'subject', 'type': 'str'}, - 'ekus': {'key': 'ekus', 'type': '[str]'}, - 'subject_alternative_names': {'key': 'sans', 'type': 'SubjectAlternativeNames'}, - 'key_usage': {'key': 'key_usage', 'type': '[str]'}, - 'validity_in_months': {'key': 'validity_months', 'type': 'int'}, - } - - def __init__(self, *, subject: str=None, ekus=None, subject_alternative_names=None, key_usage=None, validity_in_months: int=None, **kwargs) -> None: - super(X509CertificateProperties, self).__init__(**kwargs) - self.subject = subject - self.ekus = ekus - self.subject_alternative_names = subject_alternative_names - self.key_usage = key_usage - self.validity_in_months = validity_in_months diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/version.py b/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/version.py deleted file mode 100644 index 3c10f7d869d7..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/v7_0/version.py +++ /dev/null @@ -1,13 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -VERSION = "7.0" - diff --git a/sdk/keyvault/azure-keyvault/azure/keyvault/version.py b/sdk/keyvault/azure-keyvault/azure/keyvault/version.py deleted file mode 100644 index 24b9de3384da..000000000000 --- a/sdk/keyvault/azure-keyvault/azure/keyvault/version.py +++ /dev/null @@ -1,13 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -VERSION = "1.1.0" - diff --git a/sdk/keyvault/azure-keyvault/dev_requirements.txt b/sdk/keyvault/azure-keyvault/dev_requirements.txt deleted file mode 100644 index 79c58888326b..000000000000 --- a/sdk/keyvault/azure-keyvault/dev_requirements.txt +++ /dev/null @@ -1,4 +0,0 @@ --e ../../authorization/azure-mgmt-authorization --e ../../core/azure-core --e ../azure-mgmt-keyvault --e ../../../tools/azure-sdk-tools \ No newline at end of file diff --git a/sdk/keyvault/azure-keyvault/sdk_packaging.toml b/sdk/keyvault/azure-keyvault/sdk_packaging.toml deleted file mode 100644 index a8ce4869ae3b..000000000000 --- a/sdk/keyvault/azure-keyvault/sdk_packaging.toml +++ /dev/null @@ -1,7 +0,0 @@ -[packaging] -auto_update = false -package_name = "azure-keyvault" -package_pprint_name = "Key Vault" -package_doc_id = "key-vault" -is_stable = false -is_arm = false diff --git a/sdk/keyvault/azure-keyvault/setup.cfg b/sdk/keyvault/azure-keyvault/setup.cfg deleted file mode 100644 index 3c6e79cf31da..000000000000 --- a/sdk/keyvault/azure-keyvault/setup.cfg +++ /dev/null @@ -1,2 +0,0 @@ -[bdist_wheel] -universal=1 diff --git a/sdk/keyvault/azure-keyvault/setup.py b/sdk/keyvault/azure-keyvault/setup.py deleted file mode 100644 index ddf1892e19f8..000000000000 --- a/sdk/keyvault/azure-keyvault/setup.py +++ /dev/null @@ -1,88 +0,0 @@ -#!/usr/bin/env python - -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -import re -import os.path -from io import open -from setuptools import find_packages, setup - -# Change the PACKAGE_NAME only to change folder and different name -PACKAGE_NAME = "azure-keyvault" -PACKAGE_PPRINT_NAME = "Key Vault" - -# a-b-c => a/b/c -package_folder_path = PACKAGE_NAME.replace('-', '/') -# a-b-c => a.b.c -namespace_name = PACKAGE_NAME.replace('-', '.') - -# azure v0.x is not compatible with this package -# azure v0.x used to have a __version__ attribute (newer versions don't) -try: - import azure - try: - ver = azure.__version__ - raise Exception( - 'This package is incompatible with azure=={}. '.format(ver) + - 'Uninstall it with "pip uninstall azure".' - ) - except AttributeError: - pass -except ImportError: - pass - -# Version extraction inspired from 'requests' -with open(os.path.join(package_folder_path, 'version.py'), 'r') as fd: - version = re.search(r'^VERSION\s*=\s*[\'"]([^\'"]*)[\'"]', - fd.read(), re.MULTILINE).group(1) - -if not version: - raise RuntimeError('Cannot find version information') - -with open('README.rst', encoding='utf-8') as f: - readme = f.read() -with open('HISTORY.rst', encoding='utf-8') as f: - history = f.read() - -setup( - name=PACKAGE_NAME, - version=version, - description='Microsoft Azure {} Client Library for Python'.format(PACKAGE_PPRINT_NAME), - long_description=readme + '\n\n' + history, - license='MIT License', - author='Microsoft Corporation', - author_email='azurekeyvault@microsoft.com', - url='https://github.com/Azure/azure-sdk-for-python', - classifiers=[ - 'Development Status :: 5 - Production/Stable', - 'Programming Language :: Python', - 'Programming Language :: Python :: 2', - 'Programming Language :: Python :: 2.7', - 'Programming Language :: Python :: 3', - 'Programming Language :: Python :: 3.4', - 'Programming Language :: Python :: 3.5', - 'Programming Language :: Python :: 3.6', - 'Programming Language :: Python :: 3.7', - 'License :: OSI Approved :: MIT License', - ], - zip_safe=False, - packages=find_packages(exclude=[ - 'tests', - # Exclude packages that will be covered by PEP420 or nspkg - 'azure', - ]), - install_requires=[ - 'msrest>=0.5.0', - 'msrestazure>=0.4.32,<2.0.0', - 'azure-common~=1.1', - 'cryptography>=2.1.4', - 'requests>=2.18.4' - ], - extras_require={ - ":python_version<'3.0'": ['azure-nspkg'], - } -) diff --git a/sdk/keyvault/azure-keyvault/tests/keyvault_preparer.py b/sdk/keyvault/azure-keyvault/tests/keyvault_preparer.py deleted file mode 100644 index 4a9dab00ff84..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/keyvault_preparer.py +++ /dev/null @@ -1,104 +0,0 @@ -from collections import namedtuple -import io -import os -import requests -import time - -from azure.mgmt.keyvault import KeyVaultManagementClient -from azure.mgmt.keyvault.models import SecretPermissions, KeyPermissions, CertificatePermissions, StoragePermissions, \ - Permissions, Sku, SkuName, AccessPolicyEntry, VaultProperties, VaultCreateOrUpdateParameters, Vault -from azure_devtools.scenario_tests.preparers import ( - AbstractPreparer, - SingleValueReplacer, -) -from azure_devtools.scenario_tests.exceptions import AzureTestError - -from devtools_testutils import AzureMgmtPreparer, ResourceGroupPreparer, FakeResource -from devtools_testutils.resource_testcase import RESOURCE_GROUP_PARAM - -VAULT_PARAM = 'vault' -FakeAccount = namedtuple( - 'FakeResource', - ['name', 'account_endpoint'] -) - -DEFAULT_PERMISSIONS = Permissions(keys=[perm.value for perm in KeyPermissions], - secrets=[perm.value for perm in SecretPermissions], - certificates=[perm.value for perm in CertificatePermissions], - storage=[perm.value for perm in StoragePermissions]) -DEFAULT_SKU = SkuName.premium.value - -class KeyVaultPreparer(AzureMgmtPreparer): - def __init__(self, - sku=None, - permissions=None, - enabled_for_deployment=True, - enabled_for_disk_encryption=True, - enabled_for_template_deployment=True, - enable_soft_delete=None, - name_prefix='vault', - location='westus', - parameter_name=VAULT_PARAM, - resource_group_parameter_name=RESOURCE_GROUP_PARAM, - disable_recording=True, - playback_fake_resource=None, - client_kwargs=None): - super(KeyVaultPreparer, self).__init__(name_prefix, 24, - disable_recording=disable_recording, - playback_fake_resource=playback_fake_resource, - client_kwargs=client_kwargs) - self.sku = sku or DEFAULT_SKU - self.permissions = permissions or DEFAULT_PERMISSIONS - self.enabled_for_deployment = enabled_for_deployment - self.enabled_for_disk_encryption = enabled_for_disk_encryption - self.enabled_for_template_deployment = enabled_for_template_deployment - self.enable_soft_delete = enable_soft_delete - self.location = location - self.resource_group_parameter_name = resource_group_parameter_name - self.parameter_name = parameter_name - self.creds_parameter = 'credentials' - self.parameter_name_for_location = 'location' - - def _get_resource_group(self, **kwargs): - try: - return kwargs[self.resource_group_parameter_name] - except KeyError: - template = 'To create a key vault a resource group is required. Please add ' \ - 'decorator @{} in front of this storage account preparer.' - raise AzureTestError(template.format(ResourceGroupPreparer.__name__)) - - - def create_resource(self, name, **kwargs): - group = self._get_resource_group(**kwargs).name - - access_policies = [AccessPolicyEntry(tenant_id=self.test_class_instance.settings.TENANT_ID, - object_id=self.test_class_instance.settings.CLIENT_OID, - permissions=self.permissions)] - properties = VaultProperties(tenant_id=self.test_class_instance.settings.TENANT_ID, - sku=Sku(name=self.sku), - access_policies=access_policies, - vault_uri=None, - enabled_for_deployment=self.enabled_for_deployment, - enabled_for_disk_encryption=self.enabled_for_disk_encryption, - enabled_for_template_deployment=self.enabled_for_template_deployment, - enable_soft_delete=self.enable_soft_delete, - enable_purge_protection=None) - - if self.is_live: - self.client = self.create_mgmt_client(KeyVaultManagementClient) - parameters = VaultCreateOrUpdateParameters(location=self.location, - properties=properties) - self.resource = self.client.vaults.create_or_update(group, name, parameters).result() - else: - properties.vault_uri = 'https://{}.vault.azure.net/'.format(name) - self.resource = Vault(location=self.location, properties=properties) - return { - self.parameter_name: self.resource - } - - def remove_resource(self, name, **kwargs): - if self.is_live: - group = self._get_resource_group(**kwargs).name - self.client.vaults.delete(group, name) - if self.enable_soft_delete: - self.client.vaults.purge_deleted(name, self.location).wait() diff --git a/sdk/keyvault/azure-keyvault/tests/keyvault_testcase.py b/sdk/keyvault/azure-keyvault/tests/keyvault_testcase.py deleted file mode 100644 index 91c8a38deb73..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/keyvault_testcase.py +++ /dev/null @@ -1,33 +0,0 @@ -from azure_devtools.scenario_tests import GeneralNameReplacer -from devtools_testutils import AzureMgmtTestCase -from azure.keyvault import KeyVaultClient, KeyVaultAuthentication, AccessToken - - -class KeyvaultTestCase(AzureMgmtTestCase): - def setUp(self): - super(KeyvaultTestCase, self).setUp() - self.list_test_size = 2 - if self.is_live: - self.client = self.create_basic_client(KeyVaultClient) - else: - - def _auth_callback(server, resource, scope): - return AccessToken('Bearer', 'fake-token') - self.client = KeyVaultClient(KeyVaultAuthentication(authorization_callback=_auth_callback)) - - def tearDown(self): - super(KeyvaultTestCase, self).tearDown() - - - def _get_keyvault_client(self, api_version): - super(KeyvaultTestCase, self).setUp() - self.list_test_size = 2 - if self.is_live: - self.client = self.create_basic_client(KeyVaultClient, api_version=api_version) - else: - - def _auth_callback(server, resource, scope): - return AccessToken('Bearer', 'fake-token') - self.client = KeyVaultClient(KeyVaultAuthentication(authorization_callback=_auth_callback), api_version=api_version) - - diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_async_request_cancellation_and_deletion.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_async_request_cancellation_and_deletion.yaml deleted file mode 100644 index b63299ce38a6..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_async_request_cancellation_and_deletion.yaml +++ /dev/null @@ -1,231 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault238b197a.vault.azure.net/certificates/asyncCanceledDeletedCert/create?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:00:35 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"policy": {"key_props": {"exportable": true, "kty": "RSA", "key_size": - 2048, "reuse_key": false}, "secret_props": {"contentType": "application/x-pkcs12"}, - "x509_props": {"subject": "CN=*.microsoft.com", "sans": {"dns_names": ["onedrive.microsoft.com", - "xbox.microsoft.com"]}, "validity_months": 24}, "issuer": {"name": "Self"}}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['329'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault238b197a.vault.azure.net/certificates/asyncCanceledDeletedCert/create?api-version=7.0 - response: - body: {string: '{"id":"https://vault238b197a.vault.azure.net/certificates/asyncCanceledDeletedCert/pending","issuer":{"name":"Self"},"csr":"MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArnrsyZfKFhWSvQNGyVmz5X9VZNGfMjLZl+JM2GHDKYJlZI4K6tFol2y3+4F+daFJglJBtUYU8um+HtNXNQn4yu4lwya0JqFWCJbeZrG7XFnCPDGGFMx5e8A3pH9Um6Px1cohdBqOXmzQszIryLQXI00AaS4hdK4+sUiU1JyNQSbo7fHaWQuU9sIsRot08cKQ2idVZprRJAgjcKUBe3qFFFdlEcQX78xmq9Npq54Byl9Wl7w0SAuxmb6vnV+TPUsLLplTCGMSs2nPBZo2Bg1mbi72aJqS3DVmkedY1Li01uBlc/OvFHOJSihu2WY1GC7c866GdkXjUCqsYAvIQ1mLVwIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBAHwwRy+KN8QVQkwIWtIJFcMoTffvAfMZo8ldEstMVVt8dPpFHkbBtEEEamcQyMK8mj3elmekiLIUVtH8EvUce4CYIQcUovh12vyPVB1ivhuT/uo0Ijb/TmMI7645UAFQhn0nritTh85DCvFU6tPXiqRhrMHPavJD2uZD9MY0KXIV6FtjHoIenL6m+K9taIMkchDgG9fhcH56fQtyHrMwwvNQX49z2DhybCbN/88nHJzXdtkXmu/mrqs4HVfbw2Q8mbBLtWBebR5hqWie52a1d6jVruwI1m9vJfVKrI+gWoggzIb6iRnTF/vjpahbTWAjqk93+2L/C0zOmufYFM/DtoU=","cancellation_requested":false,"status":"inProgress","status_details":"Pending - certificate created. Certificate request is in progress. This may take some - time based on the issuer provider. Please check again later.","request_id":"3af6cbd116494baf8bc91be75490279c"}'} - headers: - cache-control: [no-cache] - content-length: ['1383'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:00:36 GMT'] - expires: ['-1'] - location: ['https://vault238b197a.vault.azure.net/certificates/asyncCanceledDeletedCert/pending?api-version=7.0&request_id=3af6cbd116494baf8bc91be75490279c'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 202, message: Accepted} -- request: - body: '{"cancellation_requested": true}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['32'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PATCH - uri: https://vault238b197a.vault.azure.net/certificates/asyncCanceledDeletedCert/pending?api-version=7.0 - response: - body: {string: '{"id":"https://vault238b197a.vault.azure.net/certificates/asyncCanceledDeletedCert/pending","issuer":{"name":"Self"},"csr":"MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArnrsyZfKFhWSvQNGyVmz5X9VZNGfMjLZl+JM2GHDKYJlZI4K6tFol2y3+4F+daFJglJBtUYU8um+HtNXNQn4yu4lwya0JqFWCJbeZrG7XFnCPDGGFMx5e8A3pH9Um6Px1cohdBqOXmzQszIryLQXI00AaS4hdK4+sUiU1JyNQSbo7fHaWQuU9sIsRot08cKQ2idVZprRJAgjcKUBe3qFFFdlEcQX78xmq9Npq54Byl9Wl7w0SAuxmb6vnV+TPUsLLplTCGMSs2nPBZo2Bg1mbi72aJqS3DVmkedY1Li01uBlc/OvFHOJSihu2WY1GC7c866GdkXjUCqsYAvIQ1mLVwIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBAHwwRy+KN8QVQkwIWtIJFcMoTffvAfMZo8ldEstMVVt8dPpFHkbBtEEEamcQyMK8mj3elmekiLIUVtH8EvUce4CYIQcUovh12vyPVB1ivhuT/uo0Ijb/TmMI7645UAFQhn0nritTh85DCvFU6tPXiqRhrMHPavJD2uZD9MY0KXIV6FtjHoIenL6m+K9taIMkchDgG9fhcH56fQtyHrMwwvNQX49z2DhybCbN/88nHJzXdtkXmu/mrqs4HVfbw2Q8mbBLtWBebR5hqWie52a1d6jVruwI1m9vJfVKrI+gWoggzIb6iRnTF/vjpahbTWAjqk93+2L/C0zOmufYFM/DtoU=","cancellation_requested":true,"status":"inProgress","status_details":"Pending - certificate created. Certificate request is in progress. This may take some - time based on the issuer provider. Please check again later.","request_id":"3af6cbd116494baf8bc91be75490279c"}'} - headers: - cache-control: [no-cache] - content-length: ['1382'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:00:38 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault238b197a.vault.azure.net/certificates/asyncCanceledDeletedCert/pending?api-version=7.0 - response: - body: {string: '{"id":"https://vault238b197a.vault.azure.net/certificates/asyncCanceledDeletedCert/pending","issuer":{"name":"Self"},"csr":"MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArnrsyZfKFhWSvQNGyVmz5X9VZNGfMjLZl+JM2GHDKYJlZI4K6tFol2y3+4F+daFJglJBtUYU8um+HtNXNQn4yu4lwya0JqFWCJbeZrG7XFnCPDGGFMx5e8A3pH9Um6Px1cohdBqOXmzQszIryLQXI00AaS4hdK4+sUiU1JyNQSbo7fHaWQuU9sIsRot08cKQ2idVZprRJAgjcKUBe3qFFFdlEcQX78xmq9Npq54Byl9Wl7w0SAuxmb6vnV+TPUsLLplTCGMSs2nPBZo2Bg1mbi72aJqS3DVmkedY1Li01uBlc/OvFHOJSihu2WY1GC7c866GdkXjUCqsYAvIQ1mLVwIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBAHwwRy+KN8QVQkwIWtIJFcMoTffvAfMZo8ldEstMVVt8dPpFHkbBtEEEamcQyMK8mj3elmekiLIUVtH8EvUce4CYIQcUovh12vyPVB1ivhuT/uo0Ijb/TmMI7645UAFQhn0nritTh85DCvFU6tPXiqRhrMHPavJD2uZD9MY0KXIV6FtjHoIenL6m+K9taIMkchDgG9fhcH56fQtyHrMwwvNQX49z2DhybCbN/88nHJzXdtkXmu/mrqs4HVfbw2Q8mbBLtWBebR5hqWie52a1d6jVruwI1m9vJfVKrI+gWoggzIb6iRnTF/vjpahbTWAjqk93+2L/C0zOmufYFM/DtoU=","cancellation_requested":true,"status":"inProgress","status_details":"Pending - certificate created. Certificate request is in progress. This may take some - time based on the issuer provider. Please check again later.","request_id":"3af6cbd116494baf8bc91be75490279c"}'} - headers: - cache-control: [no-cache] - content-length: ['1382'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:00:38 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vault238b197a.vault.azure.net/certificates/asyncCanceledDeletedCert/pending?api-version=7.0 - response: - body: {string: '{"id":"https://vault238b197a.vault.azure.net/certificates/asyncCanceledDeletedCert/pending","issuer":{"name":"Self"},"csr":"MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArnrsyZfKFhWSvQNGyVmz5X9VZNGfMjLZl+JM2GHDKYJlZI4K6tFol2y3+4F+daFJglJBtUYU8um+HtNXNQn4yu4lwya0JqFWCJbeZrG7XFnCPDGGFMx5e8A3pH9Um6Px1cohdBqOXmzQszIryLQXI00AaS4hdK4+sUiU1JyNQSbo7fHaWQuU9sIsRot08cKQ2idVZprRJAgjcKUBe3qFFFdlEcQX78xmq9Npq54Byl9Wl7w0SAuxmb6vnV+TPUsLLplTCGMSs2nPBZo2Bg1mbi72aJqS3DVmkedY1Li01uBlc/OvFHOJSihu2WY1GC7c866GdkXjUCqsYAvIQ1mLVwIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBAHwwRy+KN8QVQkwIWtIJFcMoTffvAfMZo8ldEstMVVt8dPpFHkbBtEEEamcQyMK8mj3elmekiLIUVtH8EvUce4CYIQcUovh12vyPVB1ivhuT/uo0Ijb/TmMI7645UAFQhn0nritTh85DCvFU6tPXiqRhrMHPavJD2uZD9MY0KXIV6FtjHoIenL6m+K9taIMkchDgG9fhcH56fQtyHrMwwvNQX49z2DhybCbN/88nHJzXdtkXmu/mrqs4HVfbw2Q8mbBLtWBebR5hqWie52a1d6jVruwI1m9vJfVKrI+gWoggzIb6iRnTF/vjpahbTWAjqk93+2L/C0zOmufYFM/DtoU=","cancellation_requested":true,"status":"inProgress","status_details":"Pending - certificate created. Certificate request is in progress. This may take some - time based on the issuer provider. Please check again later.","request_id":"3af6cbd116494baf8bc91be75490279c"}'} - headers: - cache-control: [no-cache] - content-length: ['1382'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:00:38 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault238b197a.vault.azure.net/certificates/asyncCanceledDeletedCert/pending?api-version=7.0 - response: - body: {string: '{"error":{"code":"PendingCertificateNotFound","message":"Pending - certificate not found: asyncCanceledDeletedCert"}}'} - headers: - cache-control: [no-cache] - content-length: ['115'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:00:39 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 404, message: Not Found} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vault238b197a.vault.azure.net/certificates/asyncCanceledDeletedCert?api-version=7.0 - response: - body: {string: '{"id":"https://vault238b197a.vault.azure.net/certificates/asyncCanceledDeletedCert/5111b5a5218647e08ccdea28abc0cdbe","attributes":{"enabled":false,"nbf":1529686236,"exp":1592845236,"created":1529686836,"updated":1529686836,"recoveryLevel":"Purgeable"},"policy":{"id":"https://vault238b197a.vault.azure.net/certificates/asyncCanceledDeletedCert/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=*.microsoft.com","sans":{"dns_names":["onedrive.microsoft.com","xbox.microsoft.com"]},"ekus":["1.3.6.1.5.5.7.3.1","1.3.6.1.5.5.7.3.2"],"key_usage":["digitalSignature","keyEncipherment"],"validity_months":24,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"AutoRenew"}}],"issuer":{"name":"Self"},"attributes":{"enabled":true,"created":1529686836,"updated":1529686836}}}'} - headers: - cache-control: [no-cache] - content-length: ['948'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:00:40 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_crud_contacts.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_crud_contacts.yaml deleted file mode 100644 index 24a47a150f4e..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_crud_contacts.yaml +++ /dev/null @@ -1,161 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vault11e00ecf.vault.azure.net/certificates/contacts?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:01:22 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"contacts": [{"email": "admin@contoso.com", "name": "John Doe", "phone": - "1111111111"}, {"email": "admin2@contoso.com", "name": "John Doe2", "phone": - "2222222222"}]}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['166'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vault11e00ecf.vault.azure.net/certificates/contacts?api-version=7.0 - response: - body: {string: '{"id":"https://vault11e00ecf.vault.azure.net/certificates/contacts","contacts":[{"email":"admin@contoso.com","name":"John - Doe","phone":"1111111111"},{"email":"admin2@contoso.com","name":"John Doe2","phone":"2222222222"}]}'} - headers: - cache-control: [no-cache] - content-length: ['221'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:01:24 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault11e00ecf.vault.azure.net/certificates/contacts?api-version=7.0 - response: - body: {string: '{"id":"https://vault11e00ecf.vault.azure.net/certificates/contacts","contacts":[{"email":"admin@contoso.com","name":"John - Doe","phone":"1111111111"},{"email":"admin2@contoso.com","name":"John Doe2","phone":"2222222222"}]}'} - headers: - cache-control: [no-cache] - content-length: ['221'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:01:24 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vault11e00ecf.vault.azure.net/certificates/contacts?api-version=7.0 - response: - body: {string: '{"id":"https://vault11e00ecf.vault.azure.net/certificates/contacts","contacts":[{"email":"admin@contoso.com","name":"John - Doe","phone":"1111111111"},{"email":"admin2@contoso.com","name":"John Doe2","phone":"2222222222"}]}'} - headers: - cache-control: [no-cache] - content-length: ['221'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:01:24 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault11e00ecf.vault.azure.net/certificates/contacts?api-version=7.0 - response: - body: {string: '{"error":{"code":"ContactsNotFound","message":"Contacts not found"}}'} - headers: - cache-control: [no-cache] - content-length: ['68'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:01:25 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 404, message: Not Found} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_crud_issuer.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_crud_issuer.yaml deleted file mode 100644 index 580be9795fe4..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_crud_issuer.yaml +++ /dev/null @@ -1,194 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vaultf50c0e0b.vault.azure.net/certificates/issuers/pythonIssuer?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:02:06 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"provider": "test", "credentials": {"account_id": "keyvaultuser", "pwd": - "password"}, "org_details": {"admin_details": [{"first_name": "Jane", "last_name": - "Doe", "email": "admin@contoso.com", "phone": "4256666666"}]}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['219'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vaultf50c0e0b.vault.azure.net/certificates/issuers/pythonIssuer?api-version=7.0 - response: - body: {string: '{"id":"https://vaultf50c0e0b.vault.azure.net/certificates/issuers/pythonIssuer","provider":"test","credentials":{"account_id":"keyvaultuser"},"org_details":{"zip":0,"admin_details":[{"first_name":"Jane","last_name":"Doe","email":"admin@contoso.com","phone":"4256666666"}]},"attributes":{"enabled":true,"created":1529686927,"updated":1529686927}}'} - headers: - cache-control: [no-cache] - content-length: ['345'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:02:07 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vaultf50c0e0b.vault.azure.net/certificates/issuers/pythonIssuer?api-version=7.0 - response: - body: {string: '{"id":"https://vaultf50c0e0b.vault.azure.net/certificates/issuers/pythonIssuer","provider":"test","credentials":{"account_id":"keyvaultuser"},"org_details":{"zip":0,"admin_details":[{"first_name":"Jane","last_name":"Doe","email":"admin@contoso.com","phone":"4256666666"}]},"attributes":{"enabled":true,"created":1529686927,"updated":1529686927}}'} - headers: - cache-control: [no-cache] - content-length: ['345'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:02:07 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"provider": "test", "credentials": {"account_id": "xboxuser", "pwd": "security"}, - "org_details": {"admin_details": [{"first_name": "Jane II", "last_name": "Doe", - "email": "admin@contoso.com", "phone": "1111111111"}]}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['218'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PATCH - uri: https://vaultf50c0e0b.vault.azure.net/certificates/issuers/pythonIssuer?api-version=7.0 - response: - body: {string: '{"id":"https://vaultf50c0e0b.vault.azure.net/certificates/issuers/pythonIssuer","provider":"test","credentials":{"account_id":"xboxuser"},"org_details":{"zip":0,"admin_details":[{"first_name":"Jane - II","last_name":"Doe","email":"admin@contoso.com","phone":"1111111111"}]},"attributes":{"enabled":true,"created":1529686927,"updated":1529686928}}'} - headers: - cache-control: [no-cache] - content-length: ['344'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:02:08 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vaultf50c0e0b.vault.azure.net/certificates/issuers/pythonIssuer?api-version=7.0 - response: - body: {string: '{"id":"https://vaultf50c0e0b.vault.azure.net/certificates/issuers/pythonIssuer","provider":"test","credentials":{"account_id":"xboxuser"},"org_details":{"zip":0,"admin_details":[{"first_name":"Jane - II","last_name":"Doe","email":"admin@contoso.com","phone":"1111111111"}]},"attributes":{"enabled":true,"created":1529686927,"updated":1529686928}}'} - headers: - cache-control: [no-cache] - content-length: ['344'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:02:08 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vaultf50c0e0b.vault.azure.net/certificates/issuers/pythonIssuer?api-version=7.0 - response: - body: {string: '{"error":{"code":"CertificateIssuerNotFound","message":"Issuer - not found"}}'} - headers: - cache-control: [no-cache] - content-length: ['75'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:02:09 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 404, message: Not Found} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_crud_operations.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_crud_operations.yaml deleted file mode 100644 index 76c4238fef9d..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_crud_operations.yaml +++ /dev/null @@ -1,353 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/create?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:02:50 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"policy": {"key_props": {"exportable": true, "kty": "RSA", "key_size": - 2048, "reuse_key": false}, "secret_props": {"contentType": "application/x-pkcs12"}, - "x509_props": {"subject": "CN=*.microsoft.com", "sans": {"dns_names": ["onedrive.microsoft.com", - "xbox.microsoft.com"]}, "validity_months": 24}, "issuer": {"name": "Self"}}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['329'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/create?api-version=7.0 - response: - body: {string: '{"id":"https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/pending","issuer":{"name":"Self"},"csr":"MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAziNfVNSV89fObwLe3KtCRh8z3E2mnvDZomfjl9/Lb15TW6JjaOoudSiQK5TyhZ8gVUoq5lk3OuOM8oU7KWO76XzR+vt8yrBTk32Eno9enLt/kUS7ItHef49zKBFzd1ImBFPhWIw1N9HSmJ/0JTXZTm+cs5ecW6lpWktusU42hA3j3f4ZxOocDIHchwMmC3U8N2iWKGXcnbsPdATaWE1iIXUX6vGtM5ppuAmgqjavfjFR7XKDNgPG+0pvflibgJLRSZLp0SaWYgxyAmoMiqPQ37TJzer1RMsjjE1HvFLXKhpDZk3JmGweU0A/vJ5GXj+p+7PQReyBkFcuXtgMI1N64wIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBABWwI3l+oB5q1MyRhh6nhug77Fwx9tVisEZdqu8O5SEq2opyzvJmrzoSj15dax3qbommyUDNvNM8yO0bid3ZF+ASLIVC3PdWysN2x9ndK8GzHqvWIIK/E7jwuQjjdSXPxlJg2VCuBA1EY7tF8E3grKyjgAMMeJm1Y3J7LeGF7LPdbeUO3PN0/HGKKesC/tF6WYUPICvi3J8OURWowYFl7OI/IDiUZgbKwZxym9LIESkD9uyTUvR+BXszxPIFl2b/pPQwOhctcTvQogSdabBhUnLsbEtjph3ksmJYvQol0FUayM8kplP24LLtZ5ESkPkgXYabKYlsvzfqdKm+eOZmDBA=","cancellation_requested":false,"status":"inProgress","status_details":"Pending - certificate created. Certificate request is in progress. This may take some - time based on the issuer provider. Please check again later.","request_id":"390d31fefd1746eca62bf00eb942a311"}'} - headers: - cache-control: [no-cache] - content-length: ['1371'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:02:53 GMT'] - expires: ['-1'] - location: ['https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/pending?api-version=7.0&request_id=390d31fefd1746eca62bf00eb942a311'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/pending?api-version=7.0 - response: - body: {string: '{"id":"https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/pending","issuer":{"name":"Self"},"csr":"MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAziNfVNSV89fObwLe3KtCRh8z3E2mnvDZomfjl9/Lb15TW6JjaOoudSiQK5TyhZ8gVUoq5lk3OuOM8oU7KWO76XzR+vt8yrBTk32Eno9enLt/kUS7ItHef49zKBFzd1ImBFPhWIw1N9HSmJ/0JTXZTm+cs5ecW6lpWktusU42hA3j3f4ZxOocDIHchwMmC3U8N2iWKGXcnbsPdATaWE1iIXUX6vGtM5ppuAmgqjavfjFR7XKDNgPG+0pvflibgJLRSZLp0SaWYgxyAmoMiqPQ37TJzer1RMsjjE1HvFLXKhpDZk3JmGweU0A/vJ5GXj+p+7PQReyBkFcuXtgMI1N64wIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBABWwI3l+oB5q1MyRhh6nhug77Fwx9tVisEZdqu8O5SEq2opyzvJmrzoSj15dax3qbommyUDNvNM8yO0bid3ZF+ASLIVC3PdWysN2x9ndK8GzHqvWIIK/E7jwuQjjdSXPxlJg2VCuBA1EY7tF8E3grKyjgAMMeJm1Y3J7LeGF7LPdbeUO3PN0/HGKKesC/tF6WYUPICvi3J8OURWowYFl7OI/IDiUZgbKwZxym9LIESkD9uyTUvR+BXszxPIFl2b/pPQwOhctcTvQogSdabBhUnLsbEtjph3ksmJYvQol0FUayM8kplP24LLtZ5ESkPkgXYabKYlsvzfqdKm+eOZmDBA=","cancellation_requested":false,"status":"inProgress","status_details":"Pending - certificate created. Certificate request is in progress. This may take some - time based on the issuer provider. Please check again later.","request_id":"390d31fefd1746eca62bf00eb942a311"}'} - headers: - cache-control: [no-cache] - content-length: ['1371'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:02:54 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/pending?api-version=7.0 - response: - body: {string: '{"id":"https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/pending","issuer":{"name":"Self"},"csr":"MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAziNfVNSV89fObwLe3KtCRh8z3E2mnvDZomfjl9/Lb15TW6JjaOoudSiQK5TyhZ8gVUoq5lk3OuOM8oU7KWO76XzR+vt8yrBTk32Eno9enLt/kUS7ItHef49zKBFzd1ImBFPhWIw1N9HSmJ/0JTXZTm+cs5ecW6lpWktusU42hA3j3f4ZxOocDIHchwMmC3U8N2iWKGXcnbsPdATaWE1iIXUX6vGtM5ppuAmgqjavfjFR7XKDNgPG+0pvflibgJLRSZLp0SaWYgxyAmoMiqPQ37TJzer1RMsjjE1HvFLXKhpDZk3JmGweU0A/vJ5GXj+p+7PQReyBkFcuXtgMI1N64wIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBABWwI3l+oB5q1MyRhh6nhug77Fwx9tVisEZdqu8O5SEq2opyzvJmrzoSj15dax3qbommyUDNvNM8yO0bid3ZF+ASLIVC3PdWysN2x9ndK8GzHqvWIIK/E7jwuQjjdSXPxlJg2VCuBA1EY7tF8E3grKyjgAMMeJm1Y3J7LeGF7LPdbeUO3PN0/HGKKesC/tF6WYUPICvi3J8OURWowYFl7OI/IDiUZgbKwZxym9LIESkD9uyTUvR+BXszxPIFl2b/pPQwOhctcTvQogSdabBhUnLsbEtjph3ksmJYvQol0FUayM8kplP24LLtZ5ESkPkgXYabKYlsvzfqdKm+eOZmDBA=","cancellation_requested":false,"status":"inProgress","status_details":"Pending - certificate created. Certificate request is in progress. This may take some - time based on the issuer provider. Please check again later.","request_id":"390d31fefd1746eca62bf00eb942a311"}'} - headers: - cache-control: [no-cache] - content-length: ['1371'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:02:58 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/pending?api-version=7.0 - response: - body: {string: '{"id":"https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/pending","issuer":{"name":"Self"},"csr":"MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAziNfVNSV89fObwLe3KtCRh8z3E2mnvDZomfjl9/Lb15TW6JjaOoudSiQK5TyhZ8gVUoq5lk3OuOM8oU7KWO76XzR+vt8yrBTk32Eno9enLt/kUS7ItHef49zKBFzd1ImBFPhWIw1N9HSmJ/0JTXZTm+cs5ecW6lpWktusU42hA3j3f4ZxOocDIHchwMmC3U8N2iWKGXcnbsPdATaWE1iIXUX6vGtM5ppuAmgqjavfjFR7XKDNgPG+0pvflibgJLRSZLp0SaWYgxyAmoMiqPQ37TJzer1RMsjjE1HvFLXKhpDZk3JmGweU0A/vJ5GXj+p+7PQReyBkFcuXtgMI1N64wIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBABWwI3l+oB5q1MyRhh6nhug77Fwx9tVisEZdqu8O5SEq2opyzvJmrzoSj15dax3qbommyUDNvNM8yO0bid3ZF+ASLIVC3PdWysN2x9ndK8GzHqvWIIK/E7jwuQjjdSXPxlJg2VCuBA1EY7tF8E3grKyjgAMMeJm1Y3J7LeGF7LPdbeUO3PN0/HGKKesC/tF6WYUPICvi3J8OURWowYFl7OI/IDiUZgbKwZxym9LIESkD9uyTUvR+BXszxPIFl2b/pPQwOhctcTvQogSdabBhUnLsbEtjph3ksmJYvQol0FUayM8kplP24LLtZ5ESkPkgXYabKYlsvzfqdKm+eOZmDBA=","cancellation_requested":false,"status":"inProgress","status_details":"Pending - certificate created. Certificate request is in progress. This may take some - time based on the issuer provider. Please check again later.","request_id":"390d31fefd1746eca62bf00eb942a311"}'} - headers: - cache-control: [no-cache] - content-length: ['1371'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:03:05 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/pending?api-version=7.0 - response: - body: {string: '{"id":"https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/pending","issuer":{"name":"Self"},"csr":"MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAziNfVNSV89fObwLe3KtCRh8z3E2mnvDZomfjl9/Lb15TW6JjaOoudSiQK5TyhZ8gVUoq5lk3OuOM8oU7KWO76XzR+vt8yrBTk32Eno9enLt/kUS7ItHef49zKBFzd1ImBFPhWIw1N9HSmJ/0JTXZTm+cs5ecW6lpWktusU42hA3j3f4ZxOocDIHchwMmC3U8N2iWKGXcnbsPdATaWE1iIXUX6vGtM5ppuAmgqjavfjFR7XKDNgPG+0pvflibgJLRSZLp0SaWYgxyAmoMiqPQ37TJzer1RMsjjE1HvFLXKhpDZk3JmGweU0A/vJ5GXj+p+7PQReyBkFcuXtgMI1N64wIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBABWwI3l+oB5q1MyRhh6nhug77Fwx9tVisEZdqu8O5SEq2opyzvJmrzoSj15dax3qbommyUDNvNM8yO0bid3ZF+ASLIVC3PdWysN2x9ndK8GzHqvWIIK/E7jwuQjjdSXPxlJg2VCuBA1EY7tF8E3grKyjgAMMeJm1Y3J7LeGF7LPdbeUO3PN0/HGKKesC/tF6WYUPICvi3J8OURWowYFl7OI/IDiUZgbKwZxym9LIESkD9uyTUvR+BXszxPIFl2b/pPQwOhctcTvQogSdabBhUnLsbEtjph3ksmJYvQol0FUayM8kplP24LLtZ5ESkPkgXYabKYlsvzfqdKm+eOZmDBA=","cancellation_requested":false,"status":"completed","target":"https://vault31150fb4.vault.azure.net/certificates/cert31150fb4","request_id":"390d31fefd1746eca62bf00eb942a311"}'} - headers: - cache-control: [no-cache] - content-length: ['1281'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:03:10 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/?api-version=7.0 - response: - body: {string: '{"id":"https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/959a383c37e5410b816d6b4f94d47ac2","kid":"https://vault31150fb4.vault.azure.net/keys/cert31150fb4/959a383c37e5410b816d6b4f94d47ac2","sid":"https://vault31150fb4.vault.azure.net/secrets/cert31150fb4/959a383c37e5410b816d6b4f94d47ac2","x5t":"VSl0jBOWAsCnYtDOQCr3kXSBIcI","cer":"MIIDczCCAlugAwIBAgIQIyH5CfGyQpiWrxN5tTjW1zANBgkqhkiG9w0BAQsFADAaMRgwFgYDVQQDDA8qLm1pY3Jvc29mdC5jb20wHhcNMTgwNjIyMTY1MzA3WhcNMjAwNjIyMTcwMzA3WjAaMRgwFgYDVQQDDA8qLm1pY3Jvc29mdC5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDOI19U1JXz185vAt7cq0JGHzPcTaae8NmiZ+OX38tvXlNbomNo6i51KJArlPKFnyBVSirmWTc644zyhTspY7vpfNH6+3zKsFOTfYSej16cu3+RRLsi0d5/j3MoEXN3UiYEU+FYjDU30dKYn/QlNdlOb5yzl5xbqWlaS26xTjaEDePd/hnE6hwMgdyHAyYLdTw3aJYoZdyduw90BNpYTWIhdRfq8a0zmmm4CaCqNq9+MVHtcoM2A8b7Sm9+WJuAktFJkunRJpZiDHICagyKo9DftMnN6vVEyyOMTUe8UtcqGkNmTcmYbB5TQD+8nkZeP6n7s9BF7IGQVy5e2AwjU3rjAgMBAAGjgbQwgbEwDgYDVR0PAQH/BAQDAgWgMAkGA1UdEwQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMDUGA1UdEQQuMCyCFm9uZWRyaXZlLm1pY3Jvc29mdC5jb22CEnhib3gubWljcm9zb2Z0LmNvbTAfBgNVHSMEGDAWgBSXAGi90KvaFaOq/8Wec8DfJ42AQzAdBgNVHQ4EFgQUlwBovdCr2hWjqv/FnnPA3yeNgEMwDQYJKoZIhvcNAQELBQADggEBAI9rDdXoiVp8VedCHPI+0SMjgyODApxKNSquus4pYpGyHAyJf9AmDyVLo4V5elIPXUygh4vYzKmR/3B7bgm1nqyywZXcW7FhGuCwp5+xOXFWKGxCcd3PL+qjMJ475mZe2ZLhB52CChsTIYGteVuey7qcOn/HaLdSnog8uVNBEEsmujZ3RWqavqrcrgYsrczCaOMlcjc+fEDA40sRN1BJaAJgQocWXC72JKJr0Jmd+a4boNL53wFUteRnuZcHCdGhW/uQ5nHRm2RCUvg9DRopue/Q6yq6ZuQNi4yJqoekZsPIfaHEFZUwuhONiu6UvH9qXv9tY1iK9eJCf/yESmsu5fI=","attributes":{"enabled":true,"nbf":1529686387,"exp":1592845387,"created":1529686987,"updated":1529686987,"recoveryLevel":"Purgeable"},"policy":{"id":"https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=*.microsoft.com","sans":{"dns_names":["onedrive.microsoft.com","xbox.microsoft.com"]},"ekus":["1.3.6.1.5.5.7.3.1","1.3.6.1.5.5.7.3.2"],"key_usage":["digitalSignature","keyEncipherment"],"validity_months":24,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"AutoRenew"}}],"issuer":{"name":"Self"},"attributes":{"enabled":true,"created":1529686973,"updated":1529686973}},"pending":{"id":"https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/pending"}}'} - headers: - cache-control: [no-cache] - content-length: ['2440'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:03:11 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault31150fb4.vault.azure.net/secrets/cert31150fb4/959a383c37e5410b816d6b4f94d47ac2?api-version=7.0 - response: - body: {string: '{"value":"MIIKfAIBAzCCCjwGCSqGSIb3DQEHAaCCCi0EggopMIIKJTCCBhYGCSqGSIb3DQEHAaCCBgcEggYDMIIF/zCCBfsGCyqGSIb3DQEMCgECoIIE/jCCBPowHAYKKoZIhvcNAQwBAzAOBAgnn6Xg7awVOgICB9AEggTY/n2CVRT/A/v0lG6+ZSHJUqA6G2S2Y7Pz7tGfiTnU2pwUlOGBcHaOErt80q5VauHmXtujTqzxnsT6UWs8bVzKKQEBtK5k+qF4hqiiiULzKEbD4boh6oBO7D4SPfBubQoABdVODSBfnAN12iD070rTljhvxXkQSDm76+d6tEk4ghPaYau6LR0BeJs02jOMOYfplNXfdFBHhoFR+Ath+/YgBYUaBqwHJ+iXbvKbQ/vEoQlub5Owi0i+iK5XMvoM+A1dhwaxG5W2uaDFGzuXBa0HGqwagjQKQlpWD/UFM49AfTJ7UvswXr5+vs1VRpxm2ToYAlLnImNhaMvRlRPjGKxXXr876LYU0qZb6kihQDqSPkG+OGM40Wk9g6vLmd9VxVInikfvPpe+ZrTaQw6adrrK3uTRLclHh3KDK2gcw6Jvf7QIpIxGAgsuwDlSK+j76YOSZC4TgDpxUh77OsYSw3pEsOXVFhouOVSxlPsgDK6ECP/+4xWSTLroSffc60rkHtXDsbB0uhw+47xHtCdgky9V9ZKNyosEEvJXXp52BjNQItvsEWJoscHdwnEHNq0S48U0HhQd7gaTYyj3v3lMnnQgjvZz5q9EtwvDrDljhaC6Gb+ogAX6jDQ/Adox+El0FOIO5d1udy4Piw2OAqzdJ0hb8dQPneAyA3cj1Q0ORNk6to9mjRA6+2F6glpJPauUzs79PzW5ZCOeN+oStijJeKnxOTX0Ds7sFQKlLgmBj7wM0JWIflFyb+P4xIj4m+A0WQtJywMO7zeb9Yx2vB09cclN5dq/6xxIouf+t0parPxcSylSNvjZ77AY2AeB2kmSYFEsCLYvnzAKfQrg41ev4btgOIrRsIOP3VNpJhT7ILEysP5g0DqiUkvnr7B4jxltxfiGVvY7z71skqsZcN9aAr9evmuUAC67kvr13zEbAb/6GBj6f/ihuRFnqM7LiXPqjU7O0bgsDmoiEW0v7r89mAsPwVmzcsYw2FJcQTkMiSW4yqXGQvjDwkSs4RIyFHqpmt/mtRlqSOboRlAhpX/Qd/eGHWHEjAU4RV1Aeq0t2bKJTw7mHTuZvqLtT/Cqu7E2e5BfZ+DLIFPEtrrxDwKazAkog3Sae4w5Jywqy/F8FqiI6nc7OxiWmOx8+4BoZKnWBTJDnH1HG2A6dHbrZw4LzWLykcqnBgR4F3qbw1yfADoVyuWjcqyrjb/USjk3jwapE7nnzr4tluTuF9Qn/VBxyqa7OVSvu5Gb4zJ8DZwLsjY//bPE35fFFXCkOP4U7YZbkS975cjYBRaVpKpSx1gdFU1Gc/1ifc317Xn2zPRzPXkNBb3GiCgKLNjSbZuCETCuFrltjeuGCG9kOjhEkDrtftOHfZHsqkQH1Wm9PJ6rpRfIeHUnwFeCwCokuBcn1Hm4x1+VUuSVHJPR16mTt7hmLU3sIjraDVWZfUp0nkTCpcpGky/2HC26hpiPOqk+PkEvd8/qK4LGkD8B28udOHL65IUgU1UYIwhuW+f7Zd31WiLDyL7ANgzTCBxoZuBFiY7SgbrAeNFkvfc4ZryixJ0cWUOymVhifbvtDOJpQDwMhG3g8avpkWIbcf+ilGFkH6V+BV6PRL12LoznV3WX0E9D/8kUu9D1KNQUd2jpBblbzORo8IEgocV11Ef0TDGB6TATBgkqhkiG9w0BCRUxBgQEAQAAADBXBgkqhkiG9w0BCRQxSh5IADAAMwA5AGUAOQA3ADIAOAAtADAANABiAGEALQA0ADEANgBjAC0AOQAzADUAZQAtADQAOQA0AGQAMwAyADUAYQAwADIAOQBmMHkGCSsGAQQBgjcRATFsHmoATQBpAGMAcgBvAHMAbwBmAHQAIABFAG4AaABhAG4AYwBlAGQAIABSAFMAQQAgAGEAbgBkACAAQQBFAFMAIABDAHIAeQBwAHQAbwBnAHIAYQBwAGgAaQBjACAAUAByAG8AdgBpAGQAZQByMIIEBwYJKoZIhvcNAQcGoIID+DCCA/QCAQAwggPtBgkqhkiG9w0BBwEwHAYKKoZIhvcNAQwBBjAOBAgwt5s1RoJLWAICB9CAggPAYkP4p1cVoTER2LfLaGvXBTbRkIxZNXKbjHP/GqPGjvANQUNdljXWZayddguQmYhDtSDG/NhxtDTawJZIDE94UiAIrQrdh5I0dveP2Hx6R4Z6zMTC69N4yvm6iB1c9a995PElBnW512u4yJ/L24XUvK8cGxBrS1NQW/M9uEGmcX8KdMr/Uof2Bj28+moF4k+kQmYr5Ts0KmDHXNeRC6Jk+JDEWZD4A6HCDNtnnl0z87qd7srCHlgtD+CKjE3mfQsXS0opwht2MQLBlL9u8G79U3dthLXr5pTu5th4otKsVXN75fMp3JSKnDwAMlBvzUvzNAysKuvCbUV77FhRK3mVBZvOGMY5/31/yB/PSg0EVlMEMYIfLXPgRcqhOm3nu6n1KnWN16sjELAiXG8sa6aE+Xc5hNuUI+XMUfM9cx+yV8IjO/JUQzw+y/L6dIzAogOuTroIt0ob/viUrAiU4CRvbCZZJTTuSASgb4iXeOp23cgf399R5btstqiprLYfJeZG2quv63fNU1Hnt+xKsVzOuwPP35818nfg7qK2BkhSM/1hKUZu5YxUviHIoCCjeqArxvEsUXJltQZUobYe0YOSJ8gYwyjbhZox9iXdFLajqVAhBRTrV1JWlu/A9KWAU5O3gjuoXUZbHRYcWyehCE1hRuKP31sD/zEVOVFCgDEWVwQU+PXBa8sUG23hKL1U117Y/DkgJMVXNvVVo1Hr+aSVJIQ3ZK+6XD3M0hkpf3N9ZsRzLTeCAgNod5gD/i2ad2rKWLlgHgPdK5gCWBG4ZTsREfPXbaTXSpxw/KFHk1pzRVBPBU0g/upJz35f4iG3zLk3j0RqPEgOCY/JNp4T+VwBgB1rcGmKR+V0eGeRRQvJHvIzD2IxtD/8QZTdL6bGzl88s0XNFFVENv/96Vvg78zhEvlm+T6S+w/9aVDluS0TIZzZrfJZcvNZSxblSNM+VAHTtYTnMp0h6XYlEFP9v+Roa2XCrFlujP0Ui/lrXjGf5sPWZZ7k2MlyMCglrQmPzH70IbXdsRSuqatOSg7EFXeMhh0mOOt0yp6D7OfU2tbbZh/lGlx39Rx09QpU3YoOYm95dyyEFODzOuY+IJvu1hT8WwOh5HcZKacqsUORGZbibuVtmlmsjIc81rgXpZo6wsm2vcfLRogsYM7HEPM7aDPX9xwYchSEvDBJPBxkGrVDtYxWVs/RxOCBoZosYJ5J/0PSfjSH92/CgB/9sYo3DpqxTLaL7uXciE7+Mitf88yohyWTizayOOt9AO0PKN3A84RLMDcwHzAHBgUrDgMCGgQUtyGAOwt6E1DdqVnZlNAC8xoL08EEFKzuMubjyQOq5qguoyI3cZqCfmKE","contentType":"application/x-pkcs12","id":"https://vault31150fb4.vault.azure.net/secrets/cert31150fb4/959a383c37e5410b816d6b4f94d47ac2","managed":true,"attributes":{"enabled":true,"nbf":1529686387,"exp":1592845387,"created":1529686987,"updated":1529686987,"recoveryLevel":"Purgeable"},"kid":"https://vault31150fb4.vault.azure.net/keys/cert31150fb4/959a383c37e5410b816d6b4f94d47ac2"}'} - headers: - cache-control: [no-cache] - content-length: ['3978'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:03:11 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"policy": {"key_props": {"exportable": true, "kty": "RSA", "key_size": - 2048, "reuse_key": false}, "secret_props": {"contentType": "application/x-pkcs12"}, - "x509_props": {"subject": "CN=*.microsoft.com", "sans": {"dns_names": ["onedrive.microsoft.com", - "xbox.microsoft.com"]}, "validity_months": 24}, "issuer": {"name": "Self"}}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['329'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PATCH - uri: https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/?api-version=7.0 - response: - body: {string: '{"id":"https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/959a383c37e5410b816d6b4f94d47ac2","kid":"https://vault31150fb4.vault.azure.net/keys/cert31150fb4/959a383c37e5410b816d6b4f94d47ac2","sid":"https://vault31150fb4.vault.azure.net/secrets/cert31150fb4/959a383c37e5410b816d6b4f94d47ac2","x5t":"VSl0jBOWAsCnYtDOQCr3kXSBIcI","cer":"MIIDczCCAlugAwIBAgIQIyH5CfGyQpiWrxN5tTjW1zANBgkqhkiG9w0BAQsFADAaMRgwFgYDVQQDDA8qLm1pY3Jvc29mdC5jb20wHhcNMTgwNjIyMTY1MzA3WhcNMjAwNjIyMTcwMzA3WjAaMRgwFgYDVQQDDA8qLm1pY3Jvc29mdC5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDOI19U1JXz185vAt7cq0JGHzPcTaae8NmiZ+OX38tvXlNbomNo6i51KJArlPKFnyBVSirmWTc644zyhTspY7vpfNH6+3zKsFOTfYSej16cu3+RRLsi0d5/j3MoEXN3UiYEU+FYjDU30dKYn/QlNdlOb5yzl5xbqWlaS26xTjaEDePd/hnE6hwMgdyHAyYLdTw3aJYoZdyduw90BNpYTWIhdRfq8a0zmmm4CaCqNq9+MVHtcoM2A8b7Sm9+WJuAktFJkunRJpZiDHICagyKo9DftMnN6vVEyyOMTUe8UtcqGkNmTcmYbB5TQD+8nkZeP6n7s9BF7IGQVy5e2AwjU3rjAgMBAAGjgbQwgbEwDgYDVR0PAQH/BAQDAgWgMAkGA1UdEwQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMDUGA1UdEQQuMCyCFm9uZWRyaXZlLm1pY3Jvc29mdC5jb22CEnhib3gubWljcm9zb2Z0LmNvbTAfBgNVHSMEGDAWgBSXAGi90KvaFaOq/8Wec8DfJ42AQzAdBgNVHQ4EFgQUlwBovdCr2hWjqv/FnnPA3yeNgEMwDQYJKoZIhvcNAQELBQADggEBAI9rDdXoiVp8VedCHPI+0SMjgyODApxKNSquus4pYpGyHAyJf9AmDyVLo4V5elIPXUygh4vYzKmR/3B7bgm1nqyywZXcW7FhGuCwp5+xOXFWKGxCcd3PL+qjMJ475mZe2ZLhB52CChsTIYGteVuey7qcOn/HaLdSnog8uVNBEEsmujZ3RWqavqrcrgYsrczCaOMlcjc+fEDA40sRN1BJaAJgQocWXC72JKJr0Jmd+a4boNL53wFUteRnuZcHCdGhW/uQ5nHRm2RCUvg9DRopue/Q6yq6ZuQNi4yJqoekZsPIfaHEFZUwuhONiu6UvH9qXv9tY1iK9eJCf/yESmsu5fI=","attributes":{"enabled":true,"nbf":1529686387,"exp":1592845387,"created":1529686987,"updated":1529686987,"recoveryLevel":"Purgeable"},"policy":{"id":"https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=*.microsoft.com","sans":{"dns_names":["onedrive.microsoft.com","xbox.microsoft.com"]},"ekus":["1.3.6.1.5.5.7.3.1","1.3.6.1.5.5.7.3.2"],"key_usage":["digitalSignature","keyEncipherment"],"validity_months":24,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"AutoRenew"}}],"issuer":{"name":"Self"},"attributes":{"enabled":true,"created":1529686973,"updated":1529686992}},"pending":{"id":"https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/pending"}}'} - headers: - cache-control: [no-cache] - content-length: ['2440'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:03:12 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vault31150fb4.vault.azure.net/certificates/cert31150fb4?api-version=7.0 - response: - body: {string: '{"id":"https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/959a383c37e5410b816d6b4f94d47ac2","kid":"https://vault31150fb4.vault.azure.net/keys/cert31150fb4/959a383c37e5410b816d6b4f94d47ac2","sid":"https://vault31150fb4.vault.azure.net/secrets/cert31150fb4/959a383c37e5410b816d6b4f94d47ac2","x5t":"VSl0jBOWAsCnYtDOQCr3kXSBIcI","cer":"MIIDczCCAlugAwIBAgIQIyH5CfGyQpiWrxN5tTjW1zANBgkqhkiG9w0BAQsFADAaMRgwFgYDVQQDDA8qLm1pY3Jvc29mdC5jb20wHhcNMTgwNjIyMTY1MzA3WhcNMjAwNjIyMTcwMzA3WjAaMRgwFgYDVQQDDA8qLm1pY3Jvc29mdC5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDOI19U1JXz185vAt7cq0JGHzPcTaae8NmiZ+OX38tvXlNbomNo6i51KJArlPKFnyBVSirmWTc644zyhTspY7vpfNH6+3zKsFOTfYSej16cu3+RRLsi0d5/j3MoEXN3UiYEU+FYjDU30dKYn/QlNdlOb5yzl5xbqWlaS26xTjaEDePd/hnE6hwMgdyHAyYLdTw3aJYoZdyduw90BNpYTWIhdRfq8a0zmmm4CaCqNq9+MVHtcoM2A8b7Sm9+WJuAktFJkunRJpZiDHICagyKo9DftMnN6vVEyyOMTUe8UtcqGkNmTcmYbB5TQD+8nkZeP6n7s9BF7IGQVy5e2AwjU3rjAgMBAAGjgbQwgbEwDgYDVR0PAQH/BAQDAgWgMAkGA1UdEwQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMDUGA1UdEQQuMCyCFm9uZWRyaXZlLm1pY3Jvc29mdC5jb22CEnhib3gubWljcm9zb2Z0LmNvbTAfBgNVHSMEGDAWgBSXAGi90KvaFaOq/8Wec8DfJ42AQzAdBgNVHQ4EFgQUlwBovdCr2hWjqv/FnnPA3yeNgEMwDQYJKoZIhvcNAQELBQADggEBAI9rDdXoiVp8VedCHPI+0SMjgyODApxKNSquus4pYpGyHAyJf9AmDyVLo4V5elIPXUygh4vYzKmR/3B7bgm1nqyywZXcW7FhGuCwp5+xOXFWKGxCcd3PL+qjMJ475mZe2ZLhB52CChsTIYGteVuey7qcOn/HaLdSnog8uVNBEEsmujZ3RWqavqrcrgYsrczCaOMlcjc+fEDA40sRN1BJaAJgQocWXC72JKJr0Jmd+a4boNL53wFUteRnuZcHCdGhW/uQ5nHRm2RCUvg9DRopue/Q6yq6ZuQNi4yJqoekZsPIfaHEFZUwuhONiu6UvH9qXv9tY1iK9eJCf/yESmsu5fI=","attributes":{"enabled":true,"nbf":1529686387,"exp":1592845387,"created":1529686987,"updated":1529686987,"recoveryLevel":"Purgeable"},"policy":{"id":"https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=*.microsoft.com","sans":{"dns_names":["onedrive.microsoft.com","xbox.microsoft.com"]},"ekus":["1.3.6.1.5.5.7.3.1","1.3.6.1.5.5.7.3.2"],"key_usage":["digitalSignature","keyEncipherment"],"validity_months":24,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"AutoRenew"}}],"issuer":{"name":"Self"},"attributes":{"enabled":true,"created":1529686973,"updated":1529686992}},"pending":{"id":"https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/pending"}}'} - headers: - cache-control: [no-cache] - content-length: ['2440'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:03:13 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault31150fb4.vault.azure.net/certificates/cert31150fb4/?api-version=7.0 - response: - body: {string: '{"error":{"code":"CertificateNotFound","message":"Certificate - not found: cert31150fb4"}}'} - headers: - cache-control: [no-cache] - content-length: ['88'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:03:14 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 404, message: Not Found} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_import.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_import.yaml deleted file mode 100644 index 4b99e3fe80f1..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_import.yaml +++ /dev/null @@ -1,67 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vaultb3720bfe.vault.azure.net/certificates/certimpb3720bfe/import?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:03:54 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"value": "MIIJOwIBAzCCCPcGCSqGSIb3DQEHAaCCCOgEggjkMIII4DCCBgkGCSqGSIb3DQEHAaCCBfoEggX2MIIF8jCCBe4GCyqGSIb3DQEMCgECoIIE/jCCBPowHAYKKoZIhvcNAQwBAzAOBAj15YH9pOE58AICB9AEggTYLrI+SAru2dBZRQRlJY7XQ3LeLkah2FcRR3dATDshZ2h0IA2oBrkQIdsLyAAWZ32qYR1qkWxLHn9AqXgu27AEbOk35+pITZaiy63YYBkkpR+pDdngZt19Z0PWrGwHEq5z6BHS2GLyyN8SSOCbdzCz7blj3+7IZYoMj4WOPgOm/tQ6U44SFWek46QwN2zeA4i97v7ftNNns27ms52jqfhOvTA9c/wyfZKAY4aKJfYYUmycKjnnRl012ldS2lOkASFt+lu4QCa72IY6ePtRudPCvmzRv2pkLYS6z3cI7omT8nHP3DymNOqLbFqr5O2M1ZYaLC63Q3xt3eVvbcPh3N08D1hHkhz/KDTvkRAQpvrW8ISKmgDdmzN55Pe55xHfSWGB7gPw8sZea57IxFzWHTK2yvTslooWoosmGxanYY2IG/no3EbPOWDKjPZ4ilYJe5JJ2immlxPz+2e2EOCKpDI+7fzQcRz3PTd3BK+budZ8aXX8aW/lOgKS8WmxZoKnOJBNWeTNWQFugmktXfdPHAdxMhjUXqeGQd8wTvZ4EzQNNafovwkI7IV/ZYoa++RGofVR3ZbRSiBNF6TDj/qXFt0wN/CQnsGAmQAGNiN+D4mY7i25dtTu/Jc7OxLdhAUFpHyJpyrYWLfvOiS5WYBeEDHkiPUa/8eZSPA3MXWZR1RiuDvuNqMjct1SSwdXADTtF68l/US1ksU657+XSC+6ly1A/upz+X71+C4Ho6W0751j5ZMT6xKjGh5pee7MVuduxIzXjWIy3YSd0fIT3U0A5NLEvJ9rfkx6JiHjRLx6V1tqsrtT6BsGtmCQR1UCJPLqsKVDvAINx3cPA/CGqr5OX2BGZlAihGmN6n7gv8w4O0k0LPTAe5YefgXN3m9pE867N31GtHVZaJ/UVgDNYS2jused4rw76ZWN41akx2QN0JSeMJqHXqVz6AKfz8ICS/dFnEGyBNpXiMRxrY/QPKi/wONwqsbDxRW7vZRVKs78pBkE0ksaShlZk5GkeayDWC/7Hi/NqUFtIloK9XB3paLxo1DGu5qqaF34jZdktzkXp0uZqpp+FfKZaiovMjt8F7yHCPk+LYpRsU2Cyc9DVoDA6rIgf+uEP4jppgehsxyT0lJHax2t869R2jYdsXwYUXjgwHIV0voj7bJYPGFlFjXOp6ZW86scsHM5xfsGQoK2Fp838VT34SHE1ZXU/puM7rviREHYW72pfpgGZUILQMohuTPnd8tFtAkbrmjLDo+k9xx7HUvgoFTiNNWuq/cRjr70FKNguMMTIrid+HwfmbRoaxENWdLcOTNeascER2a+37UQolKD5ksrPJG6RdNA7O2pzp3micDYRs/+s28cCIxO//J/d4nsgHp6RTuCu4+Jm9k0YTw2Xg75b2cWKrxGnDUgyIlvNPaZTB5QbMid4x44/lE0LLi9kcPQhRgrK07OnnrMgZvVGjt1CLGhKUv7KFc3xV1r1rwKkosxnoG99oCoTQtregcX5rIMjHgkc1IdflGJkZzaWMkYVFOJ4Weynz008i4ddkske5vabZs37Lb8iggUYNBYZyGzalruBgnQyK4fz38Fae4nWYjyildVfgyo/fCePR2ovOfphx9OQJi+M9BoFmPrAg+8ARDZ+R+5yzYuEc9ZoVX7nkp7LTGB3DANBgkrBgEEAYI3EQIxADATBgkqhkiG9w0BCRUxBgQEAQAAADBXBgkqhkiG9w0BCRQxSh5IAGEAOAAwAGQAZgBmADgANgAtAGUAOQA2AGUALQA0ADIAMgA0AC0AYQBhADEAMQAtAGIAZAAxADkANABkADUAYQA2AGIANwA3MF0GCSsGAQQBgjcRATFQHk4ATQBpAGMAcgBvAHMAbwBmAHQAIABTAHQAcgBvAG4AZwAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIAbwB2AGkAZABlAHIwggLPBgkqhkiG9w0BBwagggLAMIICvAIBADCCArUGCSqGSIb3DQEHATAcBgoqhkiG9w0BDAEGMA4ECNX+VL2MxzzWAgIH0ICCAojmRBO+CPfVNUO0s+BVuwhOzikAGNBmQHNChmJ/pyzPbMUbx7tO63eIVSc67iERda2WCEmVwPigaVQkPaumsfp8+L6iV/BMf5RKlyRXcwh0vUdu2Qa7qadD+gFQ2kngf4Dk6vYo2/2HxayuIf6jpwe8vql4ca3ZtWXfuRix2fwgltM0bMz1g59d7x/glTfNqxNlsty0A/rWrPJjNbOPRU2XykLuc3AtlTtYsQ32Zsmu67A7UNBw6tVtkEXlFDqhavEhUEO3dvYqMY+QLxzpZhA0q44ZZ9/ex0X6QAFNK5wuWxCbupHWsgxRwKftrxyszMHsAvNoNcTlqcctee+ecNwTJQa1/MDbnhO6/qHA7cfG1qYDq8Th635vGNMW1w3sVS7l0uEvdayAsBHWTcOC2tlMa5bfHrhY8OEIqj5bN5H9RdFy8G/W239tjDu1OYjBDydiBqzBn8HG1DSj1Pjc0kd/82d4ZU0308KFTC3yGcRad0GnEH0Oi3iEJ9HbriUbfVMbXNHOF+MktWiDVqzndGMKmuJSdfTBKvGFvejAWVO5E4mgLvoaMmbchc3BO7sLeraHnJN5hvMBaLcQI38N86mUfTR8AP6AJ9c2k514KaDLclm4z6J8dMz60nUeo5D3YD09G6BavFHxSvJ8MF0Lu5zOFzEePDRFm9mH8W0N/sFlIaYfD/GWU/w44mQucjaBk95YtqOGRIj58tGDWr8iUdHwaYKGqU24zGeRae9DhFXPzZshV1ZGsBQFRaoYkyLAwdJWIXTi+c37YaC8FRSEnnNmS79Dou1Kc3BvK4EYKAD2KxjtUebrV174gD0Q+9YuJ0GXOTspBvCFd5VT2Rw5zDNrA/J3F5fMCk4wOzAfMAcGBSsOAwIaBBSxgh2xyF+88V4vAffBmZXv8Txt4AQU4O/NX4MjxSodbE7ApNAMIvrtREwCAgfQ", - "pwd": "123", "policy": {"key_props": {"exportable": true, "kty": "RSA", "key_size": - 2048, "reuse_key": false}, "secret_props": {"contentType": "application/x-pkcs12"}}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['3339'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vaultb3720bfe.vault.azure.net/certificates/certimpb3720bfe/import?api-version=7.0 - response: - body: {string: '{"id":"https://vaultb3720bfe.vault.azure.net/certificates/certimpb3720bfe/9e99c56ddb9344a7b030076756de9245","kid":"https://vaultb3720bfe.vault.azure.net/keys/certimpb3720bfe/9e99c56ddb9344a7b030076756de9245","sid":"https://vaultb3720bfe.vault.azure.net/secrets/certimpb3720bfe/9e99c56ddb9344a7b030076756de9245","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","cer":"MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687036,"updated":1529687036,"recoveryLevel":"Purgeable"},"policy":{"id":"https://vaultb3720bfe.vault.azure.net/certificates/certimpb3720bfe/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=KeyVaultTest","ekus":[],"key_usage":[],"validity_months":297,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"EmailContacts"}}],"issuer":{"name":"Unknown"},"attributes":{"enabled":true,"created":1529687036,"updated":1529687036}}}'} - headers: - cache-control: [no-cache] - content-length: ['1802'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:03:57 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_list.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_list.yaml deleted file mode 100644 index b166040f36df..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_list.yaml +++ /dev/null @@ -1,130 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault9bf50b1f.vault.azure.net/certificates/cert09bf50b1f/import?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:04:37 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"value": "MIIJOwIBAzCCCPcGCSqGSIb3DQEHAaCCCOgEggjkMIII4DCCBgkGCSqGSIb3DQEHAaCCBfoEggX2MIIF8jCCBe4GCyqGSIb3DQEMCgECoIIE/jCCBPowHAYKKoZIhvcNAQwBAzAOBAj15YH9pOE58AICB9AEggTYLrI+SAru2dBZRQRlJY7XQ3LeLkah2FcRR3dATDshZ2h0IA2oBrkQIdsLyAAWZ32qYR1qkWxLHn9AqXgu27AEbOk35+pITZaiy63YYBkkpR+pDdngZt19Z0PWrGwHEq5z6BHS2GLyyN8SSOCbdzCz7blj3+7IZYoMj4WOPgOm/tQ6U44SFWek46QwN2zeA4i97v7ftNNns27ms52jqfhOvTA9c/wyfZKAY4aKJfYYUmycKjnnRl012ldS2lOkASFt+lu4QCa72IY6ePtRudPCvmzRv2pkLYS6z3cI7omT8nHP3DymNOqLbFqr5O2M1ZYaLC63Q3xt3eVvbcPh3N08D1hHkhz/KDTvkRAQpvrW8ISKmgDdmzN55Pe55xHfSWGB7gPw8sZea57IxFzWHTK2yvTslooWoosmGxanYY2IG/no3EbPOWDKjPZ4ilYJe5JJ2immlxPz+2e2EOCKpDI+7fzQcRz3PTd3BK+budZ8aXX8aW/lOgKS8WmxZoKnOJBNWeTNWQFugmktXfdPHAdxMhjUXqeGQd8wTvZ4EzQNNafovwkI7IV/ZYoa++RGofVR3ZbRSiBNF6TDj/qXFt0wN/CQnsGAmQAGNiN+D4mY7i25dtTu/Jc7OxLdhAUFpHyJpyrYWLfvOiS5WYBeEDHkiPUa/8eZSPA3MXWZR1RiuDvuNqMjct1SSwdXADTtF68l/US1ksU657+XSC+6ly1A/upz+X71+C4Ho6W0751j5ZMT6xKjGh5pee7MVuduxIzXjWIy3YSd0fIT3U0A5NLEvJ9rfkx6JiHjRLx6V1tqsrtT6BsGtmCQR1UCJPLqsKVDvAINx3cPA/CGqr5OX2BGZlAihGmN6n7gv8w4O0k0LPTAe5YefgXN3m9pE867N31GtHVZaJ/UVgDNYS2jused4rw76ZWN41akx2QN0JSeMJqHXqVz6AKfz8ICS/dFnEGyBNpXiMRxrY/QPKi/wONwqsbDxRW7vZRVKs78pBkE0ksaShlZk5GkeayDWC/7Hi/NqUFtIloK9XB3paLxo1DGu5qqaF34jZdktzkXp0uZqpp+FfKZaiovMjt8F7yHCPk+LYpRsU2Cyc9DVoDA6rIgf+uEP4jppgehsxyT0lJHax2t869R2jYdsXwYUXjgwHIV0voj7bJYPGFlFjXOp6ZW86scsHM5xfsGQoK2Fp838VT34SHE1ZXU/puM7rviREHYW72pfpgGZUILQMohuTPnd8tFtAkbrmjLDo+k9xx7HUvgoFTiNNWuq/cRjr70FKNguMMTIrid+HwfmbRoaxENWdLcOTNeascER2a+37UQolKD5ksrPJG6RdNA7O2pzp3micDYRs/+s28cCIxO//J/d4nsgHp6RTuCu4+Jm9k0YTw2Xg75b2cWKrxGnDUgyIlvNPaZTB5QbMid4x44/lE0LLi9kcPQhRgrK07OnnrMgZvVGjt1CLGhKUv7KFc3xV1r1rwKkosxnoG99oCoTQtregcX5rIMjHgkc1IdflGJkZzaWMkYVFOJ4Weynz008i4ddkske5vabZs37Lb8iggUYNBYZyGzalruBgnQyK4fz38Fae4nWYjyildVfgyo/fCePR2ovOfphx9OQJi+M9BoFmPrAg+8ARDZ+R+5yzYuEc9ZoVX7nkp7LTGB3DANBgkrBgEEAYI3EQIxADATBgkqhkiG9w0BCRUxBgQEAQAAADBXBgkqhkiG9w0BCRQxSh5IAGEAOAAwAGQAZgBmADgANgAtAGUAOQA2AGUALQA0ADIAMgA0AC0AYQBhADEAMQAtAGIAZAAxADkANABkADUAYQA2AGIANwA3MF0GCSsGAQQBgjcRATFQHk4ATQBpAGMAcgBvAHMAbwBmAHQAIABTAHQAcgBvAG4AZwAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIAbwB2AGkAZABlAHIwggLPBgkqhkiG9w0BBwagggLAMIICvAIBADCCArUGCSqGSIb3DQEHATAcBgoqhkiG9w0BDAEGMA4ECNX+VL2MxzzWAgIH0ICCAojmRBO+CPfVNUO0s+BVuwhOzikAGNBmQHNChmJ/pyzPbMUbx7tO63eIVSc67iERda2WCEmVwPigaVQkPaumsfp8+L6iV/BMf5RKlyRXcwh0vUdu2Qa7qadD+gFQ2kngf4Dk6vYo2/2HxayuIf6jpwe8vql4ca3ZtWXfuRix2fwgltM0bMz1g59d7x/glTfNqxNlsty0A/rWrPJjNbOPRU2XykLuc3AtlTtYsQ32Zsmu67A7UNBw6tVtkEXlFDqhavEhUEO3dvYqMY+QLxzpZhA0q44ZZ9/ex0X6QAFNK5wuWxCbupHWsgxRwKftrxyszMHsAvNoNcTlqcctee+ecNwTJQa1/MDbnhO6/qHA7cfG1qYDq8Th635vGNMW1w3sVS7l0uEvdayAsBHWTcOC2tlMa5bfHrhY8OEIqj5bN5H9RdFy8G/W239tjDu1OYjBDydiBqzBn8HG1DSj1Pjc0kd/82d4ZU0308KFTC3yGcRad0GnEH0Oi3iEJ9HbriUbfVMbXNHOF+MktWiDVqzndGMKmuJSdfTBKvGFvejAWVO5E4mgLvoaMmbchc3BO7sLeraHnJN5hvMBaLcQI38N86mUfTR8AP6AJ9c2k514KaDLclm4z6J8dMz60nUeo5D3YD09G6BavFHxSvJ8MF0Lu5zOFzEePDRFm9mH8W0N/sFlIaYfD/GWU/w44mQucjaBk95YtqOGRIj58tGDWr8iUdHwaYKGqU24zGeRae9DhFXPzZshV1ZGsBQFRaoYkyLAwdJWIXTi+c37YaC8FRSEnnNmS79Dou1Kc3BvK4EYKAD2KxjtUebrV174gD0Q+9YuJ0GXOTspBvCFd5VT2Rw5zDNrA/J3F5fMCk4wOzAfMAcGBSsOAwIaBBSxgh2xyF+88V4vAffBmZXv8Txt4AQU4O/NX4MjxSodbE7ApNAMIvrtREwCAgfQ", - "pwd": "123", "policy": {"key_props": {"exportable": true, "kty": "RSA", "key_size": - 2048, "reuse_key": false}, "secret_props": {"contentType": "application/x-pkcs12"}}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['3339'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault9bf50b1f.vault.azure.net/certificates/cert09bf50b1f/import?api-version=7.0 - response: - body: {string: '{"id":"https://vault9bf50b1f.vault.azure.net/certificates/cert09bf50b1f/2bdaaec4fde74956af7faa4e604437e8","kid":"https://vault9bf50b1f.vault.azure.net/keys/cert09bf50b1f/2bdaaec4fde74956af7faa4e604437e8","sid":"https://vault9bf50b1f.vault.azure.net/secrets/cert09bf50b1f/2bdaaec4fde74956af7faa4e604437e8","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","cer":"MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687079,"updated":1529687079,"recoveryLevel":"Purgeable"},"policy":{"id":"https://vault9bf50b1f.vault.azure.net/certificates/cert09bf50b1f/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=KeyVaultTest","ekus":[],"key_usage":[],"validity_months":297,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"EmailContacts"}}],"issuer":{"name":"Unknown"},"attributes":{"enabled":true,"created":1529687079,"updated":1529687079}}}'} - headers: - cache-control: [no-cache] - content-length: ['1794'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:04:39 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"value": "MIIJOwIBAzCCCPcGCSqGSIb3DQEHAaCCCOgEggjkMIII4DCCBgkGCSqGSIb3DQEHAaCCBfoEggX2MIIF8jCCBe4GCyqGSIb3DQEMCgECoIIE/jCCBPowHAYKKoZIhvcNAQwBAzAOBAj15YH9pOE58AICB9AEggTYLrI+SAru2dBZRQRlJY7XQ3LeLkah2FcRR3dATDshZ2h0IA2oBrkQIdsLyAAWZ32qYR1qkWxLHn9AqXgu27AEbOk35+pITZaiy63YYBkkpR+pDdngZt19Z0PWrGwHEq5z6BHS2GLyyN8SSOCbdzCz7blj3+7IZYoMj4WOPgOm/tQ6U44SFWek46QwN2zeA4i97v7ftNNns27ms52jqfhOvTA9c/wyfZKAY4aKJfYYUmycKjnnRl012ldS2lOkASFt+lu4QCa72IY6ePtRudPCvmzRv2pkLYS6z3cI7omT8nHP3DymNOqLbFqr5O2M1ZYaLC63Q3xt3eVvbcPh3N08D1hHkhz/KDTvkRAQpvrW8ISKmgDdmzN55Pe55xHfSWGB7gPw8sZea57IxFzWHTK2yvTslooWoosmGxanYY2IG/no3EbPOWDKjPZ4ilYJe5JJ2immlxPz+2e2EOCKpDI+7fzQcRz3PTd3BK+budZ8aXX8aW/lOgKS8WmxZoKnOJBNWeTNWQFugmktXfdPHAdxMhjUXqeGQd8wTvZ4EzQNNafovwkI7IV/ZYoa++RGofVR3ZbRSiBNF6TDj/qXFt0wN/CQnsGAmQAGNiN+D4mY7i25dtTu/Jc7OxLdhAUFpHyJpyrYWLfvOiS5WYBeEDHkiPUa/8eZSPA3MXWZR1RiuDvuNqMjct1SSwdXADTtF68l/US1ksU657+XSC+6ly1A/upz+X71+C4Ho6W0751j5ZMT6xKjGh5pee7MVuduxIzXjWIy3YSd0fIT3U0A5NLEvJ9rfkx6JiHjRLx6V1tqsrtT6BsGtmCQR1UCJPLqsKVDvAINx3cPA/CGqr5OX2BGZlAihGmN6n7gv8w4O0k0LPTAe5YefgXN3m9pE867N31GtHVZaJ/UVgDNYS2jused4rw76ZWN41akx2QN0JSeMJqHXqVz6AKfz8ICS/dFnEGyBNpXiMRxrY/QPKi/wONwqsbDxRW7vZRVKs78pBkE0ksaShlZk5GkeayDWC/7Hi/NqUFtIloK9XB3paLxo1DGu5qqaF34jZdktzkXp0uZqpp+FfKZaiovMjt8F7yHCPk+LYpRsU2Cyc9DVoDA6rIgf+uEP4jppgehsxyT0lJHax2t869R2jYdsXwYUXjgwHIV0voj7bJYPGFlFjXOp6ZW86scsHM5xfsGQoK2Fp838VT34SHE1ZXU/puM7rviREHYW72pfpgGZUILQMohuTPnd8tFtAkbrmjLDo+k9xx7HUvgoFTiNNWuq/cRjr70FKNguMMTIrid+HwfmbRoaxENWdLcOTNeascER2a+37UQolKD5ksrPJG6RdNA7O2pzp3micDYRs/+s28cCIxO//J/d4nsgHp6RTuCu4+Jm9k0YTw2Xg75b2cWKrxGnDUgyIlvNPaZTB5QbMid4x44/lE0LLi9kcPQhRgrK07OnnrMgZvVGjt1CLGhKUv7KFc3xV1r1rwKkosxnoG99oCoTQtregcX5rIMjHgkc1IdflGJkZzaWMkYVFOJ4Weynz008i4ddkske5vabZs37Lb8iggUYNBYZyGzalruBgnQyK4fz38Fae4nWYjyildVfgyo/fCePR2ovOfphx9OQJi+M9BoFmPrAg+8ARDZ+R+5yzYuEc9ZoVX7nkp7LTGB3DANBgkrBgEEAYI3EQIxADATBgkqhkiG9w0BCRUxBgQEAQAAADBXBgkqhkiG9w0BCRQxSh5IAGEAOAAwAGQAZgBmADgANgAtAGUAOQA2AGUALQA0ADIAMgA0AC0AYQBhADEAMQAtAGIAZAAxADkANABkADUAYQA2AGIANwA3MF0GCSsGAQQBgjcRATFQHk4ATQBpAGMAcgBvAHMAbwBmAHQAIABTAHQAcgBvAG4AZwAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIAbwB2AGkAZABlAHIwggLPBgkqhkiG9w0BBwagggLAMIICvAIBADCCArUGCSqGSIb3DQEHATAcBgoqhkiG9w0BDAEGMA4ECNX+VL2MxzzWAgIH0ICCAojmRBO+CPfVNUO0s+BVuwhOzikAGNBmQHNChmJ/pyzPbMUbx7tO63eIVSc67iERda2WCEmVwPigaVQkPaumsfp8+L6iV/BMf5RKlyRXcwh0vUdu2Qa7qadD+gFQ2kngf4Dk6vYo2/2HxayuIf6jpwe8vql4ca3ZtWXfuRix2fwgltM0bMz1g59d7x/glTfNqxNlsty0A/rWrPJjNbOPRU2XykLuc3AtlTtYsQ32Zsmu67A7UNBw6tVtkEXlFDqhavEhUEO3dvYqMY+QLxzpZhA0q44ZZ9/ex0X6QAFNK5wuWxCbupHWsgxRwKftrxyszMHsAvNoNcTlqcctee+ecNwTJQa1/MDbnhO6/qHA7cfG1qYDq8Th635vGNMW1w3sVS7l0uEvdayAsBHWTcOC2tlMa5bfHrhY8OEIqj5bN5H9RdFy8G/W239tjDu1OYjBDydiBqzBn8HG1DSj1Pjc0kd/82d4ZU0308KFTC3yGcRad0GnEH0Oi3iEJ9HbriUbfVMbXNHOF+MktWiDVqzndGMKmuJSdfTBKvGFvejAWVO5E4mgLvoaMmbchc3BO7sLeraHnJN5hvMBaLcQI38N86mUfTR8AP6AJ9c2k514KaDLclm4z6J8dMz60nUeo5D3YD09G6BavFHxSvJ8MF0Lu5zOFzEePDRFm9mH8W0N/sFlIaYfD/GWU/w44mQucjaBk95YtqOGRIj58tGDWr8iUdHwaYKGqU24zGeRae9DhFXPzZshV1ZGsBQFRaoYkyLAwdJWIXTi+c37YaC8FRSEnnNmS79Dou1Kc3BvK4EYKAD2KxjtUebrV174gD0Q+9YuJ0GXOTspBvCFd5VT2Rw5zDNrA/J3F5fMCk4wOzAfMAcGBSsOAwIaBBSxgh2xyF+88V4vAffBmZXv8Txt4AQU4O/NX4MjxSodbE7ApNAMIvrtREwCAgfQ", - "pwd": "123", "policy": {"key_props": {"exportable": true, "kty": "RSA", "key_size": - 2048, "reuse_key": false}, "secret_props": {"contentType": "application/x-pkcs12"}}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['3339'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault9bf50b1f.vault.azure.net/certificates/cert19bf50b1f/import?api-version=7.0 - response: - body: {string: '{"id":"https://vault9bf50b1f.vault.azure.net/certificates/cert19bf50b1f/76602cf78d2b46ec87e36262d4b23d4a","kid":"https://vault9bf50b1f.vault.azure.net/keys/cert19bf50b1f/76602cf78d2b46ec87e36262d4b23d4a","sid":"https://vault9bf50b1f.vault.azure.net/secrets/cert19bf50b1f/76602cf78d2b46ec87e36262d4b23d4a","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","cer":"MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687080,"updated":1529687080,"recoveryLevel":"Purgeable"},"policy":{"id":"https://vault9bf50b1f.vault.azure.net/certificates/cert19bf50b1f/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=KeyVaultTest","ekus":[],"key_usage":[],"validity_months":297,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"EmailContacts"}}],"issuer":{"name":"Unknown"},"attributes":{"enabled":true,"created":1529687080,"updated":1529687080}}}'} - headers: - cache-control: [no-cache] - content-length: ['1794'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:04:40 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault9bf50b1f.vault.azure.net/certificates?maxresults=2&api-version=7.0 - response: - body: {string: '{"value":[{"id":"https://vault9bf50b1f.vault.azure.net/certificates/cert09bf50b1f","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687079,"updated":1529687079}},{"id":"https://vault9bf50b1f.vault.azure.net/certificates/cert19bf50b1f","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687080,"updated":1529687080}}],"nextLink":null}'} - headers: - cache-control: [no-cache] - content-length: ['459'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:04:40 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_list_issuers.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_list_issuers.yaml deleted file mode 100644 index b5606c880f42..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_list_issuers.yaml +++ /dev/null @@ -1,130 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vault41e0e8c.vault.azure.net/certificates/issuers/pythonIssuer1?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:05:20 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"provider": "test", "credentials": {"account_id": "keyvaultuser", "pwd": - "password"}, "org_details": {"admin_details": [{"first_name": "Jane", "last_name": - "Doe", "email": "admin@contoso.com", "phone": "4256666666"}]}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['219'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vault41e0e8c.vault.azure.net/certificates/issuers/pythonIssuer1?api-version=7.0 - response: - body: {string: '{"id":"https://vault41e0e8c.vault.azure.net/certificates/issuers/pythonIssuer1","provider":"test","credentials":{"account_id":"keyvaultuser"},"org_details":{"zip":0,"admin_details":[{"first_name":"Jane","last_name":"Doe","email":"admin@contoso.com","phone":"4256666666"}]},"attributes":{"enabled":true,"created":1529687122,"updated":1529687122}}'} - headers: - cache-control: [no-cache] - content-length: ['345'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:05:22 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"provider": "test", "credentials": {"account_id": "keyvaultuser", "pwd": - "password"}, "org_details": {"admin_details": [{"first_name": "Jane", "last_name": - "Doe", "email": "admin@contoso.com", "phone": "4256666666"}]}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['219'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vault41e0e8c.vault.azure.net/certificates/issuers/pythonIssuer2?api-version=7.0 - response: - body: {string: '{"id":"https://vault41e0e8c.vault.azure.net/certificates/issuers/pythonIssuer2","provider":"test","credentials":{"account_id":"keyvaultuser"},"org_details":{"zip":0,"admin_details":[{"first_name":"Jane","last_name":"Doe","email":"admin@contoso.com","phone":"4256666666"}]},"attributes":{"enabled":true,"created":1529687123,"updated":1529687123}}'} - headers: - cache-control: [no-cache] - content-length: ['345'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:05:22 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault41e0e8c.vault.azure.net/certificates/issuers?maxresults=2&api-version=7.0 - response: - body: {string: '{"value":[{"id":"https://vault41e0e8c.vault.azure.net/certificates/issuers/pythonIssuer1","provider":"test"},{"id":"https://vault41e0e8c.vault.azure.net/certificates/issuers/pythonIssuer2","provider":"test"}],"nextLink":null}'} - headers: - cache-control: [no-cache] - content-length: ['225'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:05:23 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_list_versions.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_list_versions.yaml deleted file mode 100644 index 65ca63214c74..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_list_versions.yaml +++ /dev/null @@ -1,130 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault13100ef7.vault.azure.net/certificates/certver13100ef7/import?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:06:03 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"value": "MIIJOwIBAzCCCPcGCSqGSIb3DQEHAaCCCOgEggjkMIII4DCCBgkGCSqGSIb3DQEHAaCCBfoEggX2MIIF8jCCBe4GCyqGSIb3DQEMCgECoIIE/jCCBPowHAYKKoZIhvcNAQwBAzAOBAj15YH9pOE58AICB9AEggTYLrI+SAru2dBZRQRlJY7XQ3LeLkah2FcRR3dATDshZ2h0IA2oBrkQIdsLyAAWZ32qYR1qkWxLHn9AqXgu27AEbOk35+pITZaiy63YYBkkpR+pDdngZt19Z0PWrGwHEq5z6BHS2GLyyN8SSOCbdzCz7blj3+7IZYoMj4WOPgOm/tQ6U44SFWek46QwN2zeA4i97v7ftNNns27ms52jqfhOvTA9c/wyfZKAY4aKJfYYUmycKjnnRl012ldS2lOkASFt+lu4QCa72IY6ePtRudPCvmzRv2pkLYS6z3cI7omT8nHP3DymNOqLbFqr5O2M1ZYaLC63Q3xt3eVvbcPh3N08D1hHkhz/KDTvkRAQpvrW8ISKmgDdmzN55Pe55xHfSWGB7gPw8sZea57IxFzWHTK2yvTslooWoosmGxanYY2IG/no3EbPOWDKjPZ4ilYJe5JJ2immlxPz+2e2EOCKpDI+7fzQcRz3PTd3BK+budZ8aXX8aW/lOgKS8WmxZoKnOJBNWeTNWQFugmktXfdPHAdxMhjUXqeGQd8wTvZ4EzQNNafovwkI7IV/ZYoa++RGofVR3ZbRSiBNF6TDj/qXFt0wN/CQnsGAmQAGNiN+D4mY7i25dtTu/Jc7OxLdhAUFpHyJpyrYWLfvOiS5WYBeEDHkiPUa/8eZSPA3MXWZR1RiuDvuNqMjct1SSwdXADTtF68l/US1ksU657+XSC+6ly1A/upz+X71+C4Ho6W0751j5ZMT6xKjGh5pee7MVuduxIzXjWIy3YSd0fIT3U0A5NLEvJ9rfkx6JiHjRLx6V1tqsrtT6BsGtmCQR1UCJPLqsKVDvAINx3cPA/CGqr5OX2BGZlAihGmN6n7gv8w4O0k0LPTAe5YefgXN3m9pE867N31GtHVZaJ/UVgDNYS2jused4rw76ZWN41akx2QN0JSeMJqHXqVz6AKfz8ICS/dFnEGyBNpXiMRxrY/QPKi/wONwqsbDxRW7vZRVKs78pBkE0ksaShlZk5GkeayDWC/7Hi/NqUFtIloK9XB3paLxo1DGu5qqaF34jZdktzkXp0uZqpp+FfKZaiovMjt8F7yHCPk+LYpRsU2Cyc9DVoDA6rIgf+uEP4jppgehsxyT0lJHax2t869R2jYdsXwYUXjgwHIV0voj7bJYPGFlFjXOp6ZW86scsHM5xfsGQoK2Fp838VT34SHE1ZXU/puM7rviREHYW72pfpgGZUILQMohuTPnd8tFtAkbrmjLDo+k9xx7HUvgoFTiNNWuq/cRjr70FKNguMMTIrid+HwfmbRoaxENWdLcOTNeascER2a+37UQolKD5ksrPJG6RdNA7O2pzp3micDYRs/+s28cCIxO//J/d4nsgHp6RTuCu4+Jm9k0YTw2Xg75b2cWKrxGnDUgyIlvNPaZTB5QbMid4x44/lE0LLi9kcPQhRgrK07OnnrMgZvVGjt1CLGhKUv7KFc3xV1r1rwKkosxnoG99oCoTQtregcX5rIMjHgkc1IdflGJkZzaWMkYVFOJ4Weynz008i4ddkske5vabZs37Lb8iggUYNBYZyGzalruBgnQyK4fz38Fae4nWYjyildVfgyo/fCePR2ovOfphx9OQJi+M9BoFmPrAg+8ARDZ+R+5yzYuEc9ZoVX7nkp7LTGB3DANBgkrBgEEAYI3EQIxADATBgkqhkiG9w0BCRUxBgQEAQAAADBXBgkqhkiG9w0BCRQxSh5IAGEAOAAwAGQAZgBmADgANgAtAGUAOQA2AGUALQA0ADIAMgA0AC0AYQBhADEAMQAtAGIAZAAxADkANABkADUAYQA2AGIANwA3MF0GCSsGAQQBgjcRATFQHk4ATQBpAGMAcgBvAHMAbwBmAHQAIABTAHQAcgBvAG4AZwAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIAbwB2AGkAZABlAHIwggLPBgkqhkiG9w0BBwagggLAMIICvAIBADCCArUGCSqGSIb3DQEHATAcBgoqhkiG9w0BDAEGMA4ECNX+VL2MxzzWAgIH0ICCAojmRBO+CPfVNUO0s+BVuwhOzikAGNBmQHNChmJ/pyzPbMUbx7tO63eIVSc67iERda2WCEmVwPigaVQkPaumsfp8+L6iV/BMf5RKlyRXcwh0vUdu2Qa7qadD+gFQ2kngf4Dk6vYo2/2HxayuIf6jpwe8vql4ca3ZtWXfuRix2fwgltM0bMz1g59d7x/glTfNqxNlsty0A/rWrPJjNbOPRU2XykLuc3AtlTtYsQ32Zsmu67A7UNBw6tVtkEXlFDqhavEhUEO3dvYqMY+QLxzpZhA0q44ZZ9/ex0X6QAFNK5wuWxCbupHWsgxRwKftrxyszMHsAvNoNcTlqcctee+ecNwTJQa1/MDbnhO6/qHA7cfG1qYDq8Th635vGNMW1w3sVS7l0uEvdayAsBHWTcOC2tlMa5bfHrhY8OEIqj5bN5H9RdFy8G/W239tjDu1OYjBDydiBqzBn8HG1DSj1Pjc0kd/82d4ZU0308KFTC3yGcRad0GnEH0Oi3iEJ9HbriUbfVMbXNHOF+MktWiDVqzndGMKmuJSdfTBKvGFvejAWVO5E4mgLvoaMmbchc3BO7sLeraHnJN5hvMBaLcQI38N86mUfTR8AP6AJ9c2k514KaDLclm4z6J8dMz60nUeo5D3YD09G6BavFHxSvJ8MF0Lu5zOFzEePDRFm9mH8W0N/sFlIaYfD/GWU/w44mQucjaBk95YtqOGRIj58tGDWr8iUdHwaYKGqU24zGeRae9DhFXPzZshV1ZGsBQFRaoYkyLAwdJWIXTi+c37YaC8FRSEnnNmS79Dou1Kc3BvK4EYKAD2KxjtUebrV174gD0Q+9YuJ0GXOTspBvCFd5VT2Rw5zDNrA/J3F5fMCk4wOzAfMAcGBSsOAwIaBBSxgh2xyF+88V4vAffBmZXv8Txt4AQU4O/NX4MjxSodbE7ApNAMIvrtREwCAgfQ", - "pwd": "123", "policy": {"key_props": {"exportable": true, "kty": "RSA", "key_size": - 2048, "reuse_key": false}, "secret_props": {"contentType": "application/x-pkcs12"}}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['3339'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault13100ef7.vault.azure.net/certificates/certver13100ef7/import?api-version=7.0 - response: - body: {string: '{"id":"https://vault13100ef7.vault.azure.net/certificates/certver13100ef7/6d0dae6931924d81aa08c86f99271875","kid":"https://vault13100ef7.vault.azure.net/keys/certver13100ef7/6d0dae6931924d81aa08c86f99271875","sid":"https://vault13100ef7.vault.azure.net/secrets/certver13100ef7/6d0dae6931924d81aa08c86f99271875","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","cer":"MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687164,"updated":1529687164,"recoveryLevel":"Purgeable"},"policy":{"id":"https://vault13100ef7.vault.azure.net/certificates/certver13100ef7/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=KeyVaultTest","ekus":[],"key_usage":[],"validity_months":297,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"EmailContacts"}}],"issuer":{"name":"Unknown"},"attributes":{"enabled":true,"created":1529687164,"updated":1529687164}}}'} - headers: - cache-control: [no-cache] - content-length: ['1802'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:06:04 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"value": "MIIJOwIBAzCCCPcGCSqGSIb3DQEHAaCCCOgEggjkMIII4DCCBgkGCSqGSIb3DQEHAaCCBfoEggX2MIIF8jCCBe4GCyqGSIb3DQEMCgECoIIE/jCCBPowHAYKKoZIhvcNAQwBAzAOBAj15YH9pOE58AICB9AEggTYLrI+SAru2dBZRQRlJY7XQ3LeLkah2FcRR3dATDshZ2h0IA2oBrkQIdsLyAAWZ32qYR1qkWxLHn9AqXgu27AEbOk35+pITZaiy63YYBkkpR+pDdngZt19Z0PWrGwHEq5z6BHS2GLyyN8SSOCbdzCz7blj3+7IZYoMj4WOPgOm/tQ6U44SFWek46QwN2zeA4i97v7ftNNns27ms52jqfhOvTA9c/wyfZKAY4aKJfYYUmycKjnnRl012ldS2lOkASFt+lu4QCa72IY6ePtRudPCvmzRv2pkLYS6z3cI7omT8nHP3DymNOqLbFqr5O2M1ZYaLC63Q3xt3eVvbcPh3N08D1hHkhz/KDTvkRAQpvrW8ISKmgDdmzN55Pe55xHfSWGB7gPw8sZea57IxFzWHTK2yvTslooWoosmGxanYY2IG/no3EbPOWDKjPZ4ilYJe5JJ2immlxPz+2e2EOCKpDI+7fzQcRz3PTd3BK+budZ8aXX8aW/lOgKS8WmxZoKnOJBNWeTNWQFugmktXfdPHAdxMhjUXqeGQd8wTvZ4EzQNNafovwkI7IV/ZYoa++RGofVR3ZbRSiBNF6TDj/qXFt0wN/CQnsGAmQAGNiN+D4mY7i25dtTu/Jc7OxLdhAUFpHyJpyrYWLfvOiS5WYBeEDHkiPUa/8eZSPA3MXWZR1RiuDvuNqMjct1SSwdXADTtF68l/US1ksU657+XSC+6ly1A/upz+X71+C4Ho6W0751j5ZMT6xKjGh5pee7MVuduxIzXjWIy3YSd0fIT3U0A5NLEvJ9rfkx6JiHjRLx6V1tqsrtT6BsGtmCQR1UCJPLqsKVDvAINx3cPA/CGqr5OX2BGZlAihGmN6n7gv8w4O0k0LPTAe5YefgXN3m9pE867N31GtHVZaJ/UVgDNYS2jused4rw76ZWN41akx2QN0JSeMJqHXqVz6AKfz8ICS/dFnEGyBNpXiMRxrY/QPKi/wONwqsbDxRW7vZRVKs78pBkE0ksaShlZk5GkeayDWC/7Hi/NqUFtIloK9XB3paLxo1DGu5qqaF34jZdktzkXp0uZqpp+FfKZaiovMjt8F7yHCPk+LYpRsU2Cyc9DVoDA6rIgf+uEP4jppgehsxyT0lJHax2t869R2jYdsXwYUXjgwHIV0voj7bJYPGFlFjXOp6ZW86scsHM5xfsGQoK2Fp838VT34SHE1ZXU/puM7rviREHYW72pfpgGZUILQMohuTPnd8tFtAkbrmjLDo+k9xx7HUvgoFTiNNWuq/cRjr70FKNguMMTIrid+HwfmbRoaxENWdLcOTNeascER2a+37UQolKD5ksrPJG6RdNA7O2pzp3micDYRs/+s28cCIxO//J/d4nsgHp6RTuCu4+Jm9k0YTw2Xg75b2cWKrxGnDUgyIlvNPaZTB5QbMid4x44/lE0LLi9kcPQhRgrK07OnnrMgZvVGjt1CLGhKUv7KFc3xV1r1rwKkosxnoG99oCoTQtregcX5rIMjHgkc1IdflGJkZzaWMkYVFOJ4Weynz008i4ddkske5vabZs37Lb8iggUYNBYZyGzalruBgnQyK4fz38Fae4nWYjyildVfgyo/fCePR2ovOfphx9OQJi+M9BoFmPrAg+8ARDZ+R+5yzYuEc9ZoVX7nkp7LTGB3DANBgkrBgEEAYI3EQIxADATBgkqhkiG9w0BCRUxBgQEAQAAADBXBgkqhkiG9w0BCRQxSh5IAGEAOAAwAGQAZgBmADgANgAtAGUAOQA2AGUALQA0ADIAMgA0AC0AYQBhADEAMQAtAGIAZAAxADkANABkADUAYQA2AGIANwA3MF0GCSsGAQQBgjcRATFQHk4ATQBpAGMAcgBvAHMAbwBmAHQAIABTAHQAcgBvAG4AZwAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIAbwB2AGkAZABlAHIwggLPBgkqhkiG9w0BBwagggLAMIICvAIBADCCArUGCSqGSIb3DQEHATAcBgoqhkiG9w0BDAEGMA4ECNX+VL2MxzzWAgIH0ICCAojmRBO+CPfVNUO0s+BVuwhOzikAGNBmQHNChmJ/pyzPbMUbx7tO63eIVSc67iERda2WCEmVwPigaVQkPaumsfp8+L6iV/BMf5RKlyRXcwh0vUdu2Qa7qadD+gFQ2kngf4Dk6vYo2/2HxayuIf6jpwe8vql4ca3ZtWXfuRix2fwgltM0bMz1g59d7x/glTfNqxNlsty0A/rWrPJjNbOPRU2XykLuc3AtlTtYsQ32Zsmu67A7UNBw6tVtkEXlFDqhavEhUEO3dvYqMY+QLxzpZhA0q44ZZ9/ex0X6QAFNK5wuWxCbupHWsgxRwKftrxyszMHsAvNoNcTlqcctee+ecNwTJQa1/MDbnhO6/qHA7cfG1qYDq8Th635vGNMW1w3sVS7l0uEvdayAsBHWTcOC2tlMa5bfHrhY8OEIqj5bN5H9RdFy8G/W239tjDu1OYjBDydiBqzBn8HG1DSj1Pjc0kd/82d4ZU0308KFTC3yGcRad0GnEH0Oi3iEJ9HbriUbfVMbXNHOF+MktWiDVqzndGMKmuJSdfTBKvGFvejAWVO5E4mgLvoaMmbchc3BO7sLeraHnJN5hvMBaLcQI38N86mUfTR8AP6AJ9c2k514KaDLclm4z6J8dMz60nUeo5D3YD09G6BavFHxSvJ8MF0Lu5zOFzEePDRFm9mH8W0N/sFlIaYfD/GWU/w44mQucjaBk95YtqOGRIj58tGDWr8iUdHwaYKGqU24zGeRae9DhFXPzZshV1ZGsBQFRaoYkyLAwdJWIXTi+c37YaC8FRSEnnNmS79Dou1Kc3BvK4EYKAD2KxjtUebrV174gD0Q+9YuJ0GXOTspBvCFd5VT2Rw5zDNrA/J3F5fMCk4wOzAfMAcGBSsOAwIaBBSxgh2xyF+88V4vAffBmZXv8Txt4AQU4O/NX4MjxSodbE7ApNAMIvrtREwCAgfQ", - "pwd": "123", "policy": {"key_props": {"exportable": true, "kty": "RSA", "key_size": - 2048, "reuse_key": false}, "secret_props": {"contentType": "application/x-pkcs12"}}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['3339'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault13100ef7.vault.azure.net/certificates/certver13100ef7/import?api-version=7.0 - response: - body: {string: '{"id":"https://vault13100ef7.vault.azure.net/certificates/certver13100ef7/a3cf867332ce417fa97e2c7a69c75179","kid":"https://vault13100ef7.vault.azure.net/keys/certver13100ef7/a3cf867332ce417fa97e2c7a69c75179","sid":"https://vault13100ef7.vault.azure.net/secrets/certver13100ef7/a3cf867332ce417fa97e2c7a69c75179","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","cer":"MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687165,"updated":1529687165,"recoveryLevel":"Purgeable"},"policy":{"id":"https://vault13100ef7.vault.azure.net/certificates/certver13100ef7/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=KeyVaultTest","ekus":[],"key_usage":[],"validity_months":297,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"EmailContacts"}}],"issuer":{"name":"Unknown"},"attributes":{"enabled":true,"created":1529687164,"updated":1529687165}}}'} - headers: - cache-control: [no-cache] - content-length: ['1802'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:06:05 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault13100ef7.vault.azure.net/certificates/certver13100ef7/versions?api-version=7.0 - response: - body: {string: '{"value":[{"id":"https://vault13100ef7.vault.azure.net/certificates/certver13100ef7/6d0dae6931924d81aa08c86f99271875","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687164,"updated":1529687164}},{"id":"https://vault13100ef7.vault.azure.net/certificates/certver13100ef7/a3cf867332ce417fa97e2c7a69c75179","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687165,"updated":1529687165}}],"nextLink":null}'} - headers: - cache-control: [no-cache] - content-length: ['529'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:06:05 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_manual_enrolled.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_manual_enrolled.yaml deleted file mode 100644 index 8c98709caad7..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_manual_enrolled.yaml +++ /dev/null @@ -1,131 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault30a00f95.vault.azure.net/certificates/unknownIssuerCert/create?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:06:48 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"policy": {"key_props": {"exportable": true, "kty": "RSA", "key_size": - 2048, "reuse_key": false}, "secret_props": {"contentType": "application/x-pkcs12"}, - "x509_props": {"subject": "CN=*.microsoft.com", "sans": {"dns_names": ["onedrive.microsoft.com", - "xbox.microsoft.com"]}, "validity_months": 24}, "issuer": {"name": "Unknown"}}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['332'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault30a00f95.vault.azure.net/certificates/unknownIssuerCert/create?api-version=7.0 - response: - body: {string: '{"id":"https://vault30a00f95.vault.azure.net/certificates/unknownIssuerCert/pending","issuer":{"name":"Unknown"},"csr":"MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwEoqztuGs02TEIgp/YLFn0CZupaHl+L+C4PCtgDyRPD28Jm15ORYAuk/zZYbMYKu4Y/ugaXoLS1uFZuTkUAgFHNyXhzuBsxpY6olvSinWUNzWDyw8fBID8ihomBzcm+8ZSkSYApNIdD0y+burKVyqrf0IhgFa/Ujp/+dtNlmPp8t1TUy8Cc+hkiR/NRe4tqzxpILYcM4sZmjMvUqNRvs7kSa0xCOCJFdFpW2ryXEbF494HLSf5/IorynXuFv5Y34MBz5aXKQQmJQlW/gtX+9SeMhh37VjOpgS47WydEOsa8BfJp9QmGLUdV4ZBqqGt/v2BaLEA4SRWxrJqm22wK/FQIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBAIOBdezzYiur/i2PZ4XJ1T2ZNo3ZzYY4qz8qqCsygOhTPHqyil2rIB95xxYvw1gr58kyVzmai8dKKikBVtbWzKFWzseiRn1v5dESUNz15om9Hv4JRel6voqAdfb56cwgMp3KDsBCEexvppyzEcm/dsG4kymPllha6wYDHy3aXtSjEdruRTKE4SchDkexj7awgR1f6sBouNROKGdIpeBY+MghfD4WZC32V+5s8mmchPLqIHOGWmWF71kZFbyszpIojEZ/XX3yx1bUjWA9VFqF30XUJqQyAAXnaVyx8WRjZPU4ADcpW3T7boEgoLa9NLgy490gX642R1o0lB4QKKRo3k4=","cancellation_requested":false,"status":"inProgress","status_details":"Pending - certificate created. Please Perform Merge to complete the request.","request_id":"cb6a4c8c43234b3d86346bd244fe7bfa"}'} - headers: - cache-control: [no-cache] - content-length: ['1309'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:06:50 GMT'] - expires: ['-1'] - location: ['https://vault30a00f95.vault.azure.net/certificates/unknownIssuerCert/pending?api-version=7.0&request_id=cb6a4c8c43234b3d86346bd244fe7bfa'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/pkcs10] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault30a00f95.vault.azure.net/certificates/unknownIssuerCert/pending?api-version=7.0 - response: - body: {string: MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwEoqztuGs02TEIgp/YLFn0CZupaHl+L+C4PCtgDyRPD28Jm15ORYAuk/zZYbMYKu4Y/ugaXoLS1uFZuTkUAgFHNyXhzuBsxpY6olvSinWUNzWDyw8fBID8ihomBzcm+8ZSkSYApNIdD0y+burKVyqrf0IhgFa/Ujp/+dtNlmPp8t1TUy8Cc+hkiR/NRe4tqzxpILYcM4sZmjMvUqNRvs7kSa0xCOCJFdFpW2ryXEbF494HLSf5/IorynXuFv5Y34MBz5aXKQQmJQlW/gtX+9SeMhh37VjOpgS47WydEOsa8BfJp9QmGLUdV4ZBqqGt/v2BaLEA4SRWxrJqm22wK/FQIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBAIOBdezzYiur/i2PZ4XJ1T2ZNo3ZzYY4qz8qqCsygOhTPHqyil2rIB95xxYvw1gr58kyVzmai8dKKikBVtbWzKFWzseiRn1v5dESUNz15om9Hv4JRel6voqAdfb56cwgMp3KDsBCEexvppyzEcm/dsG4kymPllha6wYDHy3aXtSjEdruRTKE4SchDkexj7awgR1f6sBouNROKGdIpeBY+MghfD4WZC32V+5s8mmchPLqIHOGWmWF71kZFbyszpIojEZ/XX3yx1bUjWA9VFqF30XUJqQyAAXnaVyx8WRjZPU4ADcpW3T7boEgoLa9NLgy490gX642R1o0lB4QKKRo3k4=} - headers: - cache-control: [no-cache] - content-length: ['992'] - content-type: [application/pkcs10; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:06:50 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vault30a00f95.vault.azure.net/certificates/unknownIssuerCert?api-version=7.0 - response: - body: {string: '{"id":"https://vault30a00f95.vault.azure.net/certificates/unknownIssuerCert/f954a027098a4f00848d049d3e4b8c5f","attributes":{"enabled":false,"nbf":1529686609,"exp":1592845609,"created":1529687209,"updated":1529687209,"recoveryLevel":"Purgeable"},"policy":{"id":"https://vault30a00f95.vault.azure.net/certificates/unknownIssuerCert/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=*.microsoft.com","sans":{"dns_names":["onedrive.microsoft.com","xbox.microsoft.com"]},"ekus":["1.3.6.1.5.5.7.3.1","1.3.6.1.5.5.7.3.2"],"key_usage":["digitalSignature","keyEncipherment"],"validity_months":24,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"EmailContacts"}}],"issuer":{"name":"Unknown"},"attributes":{"enabled":true,"created":1529687209,"updated":1529687209}},"pending":{"id":"https://vault30a00f95.vault.azure.net/certificates/unknownIssuerCert/pending"}}'} - headers: - cache-control: [no-cache] - content-length: ['1037'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:06:51 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_policy.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_policy.yaml deleted file mode 100644 index 4d1f674d0726..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_policy.yaml +++ /dev/null @@ -1,160 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vaultb36b0bf3.vault.azure.net/certificates/policyCertificate/import?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:07:31 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"value": "MIIJOwIBAzCCCPcGCSqGSIb3DQEHAaCCCOgEggjkMIII4DCCBgkGCSqGSIb3DQEHAaCCBfoEggX2MIIF8jCCBe4GCyqGSIb3DQEMCgECoIIE/jCCBPowHAYKKoZIhvcNAQwBAzAOBAj15YH9pOE58AICB9AEggTYLrI+SAru2dBZRQRlJY7XQ3LeLkah2FcRR3dATDshZ2h0IA2oBrkQIdsLyAAWZ32qYR1qkWxLHn9AqXgu27AEbOk35+pITZaiy63YYBkkpR+pDdngZt19Z0PWrGwHEq5z6BHS2GLyyN8SSOCbdzCz7blj3+7IZYoMj4WOPgOm/tQ6U44SFWek46QwN2zeA4i97v7ftNNns27ms52jqfhOvTA9c/wyfZKAY4aKJfYYUmycKjnnRl012ldS2lOkASFt+lu4QCa72IY6ePtRudPCvmzRv2pkLYS6z3cI7omT8nHP3DymNOqLbFqr5O2M1ZYaLC63Q3xt3eVvbcPh3N08D1hHkhz/KDTvkRAQpvrW8ISKmgDdmzN55Pe55xHfSWGB7gPw8sZea57IxFzWHTK2yvTslooWoosmGxanYY2IG/no3EbPOWDKjPZ4ilYJe5JJ2immlxPz+2e2EOCKpDI+7fzQcRz3PTd3BK+budZ8aXX8aW/lOgKS8WmxZoKnOJBNWeTNWQFugmktXfdPHAdxMhjUXqeGQd8wTvZ4EzQNNafovwkI7IV/ZYoa++RGofVR3ZbRSiBNF6TDj/qXFt0wN/CQnsGAmQAGNiN+D4mY7i25dtTu/Jc7OxLdhAUFpHyJpyrYWLfvOiS5WYBeEDHkiPUa/8eZSPA3MXWZR1RiuDvuNqMjct1SSwdXADTtF68l/US1ksU657+XSC+6ly1A/upz+X71+C4Ho6W0751j5ZMT6xKjGh5pee7MVuduxIzXjWIy3YSd0fIT3U0A5NLEvJ9rfkx6JiHjRLx6V1tqsrtT6BsGtmCQR1UCJPLqsKVDvAINx3cPA/CGqr5OX2BGZlAihGmN6n7gv8w4O0k0LPTAe5YefgXN3m9pE867N31GtHVZaJ/UVgDNYS2jused4rw76ZWN41akx2QN0JSeMJqHXqVz6AKfz8ICS/dFnEGyBNpXiMRxrY/QPKi/wONwqsbDxRW7vZRVKs78pBkE0ksaShlZk5GkeayDWC/7Hi/NqUFtIloK9XB3paLxo1DGu5qqaF34jZdktzkXp0uZqpp+FfKZaiovMjt8F7yHCPk+LYpRsU2Cyc9DVoDA6rIgf+uEP4jppgehsxyT0lJHax2t869R2jYdsXwYUXjgwHIV0voj7bJYPGFlFjXOp6ZW86scsHM5xfsGQoK2Fp838VT34SHE1ZXU/puM7rviREHYW72pfpgGZUILQMohuTPnd8tFtAkbrmjLDo+k9xx7HUvgoFTiNNWuq/cRjr70FKNguMMTIrid+HwfmbRoaxENWdLcOTNeascER2a+37UQolKD5ksrPJG6RdNA7O2pzp3micDYRs/+s28cCIxO//J/d4nsgHp6RTuCu4+Jm9k0YTw2Xg75b2cWKrxGnDUgyIlvNPaZTB5QbMid4x44/lE0LLi9kcPQhRgrK07OnnrMgZvVGjt1CLGhKUv7KFc3xV1r1rwKkosxnoG99oCoTQtregcX5rIMjHgkc1IdflGJkZzaWMkYVFOJ4Weynz008i4ddkske5vabZs37Lb8iggUYNBYZyGzalruBgnQyK4fz38Fae4nWYjyildVfgyo/fCePR2ovOfphx9OQJi+M9BoFmPrAg+8ARDZ+R+5yzYuEc9ZoVX7nkp7LTGB3DANBgkrBgEEAYI3EQIxADATBgkqhkiG9w0BCRUxBgQEAQAAADBXBgkqhkiG9w0BCRQxSh5IAGEAOAAwAGQAZgBmADgANgAtAGUAOQA2AGUALQA0ADIAMgA0AC0AYQBhADEAMQAtAGIAZAAxADkANABkADUAYQA2AGIANwA3MF0GCSsGAQQBgjcRATFQHk4ATQBpAGMAcgBvAHMAbwBmAHQAIABTAHQAcgBvAG4AZwAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIAbwB2AGkAZABlAHIwggLPBgkqhkiG9w0BBwagggLAMIICvAIBADCCArUGCSqGSIb3DQEHATAcBgoqhkiG9w0BDAEGMA4ECNX+VL2MxzzWAgIH0ICCAojmRBO+CPfVNUO0s+BVuwhOzikAGNBmQHNChmJ/pyzPbMUbx7tO63eIVSc67iERda2WCEmVwPigaVQkPaumsfp8+L6iV/BMf5RKlyRXcwh0vUdu2Qa7qadD+gFQ2kngf4Dk6vYo2/2HxayuIf6jpwe8vql4ca3ZtWXfuRix2fwgltM0bMz1g59d7x/glTfNqxNlsty0A/rWrPJjNbOPRU2XykLuc3AtlTtYsQ32Zsmu67A7UNBw6tVtkEXlFDqhavEhUEO3dvYqMY+QLxzpZhA0q44ZZ9/ex0X6QAFNK5wuWxCbupHWsgxRwKftrxyszMHsAvNoNcTlqcctee+ecNwTJQa1/MDbnhO6/qHA7cfG1qYDq8Th635vGNMW1w3sVS7l0uEvdayAsBHWTcOC2tlMa5bfHrhY8OEIqj5bN5H9RdFy8G/W239tjDu1OYjBDydiBqzBn8HG1DSj1Pjc0kd/82d4ZU0308KFTC3yGcRad0GnEH0Oi3iEJ9HbriUbfVMbXNHOF+MktWiDVqzndGMKmuJSdfTBKvGFvejAWVO5E4mgLvoaMmbchc3BO7sLeraHnJN5hvMBaLcQI38N86mUfTR8AP6AJ9c2k514KaDLclm4z6J8dMz60nUeo5D3YD09G6BavFHxSvJ8MF0Lu5zOFzEePDRFm9mH8W0N/sFlIaYfD/GWU/w44mQucjaBk95YtqOGRIj58tGDWr8iUdHwaYKGqU24zGeRae9DhFXPzZshV1ZGsBQFRaoYkyLAwdJWIXTi+c37YaC8FRSEnnNmS79Dou1Kc3BvK4EYKAD2KxjtUebrV174gD0Q+9YuJ0GXOTspBvCFd5VT2Rw5zDNrA/J3F5fMCk4wOzAfMAcGBSsOAwIaBBSxgh2xyF+88V4vAffBmZXv8Txt4AQU4O/NX4MjxSodbE7ApNAMIvrtREwCAgfQ", - "pwd": "123", "policy": {"key_props": {"exportable": true, "kty": "RSA", "key_size": - 2048, "reuse_key": false}, "secret_props": {"contentType": "application/x-pkcs12"}}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['3339'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vaultb36b0bf3.vault.azure.net/certificates/policyCertificate/import?api-version=7.0 - response: - body: {string: '{"id":"https://vaultb36b0bf3.vault.azure.net/certificates/policyCertificate/132b0c69dfbc4c5881fa1446ceb881b4","kid":"https://vaultb36b0bf3.vault.azure.net/keys/policyCertificate/132b0c69dfbc4c5881fa1446ceb881b4","sid":"https://vaultb36b0bf3.vault.azure.net/secrets/policyCertificate/132b0c69dfbc4c5881fa1446ceb881b4","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","cer":"MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687252,"updated":1529687252,"recoveryLevel":"Purgeable"},"policy":{"id":"https://vaultb36b0bf3.vault.azure.net/certificates/policyCertificate/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=KeyVaultTest","ekus":[],"key_usage":[],"validity_months":297,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"EmailContacts"}}],"issuer":{"name":"Unknown"},"attributes":{"enabled":true,"created":1529687252,"updated":1529687252}}}'} - headers: - cache-control: [no-cache] - content-length: ['1810'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:07:32 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vaultb36b0bf3.vault.azure.net/certificates/policyCertificate/policy?api-version=7.0 - response: - body: {string: '{"id":"https://vaultb36b0bf3.vault.azure.net/certificates/policyCertificate/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=KeyVaultTest","ekus":[],"key_usage":[],"validity_months":297,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"EmailContacts"}}],"issuer":{"name":"Unknown"},"attributes":{"enabled":true,"created":1529687252,"updated":1529687252}}'} - headers: - cache-control: [no-cache] - content-length: ['540'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:07:33 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"key_props": {"exportable": true, "kty": "RSA", "key_size": 2048, "reuse_key": - false}, "secret_props": {"contentType": "application/x-pkcs12"}, "issuer": {"name": - "Self"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['172'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PATCH - uri: https://vaultb36b0bf3.vault.azure.net/certificates/policyCertificate/policy?api-version=7.0 - response: - body: {string: '{"id":"https://vaultb36b0bf3.vault.azure.net/certificates/policyCertificate/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=KeyVaultTest","ekus":[],"key_usage":[],"validity_months":297,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"EmailContacts"}}],"issuer":{"name":"Self"},"attributes":{"enabled":true,"created":1529687252,"updated":1529687254}}'} - headers: - cache-control: [no-cache] - content-length: ['537'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:07:33 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vaultb36b0bf3.vault.azure.net/certificates/policyCertificate/policy?api-version=7.0 - response: - body: {string: '{"id":"https://vaultb36b0bf3.vault.azure.net/certificates/policyCertificate/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=KeyVaultTest","ekus":[],"key_usage":[],"validity_months":297,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"EmailContacts"}}],"issuer":{"name":"Self"},"attributes":{"enabled":true,"created":1529687252,"updated":1529687254}}'} - headers: - cache-control: [no-cache] - content-length: ['537'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:07:34 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_recover_and_purge.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_recover_and_purge.yaml deleted file mode 100644 index b2f016a599bf..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_certificates.test_recover_and_purge.yaml +++ /dev/null @@ -1,530 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault5139106d.vault.azure.net/certificates/certrec05139106d/import?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:08:15 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"value": "MIIJOwIBAzCCCPcGCSqGSIb3DQEHAaCCCOgEggjkMIII4DCCBgkGCSqGSIb3DQEHAaCCBfoEggX2MIIF8jCCBe4GCyqGSIb3DQEMCgECoIIE/jCCBPowHAYKKoZIhvcNAQwBAzAOBAj15YH9pOE58AICB9AEggTYLrI+SAru2dBZRQRlJY7XQ3LeLkah2FcRR3dATDshZ2h0IA2oBrkQIdsLyAAWZ32qYR1qkWxLHn9AqXgu27AEbOk35+pITZaiy63YYBkkpR+pDdngZt19Z0PWrGwHEq5z6BHS2GLyyN8SSOCbdzCz7blj3+7IZYoMj4WOPgOm/tQ6U44SFWek46QwN2zeA4i97v7ftNNns27ms52jqfhOvTA9c/wyfZKAY4aKJfYYUmycKjnnRl012ldS2lOkASFt+lu4QCa72IY6ePtRudPCvmzRv2pkLYS6z3cI7omT8nHP3DymNOqLbFqr5O2M1ZYaLC63Q3xt3eVvbcPh3N08D1hHkhz/KDTvkRAQpvrW8ISKmgDdmzN55Pe55xHfSWGB7gPw8sZea57IxFzWHTK2yvTslooWoosmGxanYY2IG/no3EbPOWDKjPZ4ilYJe5JJ2immlxPz+2e2EOCKpDI+7fzQcRz3PTd3BK+budZ8aXX8aW/lOgKS8WmxZoKnOJBNWeTNWQFugmktXfdPHAdxMhjUXqeGQd8wTvZ4EzQNNafovwkI7IV/ZYoa++RGofVR3ZbRSiBNF6TDj/qXFt0wN/CQnsGAmQAGNiN+D4mY7i25dtTu/Jc7OxLdhAUFpHyJpyrYWLfvOiS5WYBeEDHkiPUa/8eZSPA3MXWZR1RiuDvuNqMjct1SSwdXADTtF68l/US1ksU657+XSC+6ly1A/upz+X71+C4Ho6W0751j5ZMT6xKjGh5pee7MVuduxIzXjWIy3YSd0fIT3U0A5NLEvJ9rfkx6JiHjRLx6V1tqsrtT6BsGtmCQR1UCJPLqsKVDvAINx3cPA/CGqr5OX2BGZlAihGmN6n7gv8w4O0k0LPTAe5YefgXN3m9pE867N31GtHVZaJ/UVgDNYS2jused4rw76ZWN41akx2QN0JSeMJqHXqVz6AKfz8ICS/dFnEGyBNpXiMRxrY/QPKi/wONwqsbDxRW7vZRVKs78pBkE0ksaShlZk5GkeayDWC/7Hi/NqUFtIloK9XB3paLxo1DGu5qqaF34jZdktzkXp0uZqpp+FfKZaiovMjt8F7yHCPk+LYpRsU2Cyc9DVoDA6rIgf+uEP4jppgehsxyT0lJHax2t869R2jYdsXwYUXjgwHIV0voj7bJYPGFlFjXOp6ZW86scsHM5xfsGQoK2Fp838VT34SHE1ZXU/puM7rviREHYW72pfpgGZUILQMohuTPnd8tFtAkbrmjLDo+k9xx7HUvgoFTiNNWuq/cRjr70FKNguMMTIrid+HwfmbRoaxENWdLcOTNeascER2a+37UQolKD5ksrPJG6RdNA7O2pzp3micDYRs/+s28cCIxO//J/d4nsgHp6RTuCu4+Jm9k0YTw2Xg75b2cWKrxGnDUgyIlvNPaZTB5QbMid4x44/lE0LLi9kcPQhRgrK07OnnrMgZvVGjt1CLGhKUv7KFc3xV1r1rwKkosxnoG99oCoTQtregcX5rIMjHgkc1IdflGJkZzaWMkYVFOJ4Weynz008i4ddkske5vabZs37Lb8iggUYNBYZyGzalruBgnQyK4fz38Fae4nWYjyildVfgyo/fCePR2ovOfphx9OQJi+M9BoFmPrAg+8ARDZ+R+5yzYuEc9ZoVX7nkp7LTGB3DANBgkrBgEEAYI3EQIxADATBgkqhkiG9w0BCRUxBgQEAQAAADBXBgkqhkiG9w0BCRQxSh5IAGEAOAAwAGQAZgBmADgANgAtAGUAOQA2AGUALQA0ADIAMgA0AC0AYQBhADEAMQAtAGIAZAAxADkANABkADUAYQA2AGIANwA3MF0GCSsGAQQBgjcRATFQHk4ATQBpAGMAcgBvAHMAbwBmAHQAIABTAHQAcgBvAG4AZwAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIAbwB2AGkAZABlAHIwggLPBgkqhkiG9w0BBwagggLAMIICvAIBADCCArUGCSqGSIb3DQEHATAcBgoqhkiG9w0BDAEGMA4ECNX+VL2MxzzWAgIH0ICCAojmRBO+CPfVNUO0s+BVuwhOzikAGNBmQHNChmJ/pyzPbMUbx7tO63eIVSc67iERda2WCEmVwPigaVQkPaumsfp8+L6iV/BMf5RKlyRXcwh0vUdu2Qa7qadD+gFQ2kngf4Dk6vYo2/2HxayuIf6jpwe8vql4ca3ZtWXfuRix2fwgltM0bMz1g59d7x/glTfNqxNlsty0A/rWrPJjNbOPRU2XykLuc3AtlTtYsQ32Zsmu67A7UNBw6tVtkEXlFDqhavEhUEO3dvYqMY+QLxzpZhA0q44ZZ9/ex0X6QAFNK5wuWxCbupHWsgxRwKftrxyszMHsAvNoNcTlqcctee+ecNwTJQa1/MDbnhO6/qHA7cfG1qYDq8Th635vGNMW1w3sVS7l0uEvdayAsBHWTcOC2tlMa5bfHrhY8OEIqj5bN5H9RdFy8G/W239tjDu1OYjBDydiBqzBn8HG1DSj1Pjc0kd/82d4ZU0308KFTC3yGcRad0GnEH0Oi3iEJ9HbriUbfVMbXNHOF+MktWiDVqzndGMKmuJSdfTBKvGFvejAWVO5E4mgLvoaMmbchc3BO7sLeraHnJN5hvMBaLcQI38N86mUfTR8AP6AJ9c2k514KaDLclm4z6J8dMz60nUeo5D3YD09G6BavFHxSvJ8MF0Lu5zOFzEePDRFm9mH8W0N/sFlIaYfD/GWU/w44mQucjaBk95YtqOGRIj58tGDWr8iUdHwaYKGqU24zGeRae9DhFXPzZshV1ZGsBQFRaoYkyLAwdJWIXTi+c37YaC8FRSEnnNmS79Dou1Kc3BvK4EYKAD2KxjtUebrV174gD0Q+9YuJ0GXOTspBvCFd5VT2Rw5zDNrA/J3F5fMCk4wOzAfMAcGBSsOAwIaBBSxgh2xyF+88V4vAffBmZXv8Txt4AQU4O/NX4MjxSodbE7ApNAMIvrtREwCAgfQ", - "pwd": "123", "policy": {"key_props": {"exportable": true, "kty": "RSA", "key_size": - 2048, "reuse_key": false}, "secret_props": {"contentType": "application/x-pkcs12"}}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['3339'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault5139106d.vault.azure.net/certificates/certrec05139106d/import?api-version=7.0 - response: - body: {string: '{"id":"https://vault5139106d.vault.azure.net/certificates/certrec05139106d/ca1cce61e4b1422ab72c0d95ce13ee51","kid":"https://vault5139106d.vault.azure.net/keys/certrec05139106d/ca1cce61e4b1422ab72c0d95ce13ee51","sid":"https://vault5139106d.vault.azure.net/secrets/certrec05139106d/ca1cce61e4b1422ab72c0d95ce13ee51","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","cer":"MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687297,"updated":1529687297,"recoveryLevel":"Recoverable+Purgeable"},"policy":{"id":"https://vault5139106d.vault.azure.net/certificates/certrec05139106d/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=KeyVaultTest","ekus":[],"key_usage":[],"validity_months":297,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"EmailContacts"}}],"issuer":{"name":"Unknown"},"attributes":{"enabled":true,"created":1529687297,"updated":1529687297}}}'} - headers: - cache-control: [no-cache] - content-length: ['1818'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:08:17 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"value": "MIIJOwIBAzCCCPcGCSqGSIb3DQEHAaCCCOgEggjkMIII4DCCBgkGCSqGSIb3DQEHAaCCBfoEggX2MIIF8jCCBe4GCyqGSIb3DQEMCgECoIIE/jCCBPowHAYKKoZIhvcNAQwBAzAOBAj15YH9pOE58AICB9AEggTYLrI+SAru2dBZRQRlJY7XQ3LeLkah2FcRR3dATDshZ2h0IA2oBrkQIdsLyAAWZ32qYR1qkWxLHn9AqXgu27AEbOk35+pITZaiy63YYBkkpR+pDdngZt19Z0PWrGwHEq5z6BHS2GLyyN8SSOCbdzCz7blj3+7IZYoMj4WOPgOm/tQ6U44SFWek46QwN2zeA4i97v7ftNNns27ms52jqfhOvTA9c/wyfZKAY4aKJfYYUmycKjnnRl012ldS2lOkASFt+lu4QCa72IY6ePtRudPCvmzRv2pkLYS6z3cI7omT8nHP3DymNOqLbFqr5O2M1ZYaLC63Q3xt3eVvbcPh3N08D1hHkhz/KDTvkRAQpvrW8ISKmgDdmzN55Pe55xHfSWGB7gPw8sZea57IxFzWHTK2yvTslooWoosmGxanYY2IG/no3EbPOWDKjPZ4ilYJe5JJ2immlxPz+2e2EOCKpDI+7fzQcRz3PTd3BK+budZ8aXX8aW/lOgKS8WmxZoKnOJBNWeTNWQFugmktXfdPHAdxMhjUXqeGQd8wTvZ4EzQNNafovwkI7IV/ZYoa++RGofVR3ZbRSiBNF6TDj/qXFt0wN/CQnsGAmQAGNiN+D4mY7i25dtTu/Jc7OxLdhAUFpHyJpyrYWLfvOiS5WYBeEDHkiPUa/8eZSPA3MXWZR1RiuDvuNqMjct1SSwdXADTtF68l/US1ksU657+XSC+6ly1A/upz+X71+C4Ho6W0751j5ZMT6xKjGh5pee7MVuduxIzXjWIy3YSd0fIT3U0A5NLEvJ9rfkx6JiHjRLx6V1tqsrtT6BsGtmCQR1UCJPLqsKVDvAINx3cPA/CGqr5OX2BGZlAihGmN6n7gv8w4O0k0LPTAe5YefgXN3m9pE867N31GtHVZaJ/UVgDNYS2jused4rw76ZWN41akx2QN0JSeMJqHXqVz6AKfz8ICS/dFnEGyBNpXiMRxrY/QPKi/wONwqsbDxRW7vZRVKs78pBkE0ksaShlZk5GkeayDWC/7Hi/NqUFtIloK9XB3paLxo1DGu5qqaF34jZdktzkXp0uZqpp+FfKZaiovMjt8F7yHCPk+LYpRsU2Cyc9DVoDA6rIgf+uEP4jppgehsxyT0lJHax2t869R2jYdsXwYUXjgwHIV0voj7bJYPGFlFjXOp6ZW86scsHM5xfsGQoK2Fp838VT34SHE1ZXU/puM7rviREHYW72pfpgGZUILQMohuTPnd8tFtAkbrmjLDo+k9xx7HUvgoFTiNNWuq/cRjr70FKNguMMTIrid+HwfmbRoaxENWdLcOTNeascER2a+37UQolKD5ksrPJG6RdNA7O2pzp3micDYRs/+s28cCIxO//J/d4nsgHp6RTuCu4+Jm9k0YTw2Xg75b2cWKrxGnDUgyIlvNPaZTB5QbMid4x44/lE0LLi9kcPQhRgrK07OnnrMgZvVGjt1CLGhKUv7KFc3xV1r1rwKkosxnoG99oCoTQtregcX5rIMjHgkc1IdflGJkZzaWMkYVFOJ4Weynz008i4ddkske5vabZs37Lb8iggUYNBYZyGzalruBgnQyK4fz38Fae4nWYjyildVfgyo/fCePR2ovOfphx9OQJi+M9BoFmPrAg+8ARDZ+R+5yzYuEc9ZoVX7nkp7LTGB3DANBgkrBgEEAYI3EQIxADATBgkqhkiG9w0BCRUxBgQEAQAAADBXBgkqhkiG9w0BCRQxSh5IAGEAOAAwAGQAZgBmADgANgAtAGUAOQA2AGUALQA0ADIAMgA0AC0AYQBhADEAMQAtAGIAZAAxADkANABkADUAYQA2AGIANwA3MF0GCSsGAQQBgjcRATFQHk4ATQBpAGMAcgBvAHMAbwBmAHQAIABTAHQAcgBvAG4AZwAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIAbwB2AGkAZABlAHIwggLPBgkqhkiG9w0BBwagggLAMIICvAIBADCCArUGCSqGSIb3DQEHATAcBgoqhkiG9w0BDAEGMA4ECNX+VL2MxzzWAgIH0ICCAojmRBO+CPfVNUO0s+BVuwhOzikAGNBmQHNChmJ/pyzPbMUbx7tO63eIVSc67iERda2WCEmVwPigaVQkPaumsfp8+L6iV/BMf5RKlyRXcwh0vUdu2Qa7qadD+gFQ2kngf4Dk6vYo2/2HxayuIf6jpwe8vql4ca3ZtWXfuRix2fwgltM0bMz1g59d7x/glTfNqxNlsty0A/rWrPJjNbOPRU2XykLuc3AtlTtYsQ32Zsmu67A7UNBw6tVtkEXlFDqhavEhUEO3dvYqMY+QLxzpZhA0q44ZZ9/ex0X6QAFNK5wuWxCbupHWsgxRwKftrxyszMHsAvNoNcTlqcctee+ecNwTJQa1/MDbnhO6/qHA7cfG1qYDq8Th635vGNMW1w3sVS7l0uEvdayAsBHWTcOC2tlMa5bfHrhY8OEIqj5bN5H9RdFy8G/W239tjDu1OYjBDydiBqzBn8HG1DSj1Pjc0kd/82d4ZU0308KFTC3yGcRad0GnEH0Oi3iEJ9HbriUbfVMbXNHOF+MktWiDVqzndGMKmuJSdfTBKvGFvejAWVO5E4mgLvoaMmbchc3BO7sLeraHnJN5hvMBaLcQI38N86mUfTR8AP6AJ9c2k514KaDLclm4z6J8dMz60nUeo5D3YD09G6BavFHxSvJ8MF0Lu5zOFzEePDRFm9mH8W0N/sFlIaYfD/GWU/w44mQucjaBk95YtqOGRIj58tGDWr8iUdHwaYKGqU24zGeRae9DhFXPzZshV1ZGsBQFRaoYkyLAwdJWIXTi+c37YaC8FRSEnnNmS79Dou1Kc3BvK4EYKAD2KxjtUebrV174gD0Q+9YuJ0GXOTspBvCFd5VT2Rw5zDNrA/J3F5fMCk4wOzAfMAcGBSsOAwIaBBSxgh2xyF+88V4vAffBmZXv8Txt4AQU4O/NX4MjxSodbE7ApNAMIvrtREwCAgfQ", - "pwd": "123", "policy": {"key_props": {"exportable": true, "kty": "RSA", "key_size": - 2048, "reuse_key": false}, "secret_props": {"contentType": "application/x-pkcs12"}}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['3339'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault5139106d.vault.azure.net/certificates/certrec15139106d/import?api-version=7.0 - response: - body: {string: '{"id":"https://vault5139106d.vault.azure.net/certificates/certrec15139106d/c76a29a9e7cf4e139d2288f09f36dc0f","kid":"https://vault5139106d.vault.azure.net/keys/certrec15139106d/c76a29a9e7cf4e139d2288f09f36dc0f","sid":"https://vault5139106d.vault.azure.net/secrets/certrec15139106d/c76a29a9e7cf4e139d2288f09f36dc0f","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","cer":"MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687298,"updated":1529687298,"recoveryLevel":"Recoverable+Purgeable"},"policy":{"id":"https://vault5139106d.vault.azure.net/certificates/certrec15139106d/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=KeyVaultTest","ekus":[],"key_usage":[],"validity_months":297,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"EmailContacts"}}],"issuer":{"name":"Unknown"},"attributes":{"enabled":true,"created":1529687298,"updated":1529687298}}}'} - headers: - cache-control: [no-cache] - content-length: ['1818'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:08:18 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"value": "MIIJOwIBAzCCCPcGCSqGSIb3DQEHAaCCCOgEggjkMIII4DCCBgkGCSqGSIb3DQEHAaCCBfoEggX2MIIF8jCCBe4GCyqGSIb3DQEMCgECoIIE/jCCBPowHAYKKoZIhvcNAQwBAzAOBAj15YH9pOE58AICB9AEggTYLrI+SAru2dBZRQRlJY7XQ3LeLkah2FcRR3dATDshZ2h0IA2oBrkQIdsLyAAWZ32qYR1qkWxLHn9AqXgu27AEbOk35+pITZaiy63YYBkkpR+pDdngZt19Z0PWrGwHEq5z6BHS2GLyyN8SSOCbdzCz7blj3+7IZYoMj4WOPgOm/tQ6U44SFWek46QwN2zeA4i97v7ftNNns27ms52jqfhOvTA9c/wyfZKAY4aKJfYYUmycKjnnRl012ldS2lOkASFt+lu4QCa72IY6ePtRudPCvmzRv2pkLYS6z3cI7omT8nHP3DymNOqLbFqr5O2M1ZYaLC63Q3xt3eVvbcPh3N08D1hHkhz/KDTvkRAQpvrW8ISKmgDdmzN55Pe55xHfSWGB7gPw8sZea57IxFzWHTK2yvTslooWoosmGxanYY2IG/no3EbPOWDKjPZ4ilYJe5JJ2immlxPz+2e2EOCKpDI+7fzQcRz3PTd3BK+budZ8aXX8aW/lOgKS8WmxZoKnOJBNWeTNWQFugmktXfdPHAdxMhjUXqeGQd8wTvZ4EzQNNafovwkI7IV/ZYoa++RGofVR3ZbRSiBNF6TDj/qXFt0wN/CQnsGAmQAGNiN+D4mY7i25dtTu/Jc7OxLdhAUFpHyJpyrYWLfvOiS5WYBeEDHkiPUa/8eZSPA3MXWZR1RiuDvuNqMjct1SSwdXADTtF68l/US1ksU657+XSC+6ly1A/upz+X71+C4Ho6W0751j5ZMT6xKjGh5pee7MVuduxIzXjWIy3YSd0fIT3U0A5NLEvJ9rfkx6JiHjRLx6V1tqsrtT6BsGtmCQR1UCJPLqsKVDvAINx3cPA/CGqr5OX2BGZlAihGmN6n7gv8w4O0k0LPTAe5YefgXN3m9pE867N31GtHVZaJ/UVgDNYS2jused4rw76ZWN41akx2QN0JSeMJqHXqVz6AKfz8ICS/dFnEGyBNpXiMRxrY/QPKi/wONwqsbDxRW7vZRVKs78pBkE0ksaShlZk5GkeayDWC/7Hi/NqUFtIloK9XB3paLxo1DGu5qqaF34jZdktzkXp0uZqpp+FfKZaiovMjt8F7yHCPk+LYpRsU2Cyc9DVoDA6rIgf+uEP4jppgehsxyT0lJHax2t869R2jYdsXwYUXjgwHIV0voj7bJYPGFlFjXOp6ZW86scsHM5xfsGQoK2Fp838VT34SHE1ZXU/puM7rviREHYW72pfpgGZUILQMohuTPnd8tFtAkbrmjLDo+k9xx7HUvgoFTiNNWuq/cRjr70FKNguMMTIrid+HwfmbRoaxENWdLcOTNeascER2a+37UQolKD5ksrPJG6RdNA7O2pzp3micDYRs/+s28cCIxO//J/d4nsgHp6RTuCu4+Jm9k0YTw2Xg75b2cWKrxGnDUgyIlvNPaZTB5QbMid4x44/lE0LLi9kcPQhRgrK07OnnrMgZvVGjt1CLGhKUv7KFc3xV1r1rwKkosxnoG99oCoTQtregcX5rIMjHgkc1IdflGJkZzaWMkYVFOJ4Weynz008i4ddkske5vabZs37Lb8iggUYNBYZyGzalruBgnQyK4fz38Fae4nWYjyildVfgyo/fCePR2ovOfphx9OQJi+M9BoFmPrAg+8ARDZ+R+5yzYuEc9ZoVX7nkp7LTGB3DANBgkrBgEEAYI3EQIxADATBgkqhkiG9w0BCRUxBgQEAQAAADBXBgkqhkiG9w0BCRQxSh5IAGEAOAAwAGQAZgBmADgANgAtAGUAOQA2AGUALQA0ADIAMgA0AC0AYQBhADEAMQAtAGIAZAAxADkANABkADUAYQA2AGIANwA3MF0GCSsGAQQBgjcRATFQHk4ATQBpAGMAcgBvAHMAbwBmAHQAIABTAHQAcgBvAG4AZwAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIAbwB2AGkAZABlAHIwggLPBgkqhkiG9w0BBwagggLAMIICvAIBADCCArUGCSqGSIb3DQEHATAcBgoqhkiG9w0BDAEGMA4ECNX+VL2MxzzWAgIH0ICCAojmRBO+CPfVNUO0s+BVuwhOzikAGNBmQHNChmJ/pyzPbMUbx7tO63eIVSc67iERda2WCEmVwPigaVQkPaumsfp8+L6iV/BMf5RKlyRXcwh0vUdu2Qa7qadD+gFQ2kngf4Dk6vYo2/2HxayuIf6jpwe8vql4ca3ZtWXfuRix2fwgltM0bMz1g59d7x/glTfNqxNlsty0A/rWrPJjNbOPRU2XykLuc3AtlTtYsQ32Zsmu67A7UNBw6tVtkEXlFDqhavEhUEO3dvYqMY+QLxzpZhA0q44ZZ9/ex0X6QAFNK5wuWxCbupHWsgxRwKftrxyszMHsAvNoNcTlqcctee+ecNwTJQa1/MDbnhO6/qHA7cfG1qYDq8Th635vGNMW1w3sVS7l0uEvdayAsBHWTcOC2tlMa5bfHrhY8OEIqj5bN5H9RdFy8G/W239tjDu1OYjBDydiBqzBn8HG1DSj1Pjc0kd/82d4ZU0308KFTC3yGcRad0GnEH0Oi3iEJ9HbriUbfVMbXNHOF+MktWiDVqzndGMKmuJSdfTBKvGFvejAWVO5E4mgLvoaMmbchc3BO7sLeraHnJN5hvMBaLcQI38N86mUfTR8AP6AJ9c2k514KaDLclm4z6J8dMz60nUeo5D3YD09G6BavFHxSvJ8MF0Lu5zOFzEePDRFm9mH8W0N/sFlIaYfD/GWU/w44mQucjaBk95YtqOGRIj58tGDWr8iUdHwaYKGqU24zGeRae9DhFXPzZshV1ZGsBQFRaoYkyLAwdJWIXTi+c37YaC8FRSEnnNmS79Dou1Kc3BvK4EYKAD2KxjtUebrV174gD0Q+9YuJ0GXOTspBvCFd5VT2Rw5zDNrA/J3F5fMCk4wOzAfMAcGBSsOAwIaBBSxgh2xyF+88V4vAffBmZXv8Txt4AQU4O/NX4MjxSodbE7ApNAMIvrtREwCAgfQ", - "pwd": "123", "policy": {"key_props": {"exportable": true, "kty": "RSA", "key_size": - 2048, "reuse_key": false}, "secret_props": {"contentType": "application/x-pkcs12"}}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['3339'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault5139106d.vault.azure.net/certificates/certprg05139106d/import?api-version=7.0 - response: - body: {string: '{"id":"https://vault5139106d.vault.azure.net/certificates/certprg05139106d/bcab0d9d961f46b69d33b5fab855d31f","kid":"https://vault5139106d.vault.azure.net/keys/certprg05139106d/bcab0d9d961f46b69d33b5fab855d31f","sid":"https://vault5139106d.vault.azure.net/secrets/certprg05139106d/bcab0d9d961f46b69d33b5fab855d31f","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","cer":"MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687299,"updated":1529687299,"recoveryLevel":"Recoverable+Purgeable"},"policy":{"id":"https://vault5139106d.vault.azure.net/certificates/certprg05139106d/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=KeyVaultTest","ekus":[],"key_usage":[],"validity_months":297,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"EmailContacts"}}],"issuer":{"name":"Unknown"},"attributes":{"enabled":true,"created":1529687299,"updated":1529687299}}}'} - headers: - cache-control: [no-cache] - content-length: ['1818'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:08:19 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"value": "MIIJOwIBAzCCCPcGCSqGSIb3DQEHAaCCCOgEggjkMIII4DCCBgkGCSqGSIb3DQEHAaCCBfoEggX2MIIF8jCCBe4GCyqGSIb3DQEMCgECoIIE/jCCBPowHAYKKoZIhvcNAQwBAzAOBAj15YH9pOE58AICB9AEggTYLrI+SAru2dBZRQRlJY7XQ3LeLkah2FcRR3dATDshZ2h0IA2oBrkQIdsLyAAWZ32qYR1qkWxLHn9AqXgu27AEbOk35+pITZaiy63YYBkkpR+pDdngZt19Z0PWrGwHEq5z6BHS2GLyyN8SSOCbdzCz7blj3+7IZYoMj4WOPgOm/tQ6U44SFWek46QwN2zeA4i97v7ftNNns27ms52jqfhOvTA9c/wyfZKAY4aKJfYYUmycKjnnRl012ldS2lOkASFt+lu4QCa72IY6ePtRudPCvmzRv2pkLYS6z3cI7omT8nHP3DymNOqLbFqr5O2M1ZYaLC63Q3xt3eVvbcPh3N08D1hHkhz/KDTvkRAQpvrW8ISKmgDdmzN55Pe55xHfSWGB7gPw8sZea57IxFzWHTK2yvTslooWoosmGxanYY2IG/no3EbPOWDKjPZ4ilYJe5JJ2immlxPz+2e2EOCKpDI+7fzQcRz3PTd3BK+budZ8aXX8aW/lOgKS8WmxZoKnOJBNWeTNWQFugmktXfdPHAdxMhjUXqeGQd8wTvZ4EzQNNafovwkI7IV/ZYoa++RGofVR3ZbRSiBNF6TDj/qXFt0wN/CQnsGAmQAGNiN+D4mY7i25dtTu/Jc7OxLdhAUFpHyJpyrYWLfvOiS5WYBeEDHkiPUa/8eZSPA3MXWZR1RiuDvuNqMjct1SSwdXADTtF68l/US1ksU657+XSC+6ly1A/upz+X71+C4Ho6W0751j5ZMT6xKjGh5pee7MVuduxIzXjWIy3YSd0fIT3U0A5NLEvJ9rfkx6JiHjRLx6V1tqsrtT6BsGtmCQR1UCJPLqsKVDvAINx3cPA/CGqr5OX2BGZlAihGmN6n7gv8w4O0k0LPTAe5YefgXN3m9pE867N31GtHVZaJ/UVgDNYS2jused4rw76ZWN41akx2QN0JSeMJqHXqVz6AKfz8ICS/dFnEGyBNpXiMRxrY/QPKi/wONwqsbDxRW7vZRVKs78pBkE0ksaShlZk5GkeayDWC/7Hi/NqUFtIloK9XB3paLxo1DGu5qqaF34jZdktzkXp0uZqpp+FfKZaiovMjt8F7yHCPk+LYpRsU2Cyc9DVoDA6rIgf+uEP4jppgehsxyT0lJHax2t869R2jYdsXwYUXjgwHIV0voj7bJYPGFlFjXOp6ZW86scsHM5xfsGQoK2Fp838VT34SHE1ZXU/puM7rviREHYW72pfpgGZUILQMohuTPnd8tFtAkbrmjLDo+k9xx7HUvgoFTiNNWuq/cRjr70FKNguMMTIrid+HwfmbRoaxENWdLcOTNeascER2a+37UQolKD5ksrPJG6RdNA7O2pzp3micDYRs/+s28cCIxO//J/d4nsgHp6RTuCu4+Jm9k0YTw2Xg75b2cWKrxGnDUgyIlvNPaZTB5QbMid4x44/lE0LLi9kcPQhRgrK07OnnrMgZvVGjt1CLGhKUv7KFc3xV1r1rwKkosxnoG99oCoTQtregcX5rIMjHgkc1IdflGJkZzaWMkYVFOJ4Weynz008i4ddkske5vabZs37Lb8iggUYNBYZyGzalruBgnQyK4fz38Fae4nWYjyildVfgyo/fCePR2ovOfphx9OQJi+M9BoFmPrAg+8ARDZ+R+5yzYuEc9ZoVX7nkp7LTGB3DANBgkrBgEEAYI3EQIxADATBgkqhkiG9w0BCRUxBgQEAQAAADBXBgkqhkiG9w0BCRQxSh5IAGEAOAAwAGQAZgBmADgANgAtAGUAOQA2AGUALQA0ADIAMgA0AC0AYQBhADEAMQAtAGIAZAAxADkANABkADUAYQA2AGIANwA3MF0GCSsGAQQBgjcRATFQHk4ATQBpAGMAcgBvAHMAbwBmAHQAIABTAHQAcgBvAG4AZwAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIAbwB2AGkAZABlAHIwggLPBgkqhkiG9w0BBwagggLAMIICvAIBADCCArUGCSqGSIb3DQEHATAcBgoqhkiG9w0BDAEGMA4ECNX+VL2MxzzWAgIH0ICCAojmRBO+CPfVNUO0s+BVuwhOzikAGNBmQHNChmJ/pyzPbMUbx7tO63eIVSc67iERda2WCEmVwPigaVQkPaumsfp8+L6iV/BMf5RKlyRXcwh0vUdu2Qa7qadD+gFQ2kngf4Dk6vYo2/2HxayuIf6jpwe8vql4ca3ZtWXfuRix2fwgltM0bMz1g59d7x/glTfNqxNlsty0A/rWrPJjNbOPRU2XykLuc3AtlTtYsQ32Zsmu67A7UNBw6tVtkEXlFDqhavEhUEO3dvYqMY+QLxzpZhA0q44ZZ9/ex0X6QAFNK5wuWxCbupHWsgxRwKftrxyszMHsAvNoNcTlqcctee+ecNwTJQa1/MDbnhO6/qHA7cfG1qYDq8Th635vGNMW1w3sVS7l0uEvdayAsBHWTcOC2tlMa5bfHrhY8OEIqj5bN5H9RdFy8G/W239tjDu1OYjBDydiBqzBn8HG1DSj1Pjc0kd/82d4ZU0308KFTC3yGcRad0GnEH0Oi3iEJ9HbriUbfVMbXNHOF+MktWiDVqzndGMKmuJSdfTBKvGFvejAWVO5E4mgLvoaMmbchc3BO7sLeraHnJN5hvMBaLcQI38N86mUfTR8AP6AJ9c2k514KaDLclm4z6J8dMz60nUeo5D3YD09G6BavFHxSvJ8MF0Lu5zOFzEePDRFm9mH8W0N/sFlIaYfD/GWU/w44mQucjaBk95YtqOGRIj58tGDWr8iUdHwaYKGqU24zGeRae9DhFXPzZshV1ZGsBQFRaoYkyLAwdJWIXTi+c37YaC8FRSEnnNmS79Dou1Kc3BvK4EYKAD2KxjtUebrV174gD0Q+9YuJ0GXOTspBvCFd5VT2Rw5zDNrA/J3F5fMCk4wOzAfMAcGBSsOAwIaBBSxgh2xyF+88V4vAffBmZXv8Txt4AQU4O/NX4MjxSodbE7ApNAMIvrtREwCAgfQ", - "pwd": "123", "policy": {"key_props": {"exportable": true, "kty": "RSA", "key_size": - 2048, "reuse_key": false}, "secret_props": {"contentType": "application/x-pkcs12"}}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['3339'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault5139106d.vault.azure.net/certificates/certprg15139106d/import?api-version=7.0 - response: - body: {string: '{"id":"https://vault5139106d.vault.azure.net/certificates/certprg15139106d/3b9d3b1a12bb4231b87ce4014870f8ec","kid":"https://vault5139106d.vault.azure.net/keys/certprg15139106d/3b9d3b1a12bb4231b87ce4014870f8ec","sid":"https://vault5139106d.vault.azure.net/secrets/certprg15139106d/3b9d3b1a12bb4231b87ce4014870f8ec","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","cer":"MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687300,"updated":1529687300,"recoveryLevel":"Recoverable+Purgeable"},"policy":{"id":"https://vault5139106d.vault.azure.net/certificates/certprg15139106d/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=KeyVaultTest","ekus":[],"key_usage":[],"validity_months":297,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"EmailContacts"}}],"issuer":{"name":"Unknown"},"attributes":{"enabled":true,"created":1529687300,"updated":1529687300}}}'} - headers: - cache-control: [no-cache] - content-length: ['1818'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:08:19 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vault5139106d.vault.azure.net/certificates/certrec05139106d?api-version=7.0 - response: - body: {string: '{"recoveryId":"https://vault5139106d.vault.azure.net/deletedcertificates/certrec05139106d","deletedDate":1529687301,"scheduledPurgeDate":1537463301,"id":"https://vault5139106d.vault.azure.net/certificates/certrec05139106d/ca1cce61e4b1422ab72c0d95ce13ee51","kid":"https://vault5139106d.vault.azure.net/keys/certrec05139106d/ca1cce61e4b1422ab72c0d95ce13ee51","sid":"https://vault5139106d.vault.azure.net/secrets/certrec05139106d/ca1cce61e4b1422ab72c0d95ce13ee51","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","cer":"MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687297,"updated":1529687297,"recoveryLevel":"Recoverable+Purgeable"},"policy":{"id":"https://vault5139106d.vault.azure.net/certificates/certrec05139106d/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=KeyVaultTest","ekus":[],"key_usage":[],"validity_months":297,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"EmailContacts"}}],"issuer":{"name":"Unknown"},"attributes":{"enabled":true,"created":1529687297,"updated":1529687297}}}'} - headers: - cache-control: [no-cache] - content-length: ['1965'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:08:21 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vault5139106d.vault.azure.net/certificates/certrec15139106d?api-version=7.0 - response: - body: {string: '{"recoveryId":"https://vault5139106d.vault.azure.net/deletedcertificates/certrec15139106d","deletedDate":1529687301,"scheduledPurgeDate":1537463301,"id":"https://vault5139106d.vault.azure.net/certificates/certrec15139106d/c76a29a9e7cf4e139d2288f09f36dc0f","kid":"https://vault5139106d.vault.azure.net/keys/certrec15139106d/c76a29a9e7cf4e139d2288f09f36dc0f","sid":"https://vault5139106d.vault.azure.net/secrets/certrec15139106d/c76a29a9e7cf4e139d2288f09f36dc0f","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","cer":"MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687298,"updated":1529687298,"recoveryLevel":"Recoverable+Purgeable"},"policy":{"id":"https://vault5139106d.vault.azure.net/certificates/certrec15139106d/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=KeyVaultTest","ekus":[],"key_usage":[],"validity_months":297,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"EmailContacts"}}],"issuer":{"name":"Unknown"},"attributes":{"enabled":true,"created":1529687298,"updated":1529687298}}}'} - headers: - cache-control: [no-cache] - content-length: ['1965'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:08:21 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vault5139106d.vault.azure.net/certificates/certprg05139106d?api-version=7.0 - response: - body: {string: '{"recoveryId":"https://vault5139106d.vault.azure.net/deletedcertificates/certprg05139106d","deletedDate":1529687302,"scheduledPurgeDate":1537463302,"id":"https://vault5139106d.vault.azure.net/certificates/certprg05139106d/bcab0d9d961f46b69d33b5fab855d31f","kid":"https://vault5139106d.vault.azure.net/keys/certprg05139106d/bcab0d9d961f46b69d33b5fab855d31f","sid":"https://vault5139106d.vault.azure.net/secrets/certprg05139106d/bcab0d9d961f46b69d33b5fab855d31f","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","cer":"MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687299,"updated":1529687299,"recoveryLevel":"Recoverable+Purgeable"},"policy":{"id":"https://vault5139106d.vault.azure.net/certificates/certprg05139106d/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=KeyVaultTest","ekus":[],"key_usage":[],"validity_months":297,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"EmailContacts"}}],"issuer":{"name":"Unknown"},"attributes":{"enabled":true,"created":1529687299,"updated":1529687299}}}'} - headers: - cache-control: [no-cache] - content-length: ['1965'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:08:21 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vault5139106d.vault.azure.net/certificates/certprg15139106d?api-version=7.0 - response: - body: {string: '{"recoveryId":"https://vault5139106d.vault.azure.net/deletedcertificates/certprg15139106d","deletedDate":1529687302,"scheduledPurgeDate":1537463302,"id":"https://vault5139106d.vault.azure.net/certificates/certprg15139106d/3b9d3b1a12bb4231b87ce4014870f8ec","kid":"https://vault5139106d.vault.azure.net/keys/certprg15139106d/3b9d3b1a12bb4231b87ce4014870f8ec","sid":"https://vault5139106d.vault.azure.net/secrets/certprg15139106d/3b9d3b1a12bb4231b87ce4014870f8ec","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","cer":"MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687300,"updated":1529687300,"recoveryLevel":"Recoverable+Purgeable"},"policy":{"id":"https://vault5139106d.vault.azure.net/certificates/certprg15139106d/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=KeyVaultTest","ekus":[],"key_usage":[],"validity_months":297,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"EmailContacts"}}],"issuer":{"name":"Unknown"},"attributes":{"enabled":true,"created":1529687300,"updated":1529687300}}}'} - headers: - cache-control: [no-cache] - content-length: ['1965'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:08:22 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault5139106d.vault.azure.net/deletedcertificates?api-version=7.0 - response: - body: {string: '{"value":[{"recoveryId":"https://vault5139106d.vault.azure.net/deletedcertificates/certprg05139106d","deletedDate":1529687302,"scheduledPurgeDate":1537463302,"id":"https://vault5139106d.vault.azure.net/certificates/certprg05139106d","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687299,"updated":1529687299,"recoveryLevel":"Recoverable+Purgeable"}},{"recoveryId":"https://vault5139106d.vault.azure.net/deletedcertificates/certprg15139106d","deletedDate":1529687302,"scheduledPurgeDate":1537463302,"id":"https://vault5139106d.vault.azure.net/certificates/certprg15139106d","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687300,"updated":1529687300,"recoveryLevel":"Recoverable+Purgeable"}},{"recoveryId":"https://vault5139106d.vault.azure.net/deletedcertificates/certrec05139106d","deletedDate":1529687301,"scheduledPurgeDate":1537463301,"id":"https://vault5139106d.vault.azure.net/certificates/certrec05139106d","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687297,"updated":1529687297,"recoveryLevel":"Recoverable+Purgeable"}},{"recoveryId":"https://vault5139106d.vault.azure.net/deletedcertificates/certrec15139106d","deletedDate":1529687301,"scheduledPurgeDate":1537463301,"id":"https://vault5139106d.vault.azure.net/certificates/certrec15139106d","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687298,"updated":1529687298,"recoveryLevel":"Recoverable+Purgeable"}}],"nextLink":null}'} - headers: - cache-control: [no-cache] - content-length: ['1651'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:08:53 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault5139106d.vault.azure.net/deletedcertificates/certrec05139106d/recover?api-version=7.0 - response: - body: {string: '{"id":"https://vault5139106d.vault.azure.net/certificates/certrec05139106d/ca1cce61e4b1422ab72c0d95ce13ee51","kid":"https://vault5139106d.vault.azure.net/keys/certrec05139106d/ca1cce61e4b1422ab72c0d95ce13ee51","sid":"https://vault5139106d.vault.azure.net/secrets/certrec05139106d/ca1cce61e4b1422ab72c0d95ce13ee51","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","cer":"MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687297,"updated":1529687297,"recoveryLevel":"Recoverable+Purgeable"},"policy":{"id":"https://vault5139106d.vault.azure.net/certificates/certrec05139106d/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=KeyVaultTest","ekus":[],"key_usage":[],"validity_months":297,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"EmailContacts"}}],"issuer":{"name":"Unknown"},"attributes":{"enabled":true,"created":1529687297,"updated":1529687297}}}'} - headers: - cache-control: [no-cache] - content-length: ['1818'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:08:54 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault5139106d.vault.azure.net/deletedcertificates/certrec15139106d/recover?api-version=7.0 - response: - body: {string: '{"id":"https://vault5139106d.vault.azure.net/certificates/certrec15139106d/c76a29a9e7cf4e139d2288f09f36dc0f","kid":"https://vault5139106d.vault.azure.net/keys/certrec15139106d/c76a29a9e7cf4e139d2288f09f36dc0f","sid":"https://vault5139106d.vault.azure.net/secrets/certrec15139106d/c76a29a9e7cf4e139d2288f09f36dc0f","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","cer":"MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687298,"updated":1529687298,"recoveryLevel":"Recoverable+Purgeable"},"policy":{"id":"https://vault5139106d.vault.azure.net/certificates/certrec15139106d/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=KeyVaultTest","ekus":[],"key_usage":[],"validity_months":297,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"EmailContacts"}}],"issuer":{"name":"Unknown"},"attributes":{"enabled":true,"created":1529687298,"updated":1529687298}}}'} - headers: - cache-control: [no-cache] - content-length: ['1818'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:08:55 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vault5139106d.vault.azure.net/deletedcertificates/certprg05139106d?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - date: ['Fri, 22 Jun 2018 17:08:55 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 204, message: No Content} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vault5139106d.vault.azure.net/deletedcertificates/certprg15139106d?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - date: ['Fri, 22 Jun 2018 17:08:56 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 204, message: No Content} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault5139106d.vault.azure.net/deletedcertificates?api-version=7.0 - response: - body: {string: '{"value":[],"nextLink":null}'} - headers: - cache-control: [no-cache] - content-length: ['28'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:09:26 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault5139106d.vault.azure.net/certificates/certrec05139106d/?api-version=7.0 - response: - body: {string: '{"id":"https://vault5139106d.vault.azure.net/certificates/certrec05139106d/ca1cce61e4b1422ab72c0d95ce13ee51","kid":"https://vault5139106d.vault.azure.net/keys/certrec05139106d/ca1cce61e4b1422ab72c0d95ce13ee51","sid":"https://vault5139106d.vault.azure.net/secrets/certrec05139106d/ca1cce61e4b1422ab72c0d95ce13ee51","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","cer":"MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687297,"updated":1529687297,"recoveryLevel":"Recoverable+Purgeable"},"policy":{"id":"https://vault5139106d.vault.azure.net/certificates/certrec05139106d/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=KeyVaultTest","ekus":[],"key_usage":[],"validity_months":297,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"EmailContacts"}}],"issuer":{"name":"Unknown"},"attributes":{"enabled":true,"created":1529687297,"updated":1529687297}}}'} - headers: - cache-control: [no-cache] - content-length: ['1818'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:09:27 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault5139106d.vault.azure.net/certificates/certrec15139106d/?api-version=7.0 - response: - body: {string: '{"id":"https://vault5139106d.vault.azure.net/certificates/certrec15139106d/c76a29a9e7cf4e139d2288f09f36dc0f","kid":"https://vault5139106d.vault.azure.net/keys/certrec15139106d/c76a29a9e7cf4e139d2288f09f36dc0f","sid":"https://vault5139106d.vault.azure.net/secrets/certrec15139106d/c76a29a9e7cf4e139d2288f09f36dc0f","x5t":"fLi3U52HunIVNXubkEnf8tP6Wbo","cer":"MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=","attributes":{"enabled":true,"nbf":1430344421,"exp":2208988799,"created":1529687298,"updated":1529687298,"recoveryLevel":"Recoverable+Purgeable"},"policy":{"id":"https://vault5139106d.vault.azure.net/certificates/certrec15139106d/policy","key_props":{"exportable":true,"kty":"RSA","key_size":2048,"reuse_key":false},"secret_props":{"contentType":"application/x-pkcs12"},"x509_props":{"subject":"CN=KeyVaultTest","ekus":[],"key_usage":[],"validity_months":297,"basic_constraints":{"ca":false}},"lifetime_actions":[{"trigger":{"lifetime_percentage":80},"action":{"action_type":"EmailContacts"}}],"issuer":{"name":"Unknown"},"attributes":{"enabled":true,"created":1529687298,"updated":1529687298}}}'} - headers: - cache-control: [no-cache] - content-length: ['1818'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:09:27 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_backup_and_restore.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_backup_and_restore.yaml deleted file mode 100644 index 030387bf50af..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_backup_and_restore.yaml +++ /dev/null @@ -1,158 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault20ea0f3c.vault.azure.net/keys/keybak20ea0f3c/create?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:10:39 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"kty": "RSA"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['14'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault20ea0f3c.vault.azure.net/keys/keybak20ea0f3c/create?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vault20ea0f3c.vault.azure.net/keys/keybak20ea0f3c/da0674c7c4374ac0b8583d69590e185e","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"0HThTbtcddOtqU8bZXNGGWOdEso0zjJoX8iJ3BekfsRefEbiJ_yscKR4EHF7EgsNUxar4ZfIMZA2Fn5U1lIEdtNu86R4n4GkUG9OkaBTOW_gkdbqDLupkKsmKhcG9Ed-N5GYlYFM78d7ReoFTHiYdV6yhaCPubAM_H4ErxkpEZwHUS216rxWLQij9bswJ-Xm4IfMzR01GCANJyJuE_HxBpz8TitohUoFnnMOPJWtYnzZU4roLxxYOBhTa3KKKzRJEy2mIjvX9FIDqZWVcLgFbFVIq3Fs91SPkb_9XNpz2WluD76GITq9te4pFURIe0DEDt90niq1gkDjFQdEheJl6Q","e":"AQAB"},"attributes":{"enabled":true,"created":1529687440,"updated":1529687440,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['650'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:10:40 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault20ea0f3c.vault.azure.net/keys/keybak20ea0f3c/backup?api-version=7.0 - response: - body: {string: '{"value":"JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLnBBMHdVTzhMYnRja1RDYjZlMjR4S1pzZWNMSWY2Wk11ZHlHQmZSSnFrUlBlOVJlMnV3UGdqcVlzemJHb2o2MEFDaUQ2cm1sVG1aQjVObUFHU0pXVkpyUC1yZXZTaFlNbHYwLUhEelR6ejktTEpTc0lUdzU5VDF0SlVCZUxoTlZFbEtTRE5hTUJwWXg2U2pSVWpBMGtPMXpQaGRkM3JKbVJEdDM2SlVZaW1EUThRWUFTUllFN0p2SWNHTnNrbldPdEd1WS1Zc3UwMl9xMEE5eGxRYWppV2NVeU9jWVBzYVI1eXRLbzNxVlhiY3YzTjVmcU1WOE1oTEV5MnRhdWs3M0QxZHFHY3B6dnBqcndSS1dJU3lZMXI1eVl6cmdWVFI5UHVZUmlrSzNmWGE5cTk2RlczaUJ1U2JMWHRkdVE1ZFdnbjQtM09jVzJ1aFFoZXJvNmZPT1dKQS5uWVpoOTNZbEdQb19RRU9kYjdtbjh3LjczcXdBbGdTQ193a3ZrTzBxZ2VxeGVxT0Z6ZlNZUzZtOEtIQ3JaVGhZOVpvcDZ5Ym51LTFQTTZTZ29zcnNCbDltN1dFWUozTEpTX015RjgtYlRHTmtiRU5pRnlwRlQ5WHZRNWdWREJiZnd3WGF4UGQ4cVBaVmV6eGp5TDVqYzFwZW5hYVBybE9GTV9tVmtVS2xBaUNIZWJqNlp6MUYzbnMyS05YSG1Na0tiT0YzYUw4Z3ljeDM2dmJ5VWdaakRCSW9QeWhIY3FQc2JvV3dqMHNXZVZEZldGeWF6RjlJaV91dGlNd2ZsZXppUVhfaXdsWTNEWWQxS1MwNmNqVy1DakRvSHhBTzRrd3M1ajhhVXJNVzYtajIydlVDb1VzWlVzRVpMbWpBdThLNHp2TlVubFgtbGlzazRIb21CZkctY3dxUDRyNTZqN2FkVXo1ci1uUXBRYjhqTVpPRGRyRE8xZkt4bFVodDdTY3NlTWttR1BKd3ZtTDAtY0d4ZmpOb3IxLWZES1VqcVdoakhzVDh4c2Y3cmx1ZXlhLXM5M2VnY3owWDlfcldobVZDTDBpYk0zdWJ3TmpMYlc4TWtOcm1SekxYcXhBSTNuaDd3TVBwNHZyWVBhVjB6QVMyVEZpLXh3WnM2ZGF1R21XRTJURGxoVlFzRGx6VFRXQzhRTkRzTlhHVnBvMDNBOXhGSkZxMHR1NXZ3NUo0c3RGOXdITmMyN2tFdWNfMHZjZERUNThaUjRUcjVIZHJMMTlkNnJWRXJpdFdaT2FWNWlMWHE1T1Bnb0NJQkgyWTVYQVd4TExmY0JSbnJmemFYa0Z5YWxfOXpTczlUTW5hd0tZSUxmVTg5UEVyNTZoNTFlZ2pBSFg0b3ZWeXhDcUJkZ1NIc1BFV3hpbTNfMWQxSU5FUFF4eVd2MFExdTBXNEpIRllCTjloVG1ncWRJYkIxOE5oU05obnp3SHlNcVVUZExSaFl6UkFSeGNER3hxbUQ4NmlwUnpfVEFzV2ctTnZMYXlud19HWTBwR0ZpVDVzRkc2NW1yWV9kWDUydW5MU1MwSk9SbTJPUGdmSjVHTjBEV3hEeTJwT3pDQTRRSUFLLVJlNDNFZE1GNEtFcFhjS1YtY1N0OW5FZ1BpZmhtTWxzZXB5RWVEN2lVR01LN1RSNXJZZ0hRdUVhdG9SVlc0THZRTTE4bFhwbEpyYWtjSGZndXB2cUNvaU1fTW9XcDRXektGZ1A0c1ctTmRKeUhKb2RsZ1N0amdKNE4wTzVsQ0p3Zkc5Z3dSSzF1RWdCb19Xak5CT041SXhVZHE2allkellJZFZJXzFsWVFFU2UwVzF4VkZiWS1meUZjZHdzcm94ZVlLSXFqak94Zy1PTDdEU0VQdTUzWkYxTTRtVW1KNHZpLVF1VS1OX0dQeU5xVmNMcWUyUU5sS1JyT3hSTlA3YVZ0NFV1bTM4b3YydDRwaDh2QWtPLUFCY2wzb1BWZ05nMW1NdGRrWTFDWVNzS3RrZzFSNTdXYW5ZeHBjcEpsTDEzRHhNM3VtemhYMjV4RHZPcC1nYmxqNG02ejdWWUo1TkJ2VVVrZ2NlWGNIbmUybkY4d2djM3hjX1d1X3NzTHl6TVpHSGhyY01LUHc4UkFORWFGWHlGeTlwM2x2MlFHTUFsUTl3aXlTZ3lneThicDFfZGd6QjdBbmhMQzNWNXZiQ2gwZXJXZE9qT05VdUNGbUtiNXU1cXV6SkJRcTJYUXJwd05SVEZTaENPX1FIeDhKX18wek9xMmdmMlZId0RjeUZUeTBuUzNoQWVJWGhRalIwWGl0cngtRkdNOHlGeEctM09uUFNlVnBiZ2daZEZyZGFvYWw1ZXFUTTItMnpEVTZ4dzQ0SDRyWVhDbHFESkVmRHJ6WVplT1lCSFFaR1VGSlltdnc3V184eFR2bUVxYWlETmlzdV9xc3U4aGRyQlBGX2RQUUtVd0FtMHROVDVyVTkzQWt5YkRxMG92eGJwaW1EVlhNMWk4SmZCbFdfVm9nb1BBVVh0cGF6S05HWktuWUFLMGxjWjdseWIta0kwWF9xMnFBT09MU012WXVZM0xzYnJ6M3lmRHV0Vm9OaFhETHM3STdfcnBjcXpaMWdXSjEtS1ZOTncwMmlqbWhTcGt2MHQ0cmNrZk8xZ2I4LW1QT0N3ejJMV0Nub250V3hLb2lpSWJwZHhCOEREdEF2VzQweE9VTUNueEVMeGpleTVrQ25ZRk5qaDI2MmJQRTFxa0dLdFVVTnQtNUdsakFhTF96cHgwNkxrMzUzYVhvU3FhajBGWlQ3aUxxU2V1djQ3TVg2SHRMUkpScjE0WmJWNi1tYmZRUE92VmltSGpNS05GaTlQLVdpWFlneVBZSTZEMW5DeUxTakM3TGtQaFFiTW9pTDhpOUlSRXlXOVZNQTJvRWxNLVJjaDRmMHNxZlI1Z1libFlPWGJPa1pKTHVWRkN4QjRvby1jeF8wclBneHNITjc4X3otZWxMY1FTWHdkTUVGVmFUbnF4c3gwT0l5bXZzbDQ3ZWI0YVRybmpsc01oQkhlQjJ3RFJVOThFaEdzTHZBWW9GWEZzX2YwZUY5bU1ZR3cyZlB3VWVIRHBETDRnZVhjS1gwOW03d2wxTDY1MVVMbVR5Szl1ZWxFcncySFFTN3JPMERYOGdxWEdtV1BkRTdzdmdBLTBYLWQ1RXY3blRaSnJ0NmxSaFFHS1VYRE84OHZyak5JamNzTEhWV0I1d0hQamc2eERiTE9YZE12bmh4TS1aRDBreTJZazlhamdnMXlETlBPVFhpd3dkNUZsZVZ6MWJtNHgxbUtheWZSUEc4ZlhSSHpORE9sTkhBQWNnOGJXVzNzTDRZdHZ1M3U5ZUc5YUVrUFhZS2VZczRIeW9waUZ4QktHWmpyczB0ZnJxZlVvRGZuOHFlM3ZhclVzZ1lybi1hSDZ5UEFlRUdWeGVmTTdGTlAxTmhFQ3Mwc2pnNG14VzBiOTFKQW1nYWRwZmlFcVVRUDBtZTBTQll1ajJzRTZzYndhMjAtdTluTFpiUFUzbENDcFE4aTF0SFJGZkttR0N1MWg2bzdraFRJUk81TVpFdG43MWRqV0lfZzQ4dS1kbDBmZHBaNWVIc2JEQ21OM0pmbnBLYklqMzhQRjhKbGV3RVExZUV5Q2VLcGUyVmZTeVl3SGduR3ViTHowU3U1TjctdkZaY1ZXUXlsUkNxcEM1akZsUVNpaFZOa1FVNW14OGY5MEhjV3laWm5nZjctNDBoYXZEX0tVcGp6TEltaTE0VHBzQlRDYzhQWWpNY083dzBvVTgxZ0ZvX0FtYjlLQ1UtN0JfT1Z4dnZlRjhPNnRyV3pkSWdDQnpFUEZieVJmTFNsdGxsNjlldUNXRVZ1QnQzWUxJeVZYazJFY0U1LXdWcWpSZEJ5UU1vOEp3Wnp4b21SYkVwVlc1S3FrQXdvNjhaZnZfSlZzZlBDTjhXZE5WRGR4LXB5dHJSbEhJdnBxMURKb2RNcTV1c2pxcG9CSjJBVzFZVXFHVXlVeG5ReWZmTFVIdk9WWjQyME42NVdlRHZBY09YSFYyc2pCSlJxYllUbGFBQ09YSllNVHAyQU1uamlXYWZyWlRiRE1BZWJzVlBCclNfM0lVNDk3bGtFc3lGMi1aM25Hek8zT1ZhaFNSNWFEOXVhU0psVlZBelJTTWh0Z0dMN2U0VmdDU1BIeDBESkFlcVp2LThrWjlQUXp3ZVdGZmJFaGFnUkxVWDJRQW9QNXZKanJ1RHNXQTFPWkwzYkdwT1NWaW9nSmE0cnp5dmlqTHpFMnkxXzlYNVNHRUE5ZXk0UEdYNm52WkNOOWV5d1JNQmwwMzF3cUlheEtzcXZnNmVGalMtN0FkMFN5eFM0MGxLMGpCdUpRU0pXSVVpWUJOUjdBc0cxTEx1ZHU2YXdTcC1mQVNZMFkteTZkOEFVb01ieXM3SDJ0b3ltLUQ1OUNha3IxR1ZZQldVNmo4WXdlTS04RHNwcXBfOWZoS1BNUkIzeDJkMmh4TTljV3EzQzhuRFlGMlYxTzFlZF9ZVEd1WHgtVjNZSExGSHplMExvTWp6c3Fha25XUWpHdDE0V0xyZF9BVGUtNTJHZ0lLdXFUZGdXWGlPNlhqOVRRSlhhUlNvaUlFM1lGWFRpRDhPajdNT3lLQ1NRTi1hLXZpc3YtU21USHc0ZFBXV0ZSU2JzdnJod3hmSEpnNjR5dVNycWp1dG1zeEEtNkR2ZTY4MkRfdU5MVXU3QktubU9zb2VFTmJYR3RmemxPcHB1REZ2MW41cEQtVm1JaDFNbFc1dTBDVnhTUVl6X1JUeUUyUUNiZGRsdzNWMXdPM3JhUWl4ODhJdW5OWUdfNDZtemhTWkZmYWVSZXZpSnlUdGE5Q3FwMXdMZ2NJQUtwOTZiNDRieUtWZHZTa082VU0tZDF1Tm41YnF2ZmVaQVRIb2Y4MUN5SUgtajhTZzlIWWtHM2Mza3I4eklZX2Q1c3VQN2lGSTI4aFc1QmVCdm4zSDMtTnVPTWw2SDdtU005cmMxbHFHZWxfd0x1SG1QYmNXaUtVOHZGYll6elZSUWhKUmhVRDNIRFJ2N0EwQXJnYjlnc1A2TTlYbVY5WFd0RVlUYzhfVGpvWGE2N1BzdjJxcmJ4MC10ck0tQTZkLUVibzMxX1ZZVkxsU1VhRTNHZV9ZcmZsY19vblN0S2NYYkR6bkRWb3pUV215SFZueEd2ellXaW9vQWFDdk9CX1ZkWHV5b0hVNmJreGxFNmVlcE5CaXQ5NzQ3amt6aG5iTEVvbExIQUdlVzU1UW5sc0NaTXQxSUtMdWxKTnhxbi1rcm0xVWN2NVZPMWZOY25HbW5BUFEwX3I0alBFbWxvMDhVX3V3X2JQaDFOa09hYWIyQld3OUZXRW5Mc3dpQUdjbXVGc3ZYa1dPc2tKc2tNS2RqRUNtUDdOY3JrN3NFZHhDbTVwZUZPeVBvSHhGRC1NM3M3RzVScmhZc0QwS1ZMT3RWd3BxMkNLVzF0dS1Nako3YlVVaUxuOTRqTGFNRmtYY1VTN3VrVUtSVXpqMG02RGE2MUhXQV9td2tKczltbk5lTTR0TnJTX0lzWnYzNFBiM2pETmtVT0xxZjZBT3VQS2ZHVTJWSThISWpIcEJpWE8xU0N5TGw0aGJFLWhpaVNWUF94andiYXJKWTI0NmF4QTl1bGc0aW8xazc1MzRZaHBPaTRwQ0Z4bjR3b2RHaHpSUE1iRFBUei1XUGszdjVkek9FTVFuU3E0c1ppUEJNak5iWGNVQnh0V1I1Q1FFMnphcEZtWUM3VjB4cldlQ1BWcDJHN1BUY3RMOGgyb0hFbmVWYWRRUjdmVG9aMUVINHlYdmlxNTNBd0tCVDQ0TnRuNWQzOGV5dnFCWUppS1lranVhOFI5SUxheGVMNkFibnFvV3ctcmctNzNPR19PbklhaFBpNjh0czQ4TjI1bmZoYTBLQmQwSElyV2ZpX3NKeGhSNUNIOU9Ecm1aekI2ZHVCaG5QTzdSbkRtemVfVWJmVEpHWDI2WDdSRnBoZElsWjR1Ti12cWdTZVlGeldHbDBlSFJaRFNROHlCcG1ETlJOanlqcUZKLTQ5OF8yNE9XX2EzNnZSb29iY1V1Wkg3aDAxZk9tSlJCM1NVSGowZ0lSVjk0RFV0bUU5UElGak8tSWZWTjY3MVFkdk5JWC1rZ3BGdzFVVEZlNGgwX1hvbzZyaWhTa2VxYVhuVktWNE1uTHptUWRUSEZNMnNJMUNxNjdrM2pLNXZFZDhPSUhCa0N6bUVuQjIwNUVXVnFuT25ob3dWSFJpVDYxSkdVejZuWmQ4OXUtN2pnaGlhWGhMbnJwc2tqOHNYMWxNODAxaU1obHR4Mnhnek9lSVNYUmFvaTEtbllBalRBV0ZxSnFkTUttRTc2Uk1mYkt3WlBwV25VYjFBUXNmVHk1cjVZWG1iaHVyVy1lSHJfbEthT0gxRWJ4dTZSTVlyT1ZkTmduNmRzVTVtSzRRNkNyZC1CM0E4NVJseGp3aG4taDdWemp0Snd4OUtnUDVUenlYZDJWT19DMzE1YzlUcDFFSnRMMjFldjl2LUFnWmlURkVDSUJ1WGp5cEViTEtxVzJwWE92VEw0SlJzelJJRFdoaktud19hcEVZX0l0d3dtRWktU3VqNlZabGkzc0k3LVM1N0hrX2JyclVUeUlQeXdrR2ZMOE1aZkZZZUxjVWRQb2RvT0oxVXdHMWpYX2U1ZHZhVzZGUU9EdGdEU0prWGxXUGFDaWRyTUpUbUJFNTRMbWJMT3Y2QlUzaE1GUTdOSVlRUUw3aUNsdzJJWktkSEZRN0QtTVkwOTJtU2pTbG04U01icm5pZi1hbjJRX2tzcTE2cU9GZ0VHeE1lNkE1bEVhQjdCZ3dvWEFja2NBYUQyaVlRNmxFMXRfWENYN1VSN0pBRUxWYnVrYWJ6NVVfU19GRkg1eGVmMGxBVFg3RkpLaC1LV000T0oyUWZ3T2kxbUU3TU50XzRxVnhvMlFCd1QxaEIxdzhuQ3RTRWdRaGlYdGRkV0pDZWRkOGMwdWM3TnFXSzc0VHNvVmhHWGVNd0hDLWFCeUFaZktPNUJ4WFlxSmxCY1VKUUdDb0phemRCejZyMy11eW03STQyUnYtS1A3bTVONm1sY0Y3TnF5VTJYNm5Eay1QQzViLW56YVdJX1h4SnpSTEtaSE42Vm5XVHZJZU5nXzhWM0x4TmQ2T2tHY04takQ4YU1vRERIOVNWWllSRndsSXBoNHhGUDk5NXdfWUxxWXM1LW1NZ0VXY3U1WXVLemhKLTByTWo2bG5pY09ISzU3Vmlpekd5TnJVYS1LdjJ2TjhqYnF3VS1wc0FWZFlKNFlTZU9zelg4WTJTQWhnVF9fWXFhRHRmaDdhYUh6eU9BUGlwNG1UTEhINjBmQUNsLTRLRUl6dUtxeWF6MlozWUdQZmV5QTRIWlFabEpVdDlhemNhbDl6R0dLRDk0b1pRUWFDMkJuRU9Xa1RmRVk5UVhSWFIzWnQzTVEyX2hJOXR4VVUzaVU1LVMyd19BVmctZkZ0Wlh3V3BKWmQ3RDhYSEgwZmdXMHFQYUo3QTFneFlzWTNiN3lUMUZ0cmdrNDVMSm85bXZwdEItY3VJdlVsZVFrd01iaVh6VTFtc2tSVU9hMHcwWnF6Z1Nrcno4WUVSaVlyTjJ3QkRXZk9jN3NxLVhVZjV6VmFoSVg3aldsTWZrUUpqNW9HVWFRdWY4QVMxSURvUlZUeGxpa3FmNDYza2pmRzV6UXJmOFFzRTRkRC1WOUNWX0VvOEN2aWRsSGYxU0hlcEpoNDJaQzl3bmU1TUhZVENrbjhnWGhWSmRQb0JHYXlLZkxyLTRyRzJCY0pQQkZWeWRtVkhnaHR4c0dmOVl0TWVnTFQxSFN0VDJUNS1sZVI3dWN3eUtHS0RjZmg4R0NOTG9sQm1PdUVMSUIxczdheWlhQzFTZnZIaVdrZHNaRW8tREVkNXhLSVVvay1KSTdjOHd1WXVXaFpDcGZmVU1lM0J0X3dfcnJOQ3FvM2lJbkgyYnk3MGNuQXdSczRNajJLUGNKWHdJMUs5Z0NMZDh0aThDbUdTMFdxdDFMRUNKaVFTNHNLbnRyOWtNc0M5Q1h1bUdKTGFhSk4xOGt5NFV2RjN0allGUGNtSUlUQS1HN3Z1dldnVEN6eDZwa1dSX1N3MDIxdk1hc1BrVUhRZGtHN1hZalQ3OF85TEV1eUV2TXcwM3lGdEVBZFE4YkNHai05OGd4LURmUE9remV1Rm5yMXhBbS02NmZqeHAydGF1cDR6dmNpNzJ0cWgydjlBNkttSDVGaFN0UXdhM09TOGowNkE5cFBhWkdKcWp5UDRPQ3VXQWZEYXc1bWx3N1NsMXdrUnVHMVZaMEdpYUctNWN6TnBQYjBfMXZyRTltLVBxYXVFRE0zMkZiYllISFJ2RERpMG9xX0RSS0ZQZU5ublNmY0JjYnRNUjU1OHJmcDk5N2xMTEdaMDdaTlFPZWxXellWSmxnVlhPV2RZRi1pbl9kcDNjQkREN2RvOFBBMFpxWGVoa0lFZmxxRWowdWpoS1E4RDNxYngzWlRiY1dkODdSenVmN1R2dkpvaHVFWHo0LVo3YlZtRTJlRU1nUk1WM2doUmlfZEx6YXpZWkJ1c3lNRFdZLXFJWVNQcjR4RkJMWmU1ajhIYWtnclVNZFQwU1A4UGVWZmJrU2VzTUdjb1JLY0ZSRVdObjFlZ0kxQ1Q3eElMTmp6dVJCNkQxNWc1VFFCMXlMdEtnV1lDN09nazQ2Q1J2SU0yR1hSNzNKUkJoNXpNcjh4NUtKLVFXRTByMEtTQm54b1l5VDdpWnlKZlpvM25wcjFfLWU3NWlxWU5QSW1fVFYxRl9FNDVqSkx1czZMektndzNkTGFXa2RRcGlrUDdBeWlRb1FXTElvVGdRUlFXM1JWUnhqNXVZMnV5amlETV9tcUFqUGRFZnR1ZHNFcWJMUWJ4c2oxTXVVU1VQT01ra1p4TWRqelk1TGQ2VU1td1NzZk1PV0JzcmJVRTBtYllFRVVaWVRUd3Z0ZXd0NGxVNVFLQ2NtejVfZGFsU3lmNzJfX1FwQnpYZWxIcThKRmNKcHVlbkF5VUhJUS10aTdCdkdGMms2MC1tWHR6Q2xsTDloNTdzaEZTS3NPeWg2QkxjamUxNlJSRmctTTRmZEF4ZUdjemN4bmJvV1ZMMHhCRGtjMFh0aF90WEZQRmlUWmlRQWFJTTU0T0l5R0pzeTcxeEJqNkRBQ05IMVN2Xzhfd2QtblNIY056ejlvZDdPVjdKbnpfRXp1NlZVT0I3R2hNSVBnc1dBeW81YldqSkR2Yk9qQjBpRlBpR0hPWTFVaHZNQ3R3V1ZsamoxcV96R3dFSl9FRmdyZmpUT2VHTmVYZzlucVVuSDhoNTBvc2pBZXlqQ0JySU9BYUhvenJURDZVZHhQQ19KV2Y0d2NwcUpBVWRQTXRIV2Y2YUZwbldSM2haeVNGRlNrWklpNjJsNWhqNE8xc0Z0MDJXalRzVUpCNDZVak1WcUkxVGkwZjNFQ0cxbVI4dTFyS0ZJNmVWSDZsd1RWQ3Fvd3BTY0Z3LXVRQkxFR0lWV3lVOGE0dFVaelRkMXIzcG84NERJdkpFWmh2WExucVRHMzRoLXdYclFLc3FDNzFQMm5nb1lmYXlQUnlucU52UFl1c0NVNU5ydnBuYUx3bTVhRjZBbXl4dXAtQW0ydjlMM3JiSFFSMTBzM2dMeVBtaURJWkdWTkFSdi1xd0k5NWw4cEJrY1hZM3kyT2FNSTNTQ21JWHdJQlprcDdpSEpVY216UWhHLWdvV3JyUFF6Y3NodlAxNDRubkQ1alJsbVpYOUw4UG4xcFJ5cWFXd0dtWC1uQVU2Y0g2TjRnNWtJcFUxWS05ME1wUTY1ajhDTEJLblZjUzJqUGl6UHFMSkVuQ3JoUWVQSC00bEpDZkZlTmhnb2lxWGhwcGxNb3BnUkYtY194NmJtcDVrUVBoc1BYTVlycjFGNVVkeHJobzR3dW0tc3RkYUZ6Mmhpd0xQWlluUkhrekx6LVM1Y0luNTlRWnlKMFYxbHdEcjh4RFRERVhJb29VOTljQnp0U0FGR2xFY3Z0ZXBkb1ZyX2VBaFlkTmQxWW9sSkdmR0ZNRU15MWw3OVRxUTg0VEJUTVBaTVh0V3FqU3RIdXlSSGNKaXpnLW1wZlFVaG9LR1dGRnZpcG1XdzF2N0w4d3JRMVJqdFdCWWp5OGNXbmhfNDI3R1NrYVpaaXotQXo3X2YzUHZlSXh2YnZqTk12Qy15a2RZeFkzOHA4VmtndzNrN09qMzFmOGtNQ3Zfc3hTOHFST1FJOV9yYXp5X3FHS2o0RElqSFNEdml0amx2SU5tbjc1ejVuRkx6Ykl0djh3a2RfM2Raa3hHLVZRM0ptNTRnN29kN1lMWnJqY0V1T1cyUS53OTljWXZpS1U4REFxV243T0g0VmNn"}'} - headers: - cache-control: [no-cache] - content-length: ['10692'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:10:41 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vault20ea0f3c.vault.azure.net/keys/keybak20ea0f3c?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vault20ea0f3c.vault.azure.net/keys/keybak20ea0f3c/da0674c7c4374ac0b8583d69590e185e","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"0HThTbtcddOtqU8bZXNGGWOdEso0zjJoX8iJ3BekfsRefEbiJ_yscKR4EHF7EgsNUxar4ZfIMZA2Fn5U1lIEdtNu86R4n4GkUG9OkaBTOW_gkdbqDLupkKsmKhcG9Ed-N5GYlYFM78d7ReoFTHiYdV6yhaCPubAM_H4ErxkpEZwHUS216rxWLQij9bswJ-Xm4IfMzR01GCANJyJuE_HxBpz8TitohUoFnnMOPJWtYnzZU4roLxxYOBhTa3KKKzRJEy2mIjvX9FIDqZWVcLgFbFVIq3Fs91SPkb_9XNpz2WluD76GITq9te4pFURIe0DEDt90niq1gkDjFQdEheJl6Q","e":"AQAB"},"attributes":{"enabled":true,"created":1529687440,"updated":1529687440,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['650'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:10:41 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLnBBMHdVTzhMYnRja1RDYjZlMjR4S1pzZWNMSWY2Wk11ZHlHQmZSSnFrUlBlOVJlMnV3UGdqcVlzemJHb2o2MEFDaUQ2cm1sVG1aQjVObUFHU0pXVkpyUC1yZXZTaFlNbHYwLUhEelR6ejktTEpTc0lUdzU5VDF0SlVCZUxoTlZFbEtTRE5hTUJwWXg2U2pSVWpBMGtPMXpQaGRkM3JKbVJEdDM2SlVZaW1EUThRWUFTUllFN0p2SWNHTnNrbldPdEd1WS1Zc3UwMl9xMEE5eGxRYWppV2NVeU9jWVBzYVI1eXRLbzNxVlhiY3YzTjVmcU1WOE1oTEV5MnRhdWs3M0QxZHFHY3B6dnBqcndSS1dJU3lZMXI1eVl6cmdWVFI5UHVZUmlrSzNmWGE5cTk2RlczaUJ1U2JMWHRkdVE1ZFdnbjQtM09jVzJ1aFFoZXJvNmZPT1dKQS5uWVpoOTNZbEdQb19RRU9kYjdtbjh3LjczcXdBbGdTQ193a3ZrTzBxZ2VxeGVxT0Z6ZlNZUzZtOEtIQ3JaVGhZOVpvcDZ5Ym51LTFQTTZTZ29zcnNCbDltN1dFWUozTEpTX015RjgtYlRHTmtiRU5pRnlwRlQ5WHZRNWdWREJiZnd3WGF4UGQ4cVBaVmV6eGp5TDVqYzFwZW5hYVBybE9GTV9tVmtVS2xBaUNIZWJqNlp6MUYzbnMyS05YSG1Na0tiT0YzYUw4Z3ljeDM2dmJ5VWdaakRCSW9QeWhIY3FQc2JvV3dqMHNXZVZEZldGeWF6RjlJaV91dGlNd2ZsZXppUVhfaXdsWTNEWWQxS1MwNmNqVy1DakRvSHhBTzRrd3M1ajhhVXJNVzYtajIydlVDb1VzWlVzRVpMbWpBdThLNHp2TlVubFgtbGlzazRIb21CZkctY3dxUDRyNTZqN2FkVXo1ci1uUXBRYjhqTVpPRGRyRE8xZkt4bFVodDdTY3NlTWttR1BKd3ZtTDAtY0d4ZmpOb3IxLWZES1VqcVdoakhzVDh4c2Y3cmx1ZXlhLXM5M2VnY3owWDlfcldobVZDTDBpYk0zdWJ3TmpMYlc4TWtOcm1SekxYcXhBSTNuaDd3TVBwNHZyWVBhVjB6QVMyVEZpLXh3WnM2ZGF1R21XRTJURGxoVlFzRGx6VFRXQzhRTkRzTlhHVnBvMDNBOXhGSkZxMHR1NXZ3NUo0c3RGOXdITmMyN2tFdWNfMHZjZERUNThaUjRUcjVIZHJMMTlkNnJWRXJpdFdaT2FWNWlMWHE1T1Bnb0NJQkgyWTVYQVd4TExmY0JSbnJmemFYa0Z5YWxfOXpTczlUTW5hd0tZSUxmVTg5UEVyNTZoNTFlZ2pBSFg0b3ZWeXhDcUJkZ1NIc1BFV3hpbTNfMWQxSU5FUFF4eVd2MFExdTBXNEpIRllCTjloVG1ncWRJYkIxOE5oU05obnp3SHlNcVVUZExSaFl6UkFSeGNER3hxbUQ4NmlwUnpfVEFzV2ctTnZMYXlud19HWTBwR0ZpVDVzRkc2NW1yWV9kWDUydW5MU1MwSk9SbTJPUGdmSjVHTjBEV3hEeTJwT3pDQTRRSUFLLVJlNDNFZE1GNEtFcFhjS1YtY1N0OW5FZ1BpZmhtTWxzZXB5RWVEN2lVR01LN1RSNXJZZ0hRdUVhdG9SVlc0THZRTTE4bFhwbEpyYWtjSGZndXB2cUNvaU1fTW9XcDRXektGZ1A0c1ctTmRKeUhKb2RsZ1N0amdKNE4wTzVsQ0p3Zkc5Z3dSSzF1RWdCb19Xak5CT041SXhVZHE2allkellJZFZJXzFsWVFFU2UwVzF4VkZiWS1meUZjZHdzcm94ZVlLSXFqak94Zy1PTDdEU0VQdTUzWkYxTTRtVW1KNHZpLVF1VS1OX0dQeU5xVmNMcWUyUU5sS1JyT3hSTlA3YVZ0NFV1bTM4b3YydDRwaDh2QWtPLUFCY2wzb1BWZ05nMW1NdGRrWTFDWVNzS3RrZzFSNTdXYW5ZeHBjcEpsTDEzRHhNM3VtemhYMjV4RHZPcC1nYmxqNG02ejdWWUo1TkJ2VVVrZ2NlWGNIbmUybkY4d2djM3hjX1d1X3NzTHl6TVpHSGhyY01LUHc4UkFORWFGWHlGeTlwM2x2MlFHTUFsUTl3aXlTZ3lneThicDFfZGd6QjdBbmhMQzNWNXZiQ2gwZXJXZE9qT05VdUNGbUtiNXU1cXV6SkJRcTJYUXJwd05SVEZTaENPX1FIeDhKX18wek9xMmdmMlZId0RjeUZUeTBuUzNoQWVJWGhRalIwWGl0cngtRkdNOHlGeEctM09uUFNlVnBiZ2daZEZyZGFvYWw1ZXFUTTItMnpEVTZ4dzQ0SDRyWVhDbHFESkVmRHJ6WVplT1lCSFFaR1VGSlltdnc3V184eFR2bUVxYWlETmlzdV9xc3U4aGRyQlBGX2RQUUtVd0FtMHROVDVyVTkzQWt5YkRxMG92eGJwaW1EVlhNMWk4SmZCbFdfVm9nb1BBVVh0cGF6S05HWktuWUFLMGxjWjdseWIta0kwWF9xMnFBT09MU012WXVZM0xzYnJ6M3lmRHV0Vm9OaFhETHM3STdfcnBjcXpaMWdXSjEtS1ZOTncwMmlqbWhTcGt2MHQ0cmNrZk8xZ2I4LW1QT0N3ejJMV0Nub250V3hLb2lpSWJwZHhCOEREdEF2VzQweE9VTUNueEVMeGpleTVrQ25ZRk5qaDI2MmJQRTFxa0dLdFVVTnQtNUdsakFhTF96cHgwNkxrMzUzYVhvU3FhajBGWlQ3aUxxU2V1djQ3TVg2SHRMUkpScjE0WmJWNi1tYmZRUE92VmltSGpNS05GaTlQLVdpWFlneVBZSTZEMW5DeUxTakM3TGtQaFFiTW9pTDhpOUlSRXlXOVZNQTJvRWxNLVJjaDRmMHNxZlI1Z1libFlPWGJPa1pKTHVWRkN4QjRvby1jeF8wclBneHNITjc4X3otZWxMY1FTWHdkTUVGVmFUbnF4c3gwT0l5bXZzbDQ3ZWI0YVRybmpsc01oQkhlQjJ3RFJVOThFaEdzTHZBWW9GWEZzX2YwZUY5bU1ZR3cyZlB3VWVIRHBETDRnZVhjS1gwOW03d2wxTDY1MVVMbVR5Szl1ZWxFcncySFFTN3JPMERYOGdxWEdtV1BkRTdzdmdBLTBYLWQ1RXY3blRaSnJ0NmxSaFFHS1VYRE84OHZyak5JamNzTEhWV0I1d0hQamc2eERiTE9YZE12bmh4TS1aRDBreTJZazlhamdnMXlETlBPVFhpd3dkNUZsZVZ6MWJtNHgxbUtheWZSUEc4ZlhSSHpORE9sTkhBQWNnOGJXVzNzTDRZdHZ1M3U5ZUc5YUVrUFhZS2VZczRIeW9waUZ4QktHWmpyczB0ZnJxZlVvRGZuOHFlM3ZhclVzZ1lybi1hSDZ5UEFlRUdWeGVmTTdGTlAxTmhFQ3Mwc2pnNG14VzBiOTFKQW1nYWRwZmlFcVVRUDBtZTBTQll1ajJzRTZzYndhMjAtdTluTFpiUFUzbENDcFE4aTF0SFJGZkttR0N1MWg2bzdraFRJUk81TVpFdG43MWRqV0lfZzQ4dS1kbDBmZHBaNWVIc2JEQ21OM0pmbnBLYklqMzhQRjhKbGV3RVExZUV5Q2VLcGUyVmZTeVl3SGduR3ViTHowU3U1TjctdkZaY1ZXUXlsUkNxcEM1akZsUVNpaFZOa1FVNW14OGY5MEhjV3laWm5nZjctNDBoYXZEX0tVcGp6TEltaTE0VHBzQlRDYzhQWWpNY083dzBvVTgxZ0ZvX0FtYjlLQ1UtN0JfT1Z4dnZlRjhPNnRyV3pkSWdDQnpFUEZieVJmTFNsdGxsNjlldUNXRVZ1QnQzWUxJeVZYazJFY0U1LXdWcWpSZEJ5UU1vOEp3Wnp4b21SYkVwVlc1S3FrQXdvNjhaZnZfSlZzZlBDTjhXZE5WRGR4LXB5dHJSbEhJdnBxMURKb2RNcTV1c2pxcG9CSjJBVzFZVXFHVXlVeG5ReWZmTFVIdk9WWjQyME42NVdlRHZBY09YSFYyc2pCSlJxYllUbGFBQ09YSllNVHAyQU1uamlXYWZyWlRiRE1BZWJzVlBCclNfM0lVNDk3bGtFc3lGMi1aM25Hek8zT1ZhaFNSNWFEOXVhU0psVlZBelJTTWh0Z0dMN2U0VmdDU1BIeDBESkFlcVp2LThrWjlQUXp3ZVdGZmJFaGFnUkxVWDJRQW9QNXZKanJ1RHNXQTFPWkwzYkdwT1NWaW9nSmE0cnp5dmlqTHpFMnkxXzlYNVNHRUE5ZXk0UEdYNm52WkNOOWV5d1JNQmwwMzF3cUlheEtzcXZnNmVGalMtN0FkMFN5eFM0MGxLMGpCdUpRU0pXSVVpWUJOUjdBc0cxTEx1ZHU2YXdTcC1mQVNZMFkteTZkOEFVb01ieXM3SDJ0b3ltLUQ1OUNha3IxR1ZZQldVNmo4WXdlTS04RHNwcXBfOWZoS1BNUkIzeDJkMmh4TTljV3EzQzhuRFlGMlYxTzFlZF9ZVEd1WHgtVjNZSExGSHplMExvTWp6c3Fha25XUWpHdDE0V0xyZF9BVGUtNTJHZ0lLdXFUZGdXWGlPNlhqOVRRSlhhUlNvaUlFM1lGWFRpRDhPajdNT3lLQ1NRTi1hLXZpc3YtU21USHc0ZFBXV0ZSU2JzdnJod3hmSEpnNjR5dVNycWp1dG1zeEEtNkR2ZTY4MkRfdU5MVXU3QktubU9zb2VFTmJYR3RmemxPcHB1REZ2MW41cEQtVm1JaDFNbFc1dTBDVnhTUVl6X1JUeUUyUUNiZGRsdzNWMXdPM3JhUWl4ODhJdW5OWUdfNDZtemhTWkZmYWVSZXZpSnlUdGE5Q3FwMXdMZ2NJQUtwOTZiNDRieUtWZHZTa082VU0tZDF1Tm41YnF2ZmVaQVRIb2Y4MUN5SUgtajhTZzlIWWtHM2Mza3I4eklZX2Q1c3VQN2lGSTI4aFc1QmVCdm4zSDMtTnVPTWw2SDdtU005cmMxbHFHZWxfd0x1SG1QYmNXaUtVOHZGYll6elZSUWhKUmhVRDNIRFJ2N0EwQXJnYjlnc1A2TTlYbVY5WFd0RVlUYzhfVGpvWGE2N1BzdjJxcmJ4MC10ck0tQTZkLUVibzMxX1ZZVkxsU1VhRTNHZV9ZcmZsY19vblN0S2NYYkR6bkRWb3pUV215SFZueEd2ellXaW9vQWFDdk9CX1ZkWHV5b0hVNmJreGxFNmVlcE5CaXQ5NzQ3amt6aG5iTEVvbExIQUdlVzU1UW5sc0NaTXQxSUtMdWxKTnhxbi1rcm0xVWN2NVZPMWZOY25HbW5BUFEwX3I0alBFbWxvMDhVX3V3X2JQaDFOa09hYWIyQld3OUZXRW5Mc3dpQUdjbXVGc3ZYa1dPc2tKc2tNS2RqRUNtUDdOY3JrN3NFZHhDbTVwZUZPeVBvSHhGRC1NM3M3RzVScmhZc0QwS1ZMT3RWd3BxMkNLVzF0dS1Nako3YlVVaUxuOTRqTGFNRmtYY1VTN3VrVUtSVXpqMG02RGE2MUhXQV9td2tKczltbk5lTTR0TnJTX0lzWnYzNFBiM2pETmtVT0xxZjZBT3VQS2ZHVTJWSThISWpIcEJpWE8xU0N5TGw0aGJFLWhpaVNWUF94andiYXJKWTI0NmF4QTl1bGc0aW8xazc1MzRZaHBPaTRwQ0Z4bjR3b2RHaHpSUE1iRFBUei1XUGszdjVkek9FTVFuU3E0c1ppUEJNak5iWGNVQnh0V1I1Q1FFMnphcEZtWUM3VjB4cldlQ1BWcDJHN1BUY3RMOGgyb0hFbmVWYWRRUjdmVG9aMUVINHlYdmlxNTNBd0tCVDQ0TnRuNWQzOGV5dnFCWUppS1lranVhOFI5SUxheGVMNkFibnFvV3ctcmctNzNPR19PbklhaFBpNjh0czQ4TjI1bmZoYTBLQmQwSElyV2ZpX3NKeGhSNUNIOU9Ecm1aekI2ZHVCaG5QTzdSbkRtemVfVWJmVEpHWDI2WDdSRnBoZElsWjR1Ti12cWdTZVlGeldHbDBlSFJaRFNROHlCcG1ETlJOanlqcUZKLTQ5OF8yNE9XX2EzNnZSb29iY1V1Wkg3aDAxZk9tSlJCM1NVSGowZ0lSVjk0RFV0bUU5UElGak8tSWZWTjY3MVFkdk5JWC1rZ3BGdzFVVEZlNGgwX1hvbzZyaWhTa2VxYVhuVktWNE1uTHptUWRUSEZNMnNJMUNxNjdrM2pLNXZFZDhPSUhCa0N6bUVuQjIwNUVXVnFuT25ob3dWSFJpVDYxSkdVejZuWmQ4OXUtN2pnaGlhWGhMbnJwc2tqOHNYMWxNODAxaU1obHR4Mnhnek9lSVNYUmFvaTEtbllBalRBV0ZxSnFkTUttRTc2Uk1mYkt3WlBwV25VYjFBUXNmVHk1cjVZWG1iaHVyVy1lSHJfbEthT0gxRWJ4dTZSTVlyT1ZkTmduNmRzVTVtSzRRNkNyZC1CM0E4NVJseGp3aG4taDdWemp0Snd4OUtnUDVUenlYZDJWT19DMzE1YzlUcDFFSnRMMjFldjl2LUFnWmlURkVDSUJ1WGp5cEViTEtxVzJwWE92VEw0SlJzelJJRFdoaktud19hcEVZX0l0d3dtRWktU3VqNlZabGkzc0k3LVM1N0hrX2JyclVUeUlQeXdrR2ZMOE1aZkZZZUxjVWRQb2RvT0oxVXdHMWpYX2U1ZHZhVzZGUU9EdGdEU0prWGxXUGFDaWRyTUpUbUJFNTRMbWJMT3Y2QlUzaE1GUTdOSVlRUUw3aUNsdzJJWktkSEZRN0QtTVkwOTJtU2pTbG04U01icm5pZi1hbjJRX2tzcTE2cU9GZ0VHeE1lNkE1bEVhQjdCZ3dvWEFja2NBYUQyaVlRNmxFMXRfWENYN1VSN0pBRUxWYnVrYWJ6NVVfU19GRkg1eGVmMGxBVFg3RkpLaC1LV000T0oyUWZ3T2kxbUU3TU50XzRxVnhvMlFCd1QxaEIxdzhuQ3RTRWdRaGlYdGRkV0pDZWRkOGMwdWM3TnFXSzc0VHNvVmhHWGVNd0hDLWFCeUFaZktPNUJ4WFlxSmxCY1VKUUdDb0phemRCejZyMy11eW03STQyUnYtS1A3bTVONm1sY0Y3TnF5VTJYNm5Eay1QQzViLW56YVdJX1h4SnpSTEtaSE42Vm5XVHZJZU5nXzhWM0x4TmQ2T2tHY04takQ4YU1vRERIOVNWWllSRndsSXBoNHhGUDk5NXdfWUxxWXM1LW1NZ0VXY3U1WXVLemhKLTByTWo2bG5pY09ISzU3Vmlpekd5TnJVYS1LdjJ2TjhqYnF3VS1wc0FWZFlKNFlTZU9zelg4WTJTQWhnVF9fWXFhRHRmaDdhYUh6eU9BUGlwNG1UTEhINjBmQUNsLTRLRUl6dUtxeWF6MlozWUdQZmV5QTRIWlFabEpVdDlhemNhbDl6R0dLRDk0b1pRUWFDMkJuRU9Xa1RmRVk5UVhSWFIzWnQzTVEyX2hJOXR4VVUzaVU1LVMyd19BVmctZkZ0Wlh3V3BKWmQ3RDhYSEgwZmdXMHFQYUo3QTFneFlzWTNiN3lUMUZ0cmdrNDVMSm85bXZwdEItY3VJdlVsZVFrd01iaVh6VTFtc2tSVU9hMHcwWnF6Z1Nrcno4WUVSaVlyTjJ3QkRXZk9jN3NxLVhVZjV6VmFoSVg3aldsTWZrUUpqNW9HVWFRdWY4QVMxSURvUlZUeGxpa3FmNDYza2pmRzV6UXJmOFFzRTRkRC1WOUNWX0VvOEN2aWRsSGYxU0hlcEpoNDJaQzl3bmU1TUhZVENrbjhnWGhWSmRQb0JHYXlLZkxyLTRyRzJCY0pQQkZWeWRtVkhnaHR4c0dmOVl0TWVnTFQxSFN0VDJUNS1sZVI3dWN3eUtHS0RjZmg4R0NOTG9sQm1PdUVMSUIxczdheWlhQzFTZnZIaVdrZHNaRW8tREVkNXhLSVVvay1KSTdjOHd1WXVXaFpDcGZmVU1lM0J0X3dfcnJOQ3FvM2lJbkgyYnk3MGNuQXdSczRNajJLUGNKWHdJMUs5Z0NMZDh0aThDbUdTMFdxdDFMRUNKaVFTNHNLbnRyOWtNc0M5Q1h1bUdKTGFhSk4xOGt5NFV2RjN0allGUGNtSUlUQS1HN3Z1dldnVEN6eDZwa1dSX1N3MDIxdk1hc1BrVUhRZGtHN1hZalQ3OF85TEV1eUV2TXcwM3lGdEVBZFE4YkNHai05OGd4LURmUE9remV1Rm5yMXhBbS02NmZqeHAydGF1cDR6dmNpNzJ0cWgydjlBNkttSDVGaFN0UXdhM09TOGowNkE5cFBhWkdKcWp5UDRPQ3VXQWZEYXc1bWx3N1NsMXdrUnVHMVZaMEdpYUctNWN6TnBQYjBfMXZyRTltLVBxYXVFRE0zMkZiYllISFJ2RERpMG9xX0RSS0ZQZU5ublNmY0JjYnRNUjU1OHJmcDk5N2xMTEdaMDdaTlFPZWxXellWSmxnVlhPV2RZRi1pbl9kcDNjQkREN2RvOFBBMFpxWGVoa0lFZmxxRWowdWpoS1E4RDNxYngzWlRiY1dkODdSenVmN1R2dkpvaHVFWHo0LVo3YlZtRTJlRU1nUk1WM2doUmlfZEx6YXpZWkJ1c3lNRFdZLXFJWVNQcjR4RkJMWmU1ajhIYWtnclVNZFQwU1A4UGVWZmJrU2VzTUdjb1JLY0ZSRVdObjFlZ0kxQ1Q3eElMTmp6dVJCNkQxNWc1VFFCMXlMdEtnV1lDN09nazQ2Q1J2SU0yR1hSNzNKUkJoNXpNcjh4NUtKLVFXRTByMEtTQm54b1l5VDdpWnlKZlpvM25wcjFfLWU3NWlxWU5QSW1fVFYxRl9FNDVqSkx1czZMektndzNkTGFXa2RRcGlrUDdBeWlRb1FXTElvVGdRUlFXM1JWUnhqNXVZMnV5amlETV9tcUFqUGRFZnR1ZHNFcWJMUWJ4c2oxTXVVU1VQT01ra1p4TWRqelk1TGQ2VU1td1NzZk1PV0JzcmJVRTBtYllFRVVaWVRUd3Z0ZXd0NGxVNVFLQ2NtejVfZGFsU3lmNzJfX1FwQnpYZWxIcThKRmNKcHVlbkF5VUhJUS10aTdCdkdGMms2MC1tWHR6Q2xsTDloNTdzaEZTS3NPeWg2QkxjamUxNlJSRmctTTRmZEF4ZUdjemN4bmJvV1ZMMHhCRGtjMFh0aF90WEZQRmlUWmlRQWFJTTU0T0l5R0pzeTcxeEJqNkRBQ05IMVN2Xzhfd2QtblNIY056ejlvZDdPVjdKbnpfRXp1NlZVT0I3R2hNSVBnc1dBeW81YldqSkR2Yk9qQjBpRlBpR0hPWTFVaHZNQ3R3V1ZsamoxcV96R3dFSl9FRmdyZmpUT2VHTmVYZzlucVVuSDhoNTBvc2pBZXlqQ0JySU9BYUhvenJURDZVZHhQQ19KV2Y0d2NwcUpBVWRQTXRIV2Y2YUZwbldSM2haeVNGRlNrWklpNjJsNWhqNE8xc0Z0MDJXalRzVUpCNDZVak1WcUkxVGkwZjNFQ0cxbVI4dTFyS0ZJNmVWSDZsd1RWQ3Fvd3BTY0Z3LXVRQkxFR0lWV3lVOGE0dFVaelRkMXIzcG84NERJdkpFWmh2WExucVRHMzRoLXdYclFLc3FDNzFQMm5nb1lmYXlQUnlucU52UFl1c0NVNU5ydnBuYUx3bTVhRjZBbXl4dXAtQW0ydjlMM3JiSFFSMTBzM2dMeVBtaURJWkdWTkFSdi1xd0k5NWw4cEJrY1hZM3kyT2FNSTNTQ21JWHdJQlprcDdpSEpVY216UWhHLWdvV3JyUFF6Y3NodlAxNDRubkQ1alJsbVpYOUw4UG4xcFJ5cWFXd0dtWC1uQVU2Y0g2TjRnNWtJcFUxWS05ME1wUTY1ajhDTEJLblZjUzJqUGl6UHFMSkVuQ3JoUWVQSC00bEpDZkZlTmhnb2lxWGhwcGxNb3BnUkYtY194NmJtcDVrUVBoc1BYTVlycjFGNVVkeHJobzR3dW0tc3RkYUZ6Mmhpd0xQWlluUkhrekx6LVM1Y0luNTlRWnlKMFYxbHdEcjh4RFRERVhJb29VOTljQnp0U0FGR2xFY3Z0ZXBkb1ZyX2VBaFlkTmQxWW9sSkdmR0ZNRU15MWw3OVRxUTg0VEJUTVBaTVh0V3FqU3RIdXlSSGNKaXpnLW1wZlFVaG9LR1dGRnZpcG1XdzF2N0w4d3JRMVJqdFdCWWp5OGNXbmhfNDI3R1NrYVpaaXotQXo3X2YzUHZlSXh2YnZqTk12Qy15a2RZeFkzOHA4VmtndzNrN09qMzFmOGtNQ3Zfc3hTOHFST1FJOV9yYXp5X3FHS2o0RElqSFNEdml0amx2SU5tbjc1ejVuRkx6Ykl0djh3a2RfM2Raa3hHLVZRM0ptNTRnN29kN1lMWnJqY0V1T1cyUS53OTljWXZpS1U4REFxV243T0g0VmNn"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['10693'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault20ea0f3c.vault.azure.net/keys/restore?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vault20ea0f3c.vault.azure.net/keys/keybak20ea0f3c/da0674c7c4374ac0b8583d69590e185e","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"0HThTbtcddOtqU8bZXNGGWOdEso0zjJoX8iJ3BekfsRefEbiJ_yscKR4EHF7EgsNUxar4ZfIMZA2Fn5U1lIEdtNu86R4n4GkUG9OkaBTOW_gkdbqDLupkKsmKhcG9Ed-N5GYlYFM78d7ReoFTHiYdV6yhaCPubAM_H4ErxkpEZwHUS216rxWLQij9bswJ-Xm4IfMzR01GCANJyJuE_HxBpz8TitohUoFnnMOPJWtYnzZU4roLxxYOBhTa3KKKzRJEy2mIjvX9FIDqZWVcLgFbFVIq3Fs91SPkb_9XNpz2WluD76GITq9te4pFURIe0DEDt90niq1gkDjFQdEheJl6Q","e":"AQAB"},"attributes":{"enabled":true,"created":1529687440,"updated":1529687440,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['650'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:10:42 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_crud_operations.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_crud_operations.yaml deleted file mode 100644 index 6eb0c4c74ade..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_crud_operations.yaml +++ /dev/null @@ -1,253 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vaultf6150e22.vault.azure.net/keys/keyf6150e22/create?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:11:24 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"kty": "RSA"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['14'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vaultf6150e22.vault.azure.net/keys/keyf6150e22/create?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vaultf6150e22.vault.azure.net/keys/keyf6150e22/5aee2822cb9949b3803e89941408d728","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"tRbLIcahkVRv7Qfz4RZE0QktP1aZHoxLzxku1poEWJoALlukpdp23lWHv_bCiY8JT4rVr6zVxdGZP_exUhE94JlnJoCWtSJI7PtjrJ7LPv50wobZPju2GsUeTSp89oWyKeKjnoJihm6t8U0wtqrV5XwMmV74N6hNNBhTL1TjKQijRJlqud8--o7pnWLvd98BV4LaJH94sU5tmgaXGu5VGjFSv79_4UX0TDsEZdoAVuaEgV4EAgy6ZG9QNuzKLebeW8phXXDNodfsFzxBthwfvOjiDnC6ItHjRCCrkjCyMqrunEuQELXIMbrJrsGrrlAYfIU-f7FtvaI-oqGqFjW13w","e":"AQAB"},"attributes":{"enabled":true,"created":1529687486,"updated":1529687486,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['647'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:11:25 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vaultf6150e22.vault.azure.net/keys/keyf6150e22/?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vaultf6150e22.vault.azure.net/keys/keyf6150e22/5aee2822cb9949b3803e89941408d728","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"tRbLIcahkVRv7Qfz4RZE0QktP1aZHoxLzxku1poEWJoALlukpdp23lWHv_bCiY8JT4rVr6zVxdGZP_exUhE94JlnJoCWtSJI7PtjrJ7LPv50wobZPju2GsUeTSp89oWyKeKjnoJihm6t8U0wtqrV5XwMmV74N6hNNBhTL1TjKQijRJlqud8--o7pnWLvd98BV4LaJH94sU5tmgaXGu5VGjFSv79_4UX0TDsEZdoAVuaEgV4EAgy6ZG9QNuzKLebeW8phXXDNodfsFzxBthwfvOjiDnC6ItHjRCCrkjCyMqrunEuQELXIMbrJrsGrrlAYfIU-f7FtvaI-oqGqFjW13w","e":"AQAB"},"attributes":{"enabled":true,"created":1529687486,"updated":1529687486,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['647'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:11:26 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vaultf6150e22.vault.azure.net/keys/keyf6150e22/5aee2822cb9949b3803e89941408d728?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vaultf6150e22.vault.azure.net/keys/keyf6150e22/5aee2822cb9949b3803e89941408d728","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"tRbLIcahkVRv7Qfz4RZE0QktP1aZHoxLzxku1poEWJoALlukpdp23lWHv_bCiY8JT4rVr6zVxdGZP_exUhE94JlnJoCWtSJI7PtjrJ7LPv50wobZPju2GsUeTSp89oWyKeKjnoJihm6t8U0wtqrV5XwMmV74N6hNNBhTL1TjKQijRJlqud8--o7pnWLvd98BV4LaJH94sU5tmgaXGu5VGjFSv79_4UX0TDsEZdoAVuaEgV4EAgy6ZG9QNuzKLebeW8phXXDNodfsFzxBthwfvOjiDnC6ItHjRCCrkjCyMqrunEuQELXIMbrJrsGrrlAYfIU-f7FtvaI-oqGqFjW13w","e":"AQAB"},"attributes":{"enabled":true,"created":1529687486,"updated":1529687486,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['647'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:11:27 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"key_ops": ["encrypt", "decrypt"], "attributes": {"enabled": true, "exp": - 2527401600}, "tags": {"foo": "updated tag"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['119'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PATCH - uri: https://vaultf6150e22.vault.azure.net/keys/keyf6150e22/?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vaultf6150e22.vault.azure.net/keys/keyf6150e22/5aee2822cb9949b3803e89941408d728","kty":"RSA","key_ops":["encrypt","decrypt"],"n":"tRbLIcahkVRv7Qfz4RZE0QktP1aZHoxLzxku1poEWJoALlukpdp23lWHv_bCiY8JT4rVr6zVxdGZP_exUhE94JlnJoCWtSJI7PtjrJ7LPv50wobZPju2GsUeTSp89oWyKeKjnoJihm6t8U0wtqrV5XwMmV74N6hNNBhTL1TjKQijRJlqud8--o7pnWLvd98BV4LaJH94sU5tmgaXGu5VGjFSv79_4UX0TDsEZdoAVuaEgV4EAgy6ZG9QNuzKLebeW8phXXDNodfsFzxBthwfvOjiDnC6ItHjRCCrkjCyMqrunEuQELXIMbrJrsGrrlAYfIU-f7FtvaI-oqGqFjW13w","e":"AQAB"},"attributes":{"enabled":true,"exp":2527401600,"created":1529687486,"updated":1529687487,"recoveryLevel":"Purgeable"},"tags":{"foo":"updated - tag"}}'} - headers: - cache-control: [no-cache] - content-length: ['655'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:11:27 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"key_ops": ["encrypt", "decrypt"], "attributes": {"enabled": true, "exp": - 2527401600}, "tags": {"foo": "updated tag"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['119'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PATCH - uri: https://vaultf6150e22.vault.azure.net/keys/keyf6150e22/5aee2822cb9949b3803e89941408d728?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vaultf6150e22.vault.azure.net/keys/keyf6150e22/5aee2822cb9949b3803e89941408d728","kty":"RSA","key_ops":["encrypt","decrypt"],"n":"tRbLIcahkVRv7Qfz4RZE0QktP1aZHoxLzxku1poEWJoALlukpdp23lWHv_bCiY8JT4rVr6zVxdGZP_exUhE94JlnJoCWtSJI7PtjrJ7LPv50wobZPju2GsUeTSp89oWyKeKjnoJihm6t8U0wtqrV5XwMmV74N6hNNBhTL1TjKQijRJlqud8--o7pnWLvd98BV4LaJH94sU5tmgaXGu5VGjFSv79_4UX0TDsEZdoAVuaEgV4EAgy6ZG9QNuzKLebeW8phXXDNodfsFzxBthwfvOjiDnC6ItHjRCCrkjCyMqrunEuQELXIMbrJrsGrrlAYfIU-f7FtvaI-oqGqFjW13w","e":"AQAB"},"attributes":{"enabled":true,"exp":2527401600,"created":1529687486,"updated":1529687488,"recoveryLevel":"Purgeable"},"tags":{"foo":"updated - tag"}}'} - headers: - cache-control: [no-cache] - content-length: ['655'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:11:27 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vaultf6150e22.vault.azure.net/keys/keyf6150e22?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vaultf6150e22.vault.azure.net/keys/keyf6150e22/5aee2822cb9949b3803e89941408d728","kty":"RSA","key_ops":["encrypt","decrypt"],"n":"tRbLIcahkVRv7Qfz4RZE0QktP1aZHoxLzxku1poEWJoALlukpdp23lWHv_bCiY8JT4rVr6zVxdGZP_exUhE94JlnJoCWtSJI7PtjrJ7LPv50wobZPju2GsUeTSp89oWyKeKjnoJihm6t8U0wtqrV5XwMmV74N6hNNBhTL1TjKQijRJlqud8--o7pnWLvd98BV4LaJH94sU5tmgaXGu5VGjFSv79_4UX0TDsEZdoAVuaEgV4EAgy6ZG9QNuzKLebeW8phXXDNodfsFzxBthwfvOjiDnC6ItHjRCCrkjCyMqrunEuQELXIMbrJrsGrrlAYfIU-f7FtvaI-oqGqFjW13w","e":"AQAB"},"attributes":{"enabled":true,"exp":2527401600,"created":1529687486,"updated":1529687488,"recoveryLevel":"Purgeable"},"tags":{"foo":"updated - tag"}}'} - headers: - cache-control: [no-cache] - content-length: ['655'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:11:28 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vaultf6150e22.vault.azure.net/keys/keyf6150e22/?api-version=7.0 - response: - body: {string: '{"error":{"code":"KeyNotFound","message":"Key not found: keyf6150e22"}}'} - headers: - cache-control: [no-cache] - content-length: ['71'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:11:28 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 404, message: Not Found} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_encrypt_and_decrypt.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_encrypt_and_decrypt.yaml deleted file mode 100644 index a07f20a5fd66..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_encrypt_and_decrypt.yaml +++ /dev/null @@ -1,196 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vault32530fc2.vault.azure.net/keys/keycrypt32530fc2?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:12:10 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"Hsm": false, "key": {"kty": "RSA", "key_ops": ["encrypt", "decrypt", - "sign", "verify", "wrapKey", "unwrapKey"], "n": "AKCRTQAjSsaDshtMFdW-2Ie9yVnC5Xr1Suc06PAHINd10nXkVSB-N4TO62ClCkZV3XKnqU0nHo7o95WaZpym53W_DiO62umRtFKdl4UotL2QUh0y3SZWeWuoK2u_x2aMj17rUFN0f9GZMZ0pqEQNCPRBLVJ_-TEe2nGCWSC0exxGsRqz6R1zFkB-icfzQPe4WjQELOUXQ7J9RxhAPTTHtDivYYG-BeTRHrmF04JT1_6b9T_C8bAC0i0teT-nmlBLarQtBJKATXBx1yegbPOoiTqlQrFQP4MrKWNxtnB9Tcbjcvj-Z9je0ckI_eRc4DvAhqcUh_p15Dqg4GeaoNIO_jU", - "e": "AQAB", "d": "Ynx9JGaBSP4iUsf6ZJ6opantRNdcdmzaQrKbZg6ZQE8Ohi1FYabJWvaoPSE-CiJEsDzShXZHMhUHN4X7Bn8BXaGQhK3p9HXgiwQKmix7oAJTu4ElUIyd8UC3UWHSZr40el4PaQD-HYu_eMzCXus34MnRiNbh_BUWm6T-Eidhk9d3kNIyaSi9YNDQHW6tjWrEhhq63O7JU1j9ZonFChZxpKk20jdkQKQURVAdpOdL-5j4I70ZxFuU6wHZj8DS8oRQfwGOvZKbgYDb5jgf3UNL_7eACqq92XPVX56vm7iKbqeyjCqAIx5y3hrSRIJtZlWCwjYnYQGd4unxDLi8wmJWSQ", - "dp": "AMmhWb5yZcu6vJr8xJZ-t0_likxJRUMZAtEULaWZt2DgODj4y9JrZDJP6mvckzhQP0WXk2NuWbU2HR5pUeCN2wieG1B76VKoH76vfnaJDqT1NuJVBcP2SLHog3ffwZtMME5zjfygchG3kihqOSpwTQ9ETAqAJTkRC38fEhwAz_Cp", - "dq": "AKC9TAo9n2RDaggjdLXK8kiLrBVoaWFTpqXkzYXRhtsx4vWPAkxhfSnze05rVMl6HiXv7FnE0f0wYawzUJzoyuXBH0zS6D9BqCZPeF543AmWB27iPf38Q9Z8Rjr6oBgMSnGDV_mm8nDVQkeaDyE4cOZh-5UKvKShTKKQVwunmDNH", - "qi": "AJ_nrkLpK8BPzVeARkvSHQyKwMWZ-a8CD95qsKfn0dOZAvXY-2xhQYTEwbED-0bpTNEKbIpA-ZkaHygmnzJkNbbFAnb9pkkzU8ZQqDP3JNgMfVIroWx58Oth9nJza2j7i-MkPRCUPEq3Ao0J52z7WJIiLji8TTVYW_NaiM1oxzsH", - "p": "ANHerI1o3dLB_VLVmZZVss8VZSYN5SaeQ_0qhfOSgOFwj__waCFmy2EG7l6l6f_Z-Y0L7Mn_LNov68lyWSFa2EuQUeVj4UoFHc5Di8ZUGiSsTwFM-XMtNuv8HmGgDYLL5BIJD3eTz71LdgW-Ez38OZH34b7VeG8zfeUDb8Hi30zz", - "q": "AMPcZrZBqbc82DO8Q5zTT8ZXRGWrW36KktMllaIk1W2RHnRiQiW0jBWmcCgqUcQNHa1LwumjyNqwx28QBS37BTvG7ULGUoio6LrOeoiBGEMj-U19sX6m37plEhj5Mak7j3OPPY_T9rohjTW5aGGg9YSwq4jdz0RrmBX00ofYOjI3"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['1738'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vault32530fc2.vault.azure.net/keys/keycrypt32530fc2?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vault32530fc2.vault.azure.net/keys/keycrypt32530fc2/47bb1017b6d440b6876fd69b5b33f92e","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"AKCRTQAjSsaDshtMFdW-2Ie9yVnC5Xr1Suc06PAHINd10nXkVSB-N4TO62ClCkZV3XKnqU0nHo7o95WaZpym53W_DiO62umRtFKdl4UotL2QUh0y3SZWeWuoK2u_x2aMj17rUFN0f9GZMZ0pqEQNCPRBLVJ_-TEe2nGCWSC0exxGsRqz6R1zFkB-icfzQPe4WjQELOUXQ7J9RxhAPTTHtDivYYG-BeTRHrmF04JT1_6b9T_C8bAC0i0teT-nmlBLarQtBJKATXBx1yegbPOoiTqlQrFQP4MrKWNxtnB9Tcbjcvj-Z9je0ckI_eRc4DvAhqcUh_p15Dqg4GeaoNIO_jU","e":"AQAB"},"attributes":{"enabled":true,"created":1529687532,"updated":1529687532,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['653'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:12:11 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"alg": "RSA-OAEP", "value": "NTA2M2U2YWFhODQ1ZjE1MDIwMDU0Nzk0NGZkMTk5Njc5Yzk4ZWQ2Zjk5ZGEwYTBiMmRhZmVhZjFmNDY4NDQ5NmZkNTMyYzFjMjI5OTY4Y2I5ZGVlNDQ5NTdmY2VmN2NjZWY1OWNlZGEwYjM2MmU1NmJjZDc4ZmQzZmFlZTU3ODFjNjIzYzBiYjIyYjM1YmVhYmRlMDY2NGZkMzBlMGU4MjRhYmEzZGQxYjBhZmZmYzRhM2Q5NTVlZGUyMGNmNmE4NTRkNTJjZmQ"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['299'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault32530fc2.vault.azure.net/keys/keycrypt32530fc2/encrypt?api-version=7.0 - response: - body: {string: '{"kid":"https://vault32530fc2.vault.azure.net/keys/keycrypt32530fc2/47bb1017b6d440b6876fd69b5b33f92e","value":"dIlWCi_3bn3YFr1wgRrUXdGJRYHI47wSBuiK_PZYaM5WI9GTLIviKX84EszY7nPOV5_WC8jk9Zuty_H0rKNAtwrORIGI9x6TLhhcPTFzGVTDvfBvVbLg7lZzvCxaRKAFIH8yzRaX4yFSYxYc3OuEblON4RPTHPGXxqAHwmT2I04xXh7aCFIc7I6nWvVTISD_myXt3UAP8CUHr13vEgwVD4oB5n6TOoEa5vfdedBsLATSDGymEtRXX_o55lu14Ldiixbp_bdyGLqjjfW1aXfdxLgS_n7-DzDdD4SR7B-bnBC_ZukPMi3DbwWuLgXvrwJi6U3ermjJ_KE18pXep8VLkw"}'} - headers: - cache-control: [no-cache] - content-length: ['455'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:12:12 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"alg": "RSA-OAEP", "value": "dIlWCi_3bn3YFr1wgRrUXdGJRYHI47wSBuiK_PZYaM5WI9GTLIviKX84EszY7nPOV5_WC8jk9Zuty_H0rKNAtwrORIGI9x6TLhhcPTFzGVTDvfBvVbLg7lZzvCxaRKAFIH8yzRaX4yFSYxYc3OuEblON4RPTHPGXxqAHwmT2I04xXh7aCFIc7I6nWvVTISD_myXt3UAP8CUHr13vEgwVD4oB5n6TOoEa5vfdedBsLATSDGymEtRXX_o55lu14Ldiixbp_bdyGLqjjfW1aXfdxLgS_n7-DzDdD4SR7B-bnBC_ZukPMi3DbwWuLgXvrwJi6U3ermjJ_KE18pXep8VLkw"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['374'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault32530fc2.vault.azure.net/keys/keycrypt32530fc2/decrypt?api-version=7.0 - response: - body: {string: '{"kid":"https://vault32530fc2.vault.azure.net/keys/keycrypt32530fc2/47bb1017b6d440b6876fd69b5b33f92e","value":"NTA2M2U2YWFhODQ1ZjE1MDIwMDU0Nzk0NGZkMTk5Njc5Yzk4ZWQ2Zjk5ZGEwYTBiMmRhZmVhZjFmNDY4NDQ5NmZkNTMyYzFjMjI5OTY4Y2I5ZGVlNDQ5NTdmY2VmN2NjZWY1OWNlZGEwYjM2MmU1NmJjZDc4ZmQzZmFlZTU3ODFjNjIzYzBiYjIyYjM1YmVhYmRlMDY2NGZkMzBlMGU4MjRhYmEzZGQxYjBhZmZmYzRhM2Q5NTVlZGUyMGNmNmE4NTRkNTJjZmQ"}'} - headers: - cache-control: [no-cache] - content-length: ['380'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:12:12 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"alg": "RSA-OAEP", "value": "NTA2M2U2YWFhODQ1ZjE1MDIwMDU0Nzk0NGZkMTk5Njc5Yzk4ZWQ2Zjk5ZGEwYTBiMmRhZmVhZjFmNDY4NDQ5NmZkNTMyYzFjMjI5OTY4Y2I5ZGVlNDQ5NTdmY2VmN2NjZWY1OWNlZGEwYjM2MmU1NmJjZDc4ZmQzZmFlZTU3ODFjNjIzYzBiYjIyYjM1YmVhYmRlMDY2NGZkMzBlMGU4MjRhYmEzZGQxYjBhZmZmYzRhM2Q5NTVlZGUyMGNmNmE4NTRkNTJjZmQ"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['299'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault32530fc2.vault.azure.net/keys/keycrypt32530fc2/47bb1017b6d440b6876fd69b5b33f92e/encrypt?api-version=7.0 - response: - body: {string: '{"kid":"https://vault32530fc2.vault.azure.net/keys/keycrypt32530fc2/47bb1017b6d440b6876fd69b5b33f92e","value":"GioM0MgiAEydSM0SqGbKW52ACL3nw1nx6bT_s1-lSE67aqxRwfqL1ufzXP_vx-HMF4Gs8NbXqaZoTjUiS2dQGIBCtx4g1BMndHe_IaLfYSac4FHAXZXq038gilp69leLRY51D4k36xqCcMItGQaVd2CjkoNPYBY782gfbyp_jR87tv9TjbYEKAKnwEDWYsphOZJOMCUf8d7VlJkjf19T_FcBUqCC_GaZSGFAiTCU88myD5OmStEZPN4XSUqu5DDUYl1u6UcaBkXuZfT6niwRtPjBanb-M3gaNOypWlZiPxpfEIb-PXPc1NHJZj9tYkiNpIjpwOS5m8QvDtCJNO42Ug"}'} - headers: - cache-control: [no-cache] - content-length: ['455'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:12:13 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"alg": "RSA-OAEP", "value": "GioM0MgiAEydSM0SqGbKW52ACL3nw1nx6bT_s1-lSE67aqxRwfqL1ufzXP_vx-HMF4Gs8NbXqaZoTjUiS2dQGIBCtx4g1BMndHe_IaLfYSac4FHAXZXq038gilp69leLRY51D4k36xqCcMItGQaVd2CjkoNPYBY782gfbyp_jR87tv9TjbYEKAKnwEDWYsphOZJOMCUf8d7VlJkjf19T_FcBUqCC_GaZSGFAiTCU88myD5OmStEZPN4XSUqu5DDUYl1u6UcaBkXuZfT6niwRtPjBanb-M3gaNOypWlZiPxpfEIb-PXPc1NHJZj9tYkiNpIjpwOS5m8QvDtCJNO42Ug"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['374'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault32530fc2.vault.azure.net/keys/keycrypt32530fc2/47bb1017b6d440b6876fd69b5b33f92e/decrypt?api-version=7.0 - response: - body: {string: '{"kid":"https://vault32530fc2.vault.azure.net/keys/keycrypt32530fc2/47bb1017b6d440b6876fd69b5b33f92e","value":"NTA2M2U2YWFhODQ1ZjE1MDIwMDU0Nzk0NGZkMTk5Njc5Yzk4ZWQ2Zjk5ZGEwYTBiMmRhZmVhZjFmNDY4NDQ5NmZkNTMyYzFjMjI5OTY4Y2I5ZGVlNDQ5NTdmY2VmN2NjZWY1OWNlZGEwYjM2MmU1NmJjZDc4ZmQzZmFlZTU3ODFjNjIzYzBiYjIyYjM1YmVhYmRlMDY2NGZkMzBlMGU4MjRhYmEzZGQxYjBhZmZmYzRhM2Q5NTVlZGUyMGNmNmE4NTRkNTJjZmQ"}'} - headers: - cache-control: [no-cache] - content-length: ['380'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:12:14 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_import.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_import.yaml deleted file mode 100644 index 236716071215..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_import.yaml +++ /dev/null @@ -1,110 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vault86a30a6c.vault.azure.net/keys/keyimp86a30a6c?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:12:56 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"Hsm": false, "key": {"kty": "RSA", "key_ops": ["encrypt", "decrypt", - "sign", "verify", "wrapKey", "unwrapKey"], "n": "AKCRTQAjSsaDshtMFdW-2Ie9yVnC5Xr1Suc06PAHINd10nXkVSB-N4TO62ClCkZV3XKnqU0nHo7o95WaZpym53W_DiO62umRtFKdl4UotL2QUh0y3SZWeWuoK2u_x2aMj17rUFN0f9GZMZ0pqEQNCPRBLVJ_-TEe2nGCWSC0exxGsRqz6R1zFkB-icfzQPe4WjQELOUXQ7J9RxhAPTTHtDivYYG-BeTRHrmF04JT1_6b9T_C8bAC0i0teT-nmlBLarQtBJKATXBx1yegbPOoiTqlQrFQP4MrKWNxtnB9Tcbjcvj-Z9je0ckI_eRc4DvAhqcUh_p15Dqg4GeaoNIO_jU", - "e": "AQAB", "d": "Ynx9JGaBSP4iUsf6ZJ6opantRNdcdmzaQrKbZg6ZQE8Ohi1FYabJWvaoPSE-CiJEsDzShXZHMhUHN4X7Bn8BXaGQhK3p9HXgiwQKmix7oAJTu4ElUIyd8UC3UWHSZr40el4PaQD-HYu_eMzCXus34MnRiNbh_BUWm6T-Eidhk9d3kNIyaSi9YNDQHW6tjWrEhhq63O7JU1j9ZonFChZxpKk20jdkQKQURVAdpOdL-5j4I70ZxFuU6wHZj8DS8oRQfwGOvZKbgYDb5jgf3UNL_7eACqq92XPVX56vm7iKbqeyjCqAIx5y3hrSRIJtZlWCwjYnYQGd4unxDLi8wmJWSQ", - "dp": "AMmhWb5yZcu6vJr8xJZ-t0_likxJRUMZAtEULaWZt2DgODj4y9JrZDJP6mvckzhQP0WXk2NuWbU2HR5pUeCN2wieG1B76VKoH76vfnaJDqT1NuJVBcP2SLHog3ffwZtMME5zjfygchG3kihqOSpwTQ9ETAqAJTkRC38fEhwAz_Cp", - "dq": "AKC9TAo9n2RDaggjdLXK8kiLrBVoaWFTpqXkzYXRhtsx4vWPAkxhfSnze05rVMl6HiXv7FnE0f0wYawzUJzoyuXBH0zS6D9BqCZPeF543AmWB27iPf38Q9Z8Rjr6oBgMSnGDV_mm8nDVQkeaDyE4cOZh-5UKvKShTKKQVwunmDNH", - "qi": "AJ_nrkLpK8BPzVeARkvSHQyKwMWZ-a8CD95qsKfn0dOZAvXY-2xhQYTEwbED-0bpTNEKbIpA-ZkaHygmnzJkNbbFAnb9pkkzU8ZQqDP3JNgMfVIroWx58Oth9nJza2j7i-MkPRCUPEq3Ao0J52z7WJIiLji8TTVYW_NaiM1oxzsH", - "p": "ANHerI1o3dLB_VLVmZZVss8VZSYN5SaeQ_0qhfOSgOFwj__waCFmy2EG7l6l6f_Z-Y0L7Mn_LNov68lyWSFa2EuQUeVj4UoFHc5Di8ZUGiSsTwFM-XMtNuv8HmGgDYLL5BIJD3eTz71LdgW-Ez38OZH34b7VeG8zfeUDb8Hi30zz", - "q": "AMPcZrZBqbc82DO8Q5zTT8ZXRGWrW36KktMllaIk1W2RHnRiQiW0jBWmcCgqUcQNHa1LwumjyNqwx28QBS37BTvG7ULGUoio6LrOeoiBGEMj-U19sX6m37plEhj5Mak7j3OPPY_T9rohjTW5aGGg9YSwq4jdz0RrmBX00ofYOjI3"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['1738'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vault86a30a6c.vault.azure.net/keys/keyimp86a30a6c?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vault86a30a6c.vault.azure.net/keys/keyimp86a30a6c/678fa8c0a9e7481b8325531b1b297452","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"AKCRTQAjSsaDshtMFdW-2Ie9yVnC5Xr1Suc06PAHINd10nXkVSB-N4TO62ClCkZV3XKnqU0nHo7o95WaZpym53W_DiO62umRtFKdl4UotL2QUh0y3SZWeWuoK2u_x2aMj17rUFN0f9GZMZ0pqEQNCPRBLVJ_-TEe2nGCWSC0exxGsRqz6R1zFkB-icfzQPe4WjQELOUXQ7J9RxhAPTTHtDivYYG-BeTRHrmF04JT1_6b9T_C8bAC0i0teT-nmlBLarQtBJKATXBx1yegbPOoiTqlQrFQP4MrKWNxtnB9Tcbjcvj-Z9je0ckI_eRc4DvAhqcUh_p15Dqg4GeaoNIO_jU","e":"AQAB"},"attributes":{"enabled":true,"created":1529687577,"updated":1529687577,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['651'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:12:57 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"Hsm": true, "key": {"kty": "RSA", "key_ops": ["encrypt", "decrypt", "sign", - "verify", "wrapKey", "unwrapKey"], "n": "AKCRTQAjSsaDshtMFdW-2Ie9yVnC5Xr1Suc06PAHINd10nXkVSB-N4TO62ClCkZV3XKnqU0nHo7o95WaZpym53W_DiO62umRtFKdl4UotL2QUh0y3SZWeWuoK2u_x2aMj17rUFN0f9GZMZ0pqEQNCPRBLVJ_-TEe2nGCWSC0exxGsRqz6R1zFkB-icfzQPe4WjQELOUXQ7J9RxhAPTTHtDivYYG-BeTRHrmF04JT1_6b9T_C8bAC0i0teT-nmlBLarQtBJKATXBx1yegbPOoiTqlQrFQP4MrKWNxtnB9Tcbjcvj-Z9je0ckI_eRc4DvAhqcUh_p15Dqg4GeaoNIO_jU", - "e": "AQAB", "d": "Ynx9JGaBSP4iUsf6ZJ6opantRNdcdmzaQrKbZg6ZQE8Ohi1FYabJWvaoPSE-CiJEsDzShXZHMhUHN4X7Bn8BXaGQhK3p9HXgiwQKmix7oAJTu4ElUIyd8UC3UWHSZr40el4PaQD-HYu_eMzCXus34MnRiNbh_BUWm6T-Eidhk9d3kNIyaSi9YNDQHW6tjWrEhhq63O7JU1j9ZonFChZxpKk20jdkQKQURVAdpOdL-5j4I70ZxFuU6wHZj8DS8oRQfwGOvZKbgYDb5jgf3UNL_7eACqq92XPVX56vm7iKbqeyjCqAIx5y3hrSRIJtZlWCwjYnYQGd4unxDLi8wmJWSQ", - "dp": "AMmhWb5yZcu6vJr8xJZ-t0_likxJRUMZAtEULaWZt2DgODj4y9JrZDJP6mvckzhQP0WXk2NuWbU2HR5pUeCN2wieG1B76VKoH76vfnaJDqT1NuJVBcP2SLHog3ffwZtMME5zjfygchG3kihqOSpwTQ9ETAqAJTkRC38fEhwAz_Cp", - "dq": "AKC9TAo9n2RDaggjdLXK8kiLrBVoaWFTpqXkzYXRhtsx4vWPAkxhfSnze05rVMl6HiXv7FnE0f0wYawzUJzoyuXBH0zS6D9BqCZPeF543AmWB27iPf38Q9Z8Rjr6oBgMSnGDV_mm8nDVQkeaDyE4cOZh-5UKvKShTKKQVwunmDNH", - "qi": "AJ_nrkLpK8BPzVeARkvSHQyKwMWZ-a8CD95qsKfn0dOZAvXY-2xhQYTEwbED-0bpTNEKbIpA-ZkaHygmnzJkNbbFAnb9pkkzU8ZQqDP3JNgMfVIroWx58Oth9nJza2j7i-MkPRCUPEq3Ao0J52z7WJIiLji8TTVYW_NaiM1oxzsH", - "p": "ANHerI1o3dLB_VLVmZZVss8VZSYN5SaeQ_0qhfOSgOFwj__waCFmy2EG7l6l6f_Z-Y0L7Mn_LNov68lyWSFa2EuQUeVj4UoFHc5Di8ZUGiSsTwFM-XMtNuv8HmGgDYLL5BIJD3eTz71LdgW-Ez38OZH34b7VeG8zfeUDb8Hi30zz", - "q": "AMPcZrZBqbc82DO8Q5zTT8ZXRGWrW36KktMllaIk1W2RHnRiQiW0jBWmcCgqUcQNHa1LwumjyNqwx28QBS37BTvG7ULGUoio6LrOeoiBGEMj-U19sX6m37plEhj5Mak7j3OPPY_T9rohjTW5aGGg9YSwq4jdz0RrmBX00ofYOjI3"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['1737'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vault86a30a6c.vault.azure.net/keys/keyimp86a30a6c?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vault86a30a6c.vault.azure.net/keys/keyimp86a30a6c/1886961232a74df8845886d646cadc19","kty":"RSA-HSM","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"AKCRTQAjSsaDshtMFdW-2Ie9yVnC5Xr1Suc06PAHINd10nXkVSB-N4TO62ClCkZV3XKnqU0nHo7o95WaZpym53W_DiO62umRtFKdl4UotL2QUh0y3SZWeWuoK2u_x2aMj17rUFN0f9GZMZ0pqEQNCPRBLVJ_-TEe2nGCWSC0exxGsRqz6R1zFkB-icfzQPe4WjQELOUXQ7J9RxhAPTTHtDivYYG-BeTRHrmF04JT1_6b9T_C8bAC0i0teT-nmlBLarQtBJKATXBx1yegbPOoiTqlQrFQP4MrKWNxtnB9Tcbjcvj-Z9je0ckI_eRc4DvAhqcUh_p15Dqg4GeaoNIO_jU","e":"AQAB"},"attributes":{"enabled":true,"created":1529687578,"updated":1529687578,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['655'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:12:58 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_list.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_list.yaml deleted file mode 100644 index 6822711fde47..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_list.yaml +++ /dev/null @@ -1,126 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault724a098d.vault.azure.net/keys/key0-724a098d/create?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:13:39 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"kty": "RSA"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['14'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault724a098d.vault.azure.net/keys/key0-724a098d/create?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vault724a098d.vault.azure.net/keys/key0-724a098d/d7863851dd6d40048657b01d33bac2c9","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"h10Mm1puqevB-ffMGc-e2gUcyLhgkUZ64rqCgsIwOW7u89L2s2JrF1bE2KgnIsVg-068U176H_sbV2LqPAbs-8s7WQzU26am_54PIk3wmuhBzpz1oZeo7tisNoigJtBUv1exGZgn8qWrGf3dhcTMCmXHjeQ-yAiVJXvBxgGC5GkiDDBZ0yJHe8_8vwg1woyhLa_lngt1oQWaYEZdiFLlxjHM_lzymXtOmgaFHbRAEC-7J53S3zcsudVDMB2ztrRtTqnMdomw9651OOTFQoIJUkYUyhseWXp3zRV_mKSQy5Hs2WWNEMXb9ut1NMwc6_4yKwylFFVh9I3P8Fmq4Bi4IQ","e":"AQAB"},"attributes":{"enabled":true,"created":1529687621,"updated":1529687621,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['649'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:13:40 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"kty": "RSA"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['14'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault724a098d.vault.azure.net/keys/key1-724a098d/create?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vault724a098d.vault.azure.net/keys/key1-724a098d/71ee5c49ef3447dcb4eae611a3f847d6","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"6jVjGaHtHtxSWktW3WjTol1qGmBFiXt3Xpq_OW4E7PHzJWbPk8eNygQ7GlwLX9pUJ6CjXKFeMEgZ4EPSKhzYuOD20wZwPd4V509BtYYKEwjHCzKH3R2oqvnLWDEYxlzrecAxGSgdr2muPT8DyMckkRP3PdBfNKQGZxdhVAngTWNnHfy3DQZ6ru2tLDS1lsXHiBDvhraLSZjMi9BtbW_5PUNTRxGNf8Bpbo4vr82ejYXa1WqEpK8ggQyDDQ6ZM_v0vTFOYRBYc82CctzeZrqRB2akoBqXxn4FUnlGBYNB2LGcLj5PiwYgEBChSV7-jgv7j0JL9fZT97x4QqCST2Edzw","e":"AQAB"},"attributes":{"enabled":true,"created":1529687622,"updated":1529687622,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['649'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:13:41 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault724a098d.vault.azure.net/keys?maxresults=2&api-version=7.0 - response: - body: {string: '{"value":[{"kid":"https://vault724a098d.vault.azure.net/keys/key0-724a098d","attributes":{"enabled":true,"created":1529687621,"updated":1529687621,"recoveryLevel":"Purgeable"}},{"kid":"https://vault724a098d.vault.azure.net/keys/key1-724a098d","attributes":{"enabled":true,"created":1529687622,"updated":1529687622,"recoveryLevel":"Purgeable"}}],"nextLink":null}'} - headers: - cache-control: [no-cache] - content-length: ['361'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:13:42 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_list_versions.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_list_versions.yaml deleted file mode 100644 index 8a9101af1a0e..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_list_versions.yaml +++ /dev/null @@ -1,126 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vaultdb340d65.vault.azure.net/keys/keydb340d65/create?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:14:23 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"kty": "RSA"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['14'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vaultdb340d65.vault.azure.net/keys/keydb340d65/create?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vaultdb340d65.vault.azure.net/keys/keydb340d65/03885a5381024ffabf3a57bb4f85ad24","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"u9SnIR__HIlpJAAKa2zs2KLW90s4Hy7_lz08Dc8MuXFjTpODQMCZ7KZTNi2rryNeRz_-f1CZp5XcQwWA4h14_oFm0ws7vzVKKDaFXPVPZKPG1JO9_4iMEeooP8wy-IvmiNIM6GnmGTSik6-rPmJhmfWoZMlQ58j7p5xw2SV8qBDQL7Ec_gK74xWJfn423AMFXofcZW9TZmsc0KiGk_r5rPBdpIC7Bruq5ep_jeO60yvfRnyk8DCPBxYV5mTfCx1BP-MXQN4BdV5LMolGxLJ7r7Sr8UaaYGDSmrNkJAp-KtozgDzrMIpTM6loW_oRjyOYYs9Jh2FiC_B8kyPv5XXX9w","e":"AQAB"},"attributes":{"enabled":true,"created":1529687664,"updated":1529687664,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['647'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:14:24 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"kty": "RSA"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['14'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vaultdb340d65.vault.azure.net/keys/keydb340d65/create?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vaultdb340d65.vault.azure.net/keys/keydb340d65/d13aebc06d554bb996ec2921139ad21b","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"i0AD_Y1ho0r_7XwWgv-UzxJp_bB0YCaZJ9pjfP01NgAOO0SlBrcsLyK8tJsZBn6RJitV7IFtLIBTTSHnI5xU4Jljd2XN0rJaM2OD0maW3ImgYcP12M8k_QFm94ZM34UJoY3sg4cALeniU9D2rBt6x_cOMBj0HCO97dilQ96RIHaJjzjxShe8jMZTd2Us8soYt4MK0guc_belBJuwosAzBTWQyB3cH1Aw89YTLC9AovAMw30BVK6SsFNxn6xTjAXbLNfVIFEls-CQ7dqcsD-odN9LZGbwa4Vc1cnWGIsmgU2qVX98kot290AxkgZjhMJqRAIFOTJvawcawqgfFt7B8w","e":"AQAB"},"attributes":{"enabled":true,"created":1529687665,"updated":1529687665,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['647'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:14:24 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vaultdb340d65.vault.azure.net/keys/keydb340d65/versions?api-version=7.0 - response: - body: {string: '{"value":[{"kid":"https://vaultdb340d65.vault.azure.net/keys/keydb340d65/03885a5381024ffabf3a57bb4f85ad24","attributes":{"enabled":true,"created":1529687664,"updated":1529687664,"recoveryLevel":"Purgeable"}},{"kid":"https://vaultdb340d65.vault.azure.net/keys/keydb340d65/d13aebc06d554bb996ec2921139ad21b","attributes":{"enabled":true,"created":1529687665,"updated":1529687665,"recoveryLevel":"Purgeable"}}],"nextLink":null}'} - headers: - cache-control: [no-cache] - content-length: ['423'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:14:25 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_recover_and_purge.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_recover_and_purge.yaml deleted file mode 100644 index b265981cfcd7..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_recover_and_purge.yaml +++ /dev/null @@ -1,462 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault13240edb.vault.azure.net/keys/keyrec013240edb/create?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:15:05 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"kty": "RSA"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['14'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault13240edb.vault.azure.net/keys/keyrec013240edb/create?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vault13240edb.vault.azure.net/keys/keyrec013240edb/cd39974093474c93ad781de683aab15d","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"qTSz9_B5fbYRu35uS5n1xoaAeUYeo9qRHQK5DWF9T5yUuSDP_2BqifV0awGKshLo1GVYwTXzChbQHCyD_W_depHVRz5HzHEIS1Dpm53hQFA2bFV57YtNXmtgTKQLhJPvxefaQRig-f0QiTdv02botLT7nqzMSjXGyxb7NCRVKI2yh4jEhkoaLvQw7iS9QBEadF_9DKkqNswxUd-D3lQRh8MgugQSclKk39ulM6yWQVHrKNmFXls9NjIbV88nVd6mwTtPzku6Rqpicbo7nfcKxd9kCH6IZYb4m3FUaHtTrI6aUIaGyPYrzBNwvrNOhZevtOetk89x51ibPyF6WKLyZQ","e":"AQAB"},"attributes":{"enabled":true,"created":1529687706,"updated":1529687706,"recoveryLevel":"Recoverable+Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['663'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:15:06 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"kty": "RSA"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['14'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault13240edb.vault.azure.net/keys/keyrec113240edb/create?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vault13240edb.vault.azure.net/keys/keyrec113240edb/cb7f2911ff4d4be2b803b84fdb4c6b54","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"rYA8p9wbmIzo7nbMOvt_GUNhEjMSRL-03xe77LEkyeOv-TTpHkZbF85KhOZes7AAToH13-RLrmOfkzN6B0KSLAfegI-iziMT0LtkoJriAuFr_IpuYo_viKp-7RL1eo9hntqRVna4dBt5Bhjb8Ylzwhuj28Mx_opWuikHpeCc8I2Y8OGZFv2a4Uf-k7x2EhKgcIbtIP8941VtpmVrGUZp21RbHqiwqh_rmpalN0mV8kbGDeiNJbZa9h9oanUD6cr8fPNfi2vxLQctLbUU83Zw6_Hs0WuvKIIf35f1gfqkqQaHA-u0a9sfAZ368Xly5Fu2oaUUt44Mv6F3G5d0bLzzDQ","e":"AQAB"},"attributes":{"enabled":true,"created":1529687707,"updated":1529687707,"recoveryLevel":"Recoverable+Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['663'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:15:07 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"kty": "RSA"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['14'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault13240edb.vault.azure.net/keys/keyprg013240edb/create?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vault13240edb.vault.azure.net/keys/keyprg013240edb/650feba54baa409cab7571d7bd82417b","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"pO9onZcteRxWUukmwl1wBh6G9GkfU42EpXM7YM7JVh6fr5Y_8U-cX2inFJ39AEqYwfJyk8bxMVC7Z87IvicwaSpMOptsFTkMYxZjHT0DGUzvFALaIz4SkS1tiBiW-SWEzJLBBbNFzFxE1wDygMWXUNjjMq6lAGJoTFdiCcpmRVbrklmluJfWHWeSZ6HRDBYeiO8lxwN3vUC9xkEh-dX8diw-Aq4YxtiFZo7s7YnlDtyn8EczRe0tAe2isJ0BWUwnHak1d7yujg0-UCynI4N5au6fCaZs4mKexYXAqtVQwPTKLmjDA2tUlWISWmnaBA-XYePf_nQmFO4W5iiorZWqKQ","e":"AQAB"},"attributes":{"enabled":true,"created":1529687708,"updated":1529687708,"recoveryLevel":"Recoverable+Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['663'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:15:07 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"kty": "RSA"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['14'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault13240edb.vault.azure.net/keys/keyprg113240edb/create?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vault13240edb.vault.azure.net/keys/keyprg113240edb/4652dcfa8a264397963d98c03f8724fe","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"0Ajj6qbOfyfoQud0-yYvmD6y3_qkUJZtgeQ1ixFr8zu9emYWPaM2-hCyWA7quLQL8iZCTeleXyziBZ-kcem2rxj9Sx_8xwkeZgYgwB0toRTJsACLA_hwB6b5FCZIKr34LXEnrR8QjUZDWu-OlKY1Af-L1ZRplGH7j2VCoYpf_r0-eJsJ2wJq9uomI6ApR77r23nW-6cpUDuekNFaKStm6eY7S-70sbcKP0-vaOEV58H1_V2pC4xJyYydb_cb1qrGUOOgAz3R7TqZGHXUs4Pgt1xaP_WgZ49wPjNBeAykSsptA93avd4Yba2aAFNr-1WUkhYQwXSVzXaFnweqbwhscw","e":"AQAB"},"attributes":{"enabled":true,"created":1529687708,"updated":1529687708,"recoveryLevel":"Recoverable+Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['663'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:15:08 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vault13240edb.vault.azure.net/keys/keyrec013240edb?api-version=7.0 - response: - body: {string: '{"recoveryId":"https://vault13240edb.vault.azure.net/deletedkeys/keyrec013240edb","deletedDate":1529687709,"scheduledPurgeDate":1537463709,"key":{"kid":"https://vault13240edb.vault.azure.net/keys/keyrec013240edb/cd39974093474c93ad781de683aab15d","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"qTSz9_B5fbYRu35uS5n1xoaAeUYeo9qRHQK5DWF9T5yUuSDP_2BqifV0awGKshLo1GVYwTXzChbQHCyD_W_depHVRz5HzHEIS1Dpm53hQFA2bFV57YtNXmtgTKQLhJPvxefaQRig-f0QiTdv02botLT7nqzMSjXGyxb7NCRVKI2yh4jEhkoaLvQw7iS9QBEadF_9DKkqNswxUd-D3lQRh8MgugQSclKk39ulM6yWQVHrKNmFXls9NjIbV88nVd6mwTtPzku6Rqpicbo7nfcKxd9kCH6IZYb4m3FUaHtTrI6aUIaGyPYrzBNwvrNOhZevtOetk89x51ibPyF6WKLyZQ","e":"AQAB"},"attributes":{"enabled":true,"created":1529687706,"updated":1529687706,"recoveryLevel":"Recoverable+Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['801'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:15:09 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vault13240edb.vault.azure.net/keys/keyrec113240edb?api-version=7.0 - response: - body: {string: '{"recoveryId":"https://vault13240edb.vault.azure.net/deletedkeys/keyrec113240edb","deletedDate":1529687710,"scheduledPurgeDate":1537463710,"key":{"kid":"https://vault13240edb.vault.azure.net/keys/keyrec113240edb/cb7f2911ff4d4be2b803b84fdb4c6b54","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"rYA8p9wbmIzo7nbMOvt_GUNhEjMSRL-03xe77LEkyeOv-TTpHkZbF85KhOZes7AAToH13-RLrmOfkzN6B0KSLAfegI-iziMT0LtkoJriAuFr_IpuYo_viKp-7RL1eo9hntqRVna4dBt5Bhjb8Ylzwhuj28Mx_opWuikHpeCc8I2Y8OGZFv2a4Uf-k7x2EhKgcIbtIP8941VtpmVrGUZp21RbHqiwqh_rmpalN0mV8kbGDeiNJbZa9h9oanUD6cr8fPNfi2vxLQctLbUU83Zw6_Hs0WuvKIIf35f1gfqkqQaHA-u0a9sfAZ368Xly5Fu2oaUUt44Mv6F3G5d0bLzzDQ","e":"AQAB"},"attributes":{"enabled":true,"created":1529687707,"updated":1529687707,"recoveryLevel":"Recoverable+Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['801'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:15:09 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vault13240edb.vault.azure.net/keys/keyprg013240edb?api-version=7.0 - response: - body: {string: '{"recoveryId":"https://vault13240edb.vault.azure.net/deletedkeys/keyprg013240edb","deletedDate":1529687710,"scheduledPurgeDate":1537463710,"key":{"kid":"https://vault13240edb.vault.azure.net/keys/keyprg013240edb/650feba54baa409cab7571d7bd82417b","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"pO9onZcteRxWUukmwl1wBh6G9GkfU42EpXM7YM7JVh6fr5Y_8U-cX2inFJ39AEqYwfJyk8bxMVC7Z87IvicwaSpMOptsFTkMYxZjHT0DGUzvFALaIz4SkS1tiBiW-SWEzJLBBbNFzFxE1wDygMWXUNjjMq6lAGJoTFdiCcpmRVbrklmluJfWHWeSZ6HRDBYeiO8lxwN3vUC9xkEh-dX8diw-Aq4YxtiFZo7s7YnlDtyn8EczRe0tAe2isJ0BWUwnHak1d7yujg0-UCynI4N5au6fCaZs4mKexYXAqtVQwPTKLmjDA2tUlWISWmnaBA-XYePf_nQmFO4W5iiorZWqKQ","e":"AQAB"},"attributes":{"enabled":true,"created":1529687708,"updated":1529687708,"recoveryLevel":"Recoverable+Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['801'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:15:10 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vault13240edb.vault.azure.net/keys/keyprg113240edb?api-version=7.0 - response: - body: {string: '{"recoveryId":"https://vault13240edb.vault.azure.net/deletedkeys/keyprg113240edb","deletedDate":1529687711,"scheduledPurgeDate":1537463711,"key":{"kid":"https://vault13240edb.vault.azure.net/keys/keyprg113240edb/4652dcfa8a264397963d98c03f8724fe","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"0Ajj6qbOfyfoQud0-yYvmD6y3_qkUJZtgeQ1ixFr8zu9emYWPaM2-hCyWA7quLQL8iZCTeleXyziBZ-kcem2rxj9Sx_8xwkeZgYgwB0toRTJsACLA_hwB6b5FCZIKr34LXEnrR8QjUZDWu-OlKY1Af-L1ZRplGH7j2VCoYpf_r0-eJsJ2wJq9uomI6ApR77r23nW-6cpUDuekNFaKStm6eY7S-70sbcKP0-vaOEV58H1_V2pC4xJyYydb_cb1qrGUOOgAz3R7TqZGHXUs4Pgt1xaP_WgZ49wPjNBeAykSsptA93avd4Yba2aAFNr-1WUkhYQwXSVzXaFnweqbwhscw","e":"AQAB"},"attributes":{"enabled":true,"created":1529687708,"updated":1529687708,"recoveryLevel":"Recoverable+Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['801'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:15:10 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault13240edb.vault.azure.net/deletedkeys?api-version=7.0 - response: - body: {string: '{"value":[{"recoveryId":"https://vault13240edb.vault.azure.net/deletedkeys/keyprg013240edb","deletedDate":1529687710,"scheduledPurgeDate":1537463710,"kid":"https://vault13240edb.vault.azure.net/keys/keyprg013240edb","attributes":{"enabled":true,"created":1529687708,"updated":1529687708,"recoveryLevel":"Recoverable+Purgeable"}},{"recoveryId":"https://vault13240edb.vault.azure.net/deletedkeys/keyprg113240edb","deletedDate":1529687711,"scheduledPurgeDate":1537463711,"kid":"https://vault13240edb.vault.azure.net/keys/keyprg113240edb","attributes":{"enabled":true,"created":1529687708,"updated":1529687708,"recoveryLevel":"Recoverable+Purgeable"}},{"recoveryId":"https://vault13240edb.vault.azure.net/deletedkeys/keyrec013240edb","deletedDate":1529687709,"scheduledPurgeDate":1537463709,"kid":"https://vault13240edb.vault.azure.net/keys/keyrec013240edb","attributes":{"enabled":true,"created":1529687706,"updated":1529687706,"recoveryLevel":"Recoverable+Purgeable"}},{"recoveryId":"https://vault13240edb.vault.azure.net/deletedkeys/keyrec113240edb","deletedDate":1529687710,"scheduledPurgeDate":1537463710,"kid":"https://vault13240edb.vault.azure.net/keys/keyrec113240edb","attributes":{"enabled":true,"created":1529687707,"updated":1529687707,"recoveryLevel":"Recoverable+Purgeable"}}],"nextLink":null}'} - headers: - cache-control: [no-cache] - content-length: ['1303'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:15:31 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault13240edb.vault.azure.net/deletedkeys/keyrec013240edb/recover?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vault13240edb.vault.azure.net/keys/keyrec013240edb/cd39974093474c93ad781de683aab15d","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"qTSz9_B5fbYRu35uS5n1xoaAeUYeo9qRHQK5DWF9T5yUuSDP_2BqifV0awGKshLo1GVYwTXzChbQHCyD_W_depHVRz5HzHEIS1Dpm53hQFA2bFV57YtNXmtgTKQLhJPvxefaQRig-f0QiTdv02botLT7nqzMSjXGyxb7NCRVKI2yh4jEhkoaLvQw7iS9QBEadF_9DKkqNswxUd-D3lQRh8MgugQSclKk39ulM6yWQVHrKNmFXls9NjIbV88nVd6mwTtPzku6Rqpicbo7nfcKxd9kCH6IZYb4m3FUaHtTrI6aUIaGyPYrzBNwvrNOhZevtOetk89x51ibPyF6WKLyZQ","e":"AQAB"},"attributes":{"enabled":true,"created":1529687706,"updated":1529687706,"recoveryLevel":"Recoverable+Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['663'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:15:32 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault13240edb.vault.azure.net/deletedkeys/keyrec113240edb/recover?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vault13240edb.vault.azure.net/keys/keyrec113240edb/cb7f2911ff4d4be2b803b84fdb4c6b54","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"rYA8p9wbmIzo7nbMOvt_GUNhEjMSRL-03xe77LEkyeOv-TTpHkZbF85KhOZes7AAToH13-RLrmOfkzN6B0KSLAfegI-iziMT0LtkoJriAuFr_IpuYo_viKp-7RL1eo9hntqRVna4dBt5Bhjb8Ylzwhuj28Mx_opWuikHpeCc8I2Y8OGZFv2a4Uf-k7x2EhKgcIbtIP8941VtpmVrGUZp21RbHqiwqh_rmpalN0mV8kbGDeiNJbZa9h9oanUD6cr8fPNfi2vxLQctLbUU83Zw6_Hs0WuvKIIf35f1gfqkqQaHA-u0a9sfAZ368Xly5Fu2oaUUt44Mv6F3G5d0bLzzDQ","e":"AQAB"},"attributes":{"enabled":true,"created":1529687707,"updated":1529687707,"recoveryLevel":"Recoverable+Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['663'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:15:33 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vault13240edb.vault.azure.net/deletedkeys/keyprg013240edb?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - date: ['Fri, 22 Jun 2018 17:15:33 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 204, message: No Content} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vault13240edb.vault.azure.net/deletedkeys/keyprg113240edb?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - date: ['Fri, 22 Jun 2018 17:15:34 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 204, message: No Content} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault13240edb.vault.azure.net/deletedkeys?api-version=7.0 - response: - body: {string: '{"value":[],"nextLink":null}'} - headers: - cache-control: [no-cache] - content-length: ['28'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:15:55 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_sign_and_verify.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_sign_and_verify.yaml deleted file mode 100644 index cc575b677fcc..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_sign_and_verify.yaml +++ /dev/null @@ -1,198 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vaultf5590e08.vault.azure.net/keys/keysignf5590e08?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:16:56 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"Hsm": false, "key": {"kty": "RSA", "key_ops": ["encrypt", "decrypt", - "sign", "verify", "wrapKey", "unwrapKey"], "n": "AKCRTQAjSsaDshtMFdW-2Ie9yVnC5Xr1Suc06PAHINd10nXkVSB-N4TO62ClCkZV3XKnqU0nHo7o95WaZpym53W_DiO62umRtFKdl4UotL2QUh0y3SZWeWuoK2u_x2aMj17rUFN0f9GZMZ0pqEQNCPRBLVJ_-TEe2nGCWSC0exxGsRqz6R1zFkB-icfzQPe4WjQELOUXQ7J9RxhAPTTHtDivYYG-BeTRHrmF04JT1_6b9T_C8bAC0i0teT-nmlBLarQtBJKATXBx1yegbPOoiTqlQrFQP4MrKWNxtnB9Tcbjcvj-Z9je0ckI_eRc4DvAhqcUh_p15Dqg4GeaoNIO_jU", - "e": "AQAB", "d": "Ynx9JGaBSP4iUsf6ZJ6opantRNdcdmzaQrKbZg6ZQE8Ohi1FYabJWvaoPSE-CiJEsDzShXZHMhUHN4X7Bn8BXaGQhK3p9HXgiwQKmix7oAJTu4ElUIyd8UC3UWHSZr40el4PaQD-HYu_eMzCXus34MnRiNbh_BUWm6T-Eidhk9d3kNIyaSi9YNDQHW6tjWrEhhq63O7JU1j9ZonFChZxpKk20jdkQKQURVAdpOdL-5j4I70ZxFuU6wHZj8DS8oRQfwGOvZKbgYDb5jgf3UNL_7eACqq92XPVX56vm7iKbqeyjCqAIx5y3hrSRIJtZlWCwjYnYQGd4unxDLi8wmJWSQ", - "dp": "AMmhWb5yZcu6vJr8xJZ-t0_likxJRUMZAtEULaWZt2DgODj4y9JrZDJP6mvckzhQP0WXk2NuWbU2HR5pUeCN2wieG1B76VKoH76vfnaJDqT1NuJVBcP2SLHog3ffwZtMME5zjfygchG3kihqOSpwTQ9ETAqAJTkRC38fEhwAz_Cp", - "dq": "AKC9TAo9n2RDaggjdLXK8kiLrBVoaWFTpqXkzYXRhtsx4vWPAkxhfSnze05rVMl6HiXv7FnE0f0wYawzUJzoyuXBH0zS6D9BqCZPeF543AmWB27iPf38Q9Z8Rjr6oBgMSnGDV_mm8nDVQkeaDyE4cOZh-5UKvKShTKKQVwunmDNH", - "qi": "AJ_nrkLpK8BPzVeARkvSHQyKwMWZ-a8CD95qsKfn0dOZAvXY-2xhQYTEwbED-0bpTNEKbIpA-ZkaHygmnzJkNbbFAnb9pkkzU8ZQqDP3JNgMfVIroWx58Oth9nJza2j7i-MkPRCUPEq3Ao0J52z7WJIiLji8TTVYW_NaiM1oxzsH", - "p": "ANHerI1o3dLB_VLVmZZVss8VZSYN5SaeQ_0qhfOSgOFwj__waCFmy2EG7l6l6f_Z-Y0L7Mn_LNov68lyWSFa2EuQUeVj4UoFHc5Di8ZUGiSsTwFM-XMtNuv8HmGgDYLL5BIJD3eTz71LdgW-Ez38OZH34b7VeG8zfeUDb8Hi30zz", - "q": "AMPcZrZBqbc82DO8Q5zTT8ZXRGWrW36KktMllaIk1W2RHnRiQiW0jBWmcCgqUcQNHa1LwumjyNqwx28QBS37BTvG7ULGUoio6LrOeoiBGEMj-U19sX6m37plEhj5Mak7j3OPPY_T9rohjTW5aGGg9YSwq4jdz0RrmBX00ofYOjI3"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['1738'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vaultf5590e08.vault.azure.net/keys/keysignf5590e08?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vaultf5590e08.vault.azure.net/keys/keysignf5590e08/1948c0ba2d1842a7a934aed26be48489","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"AKCRTQAjSsaDshtMFdW-2Ie9yVnC5Xr1Suc06PAHINd10nXkVSB-N4TO62ClCkZV3XKnqU0nHo7o95WaZpym53W_DiO62umRtFKdl4UotL2QUh0y3SZWeWuoK2u_x2aMj17rUFN0f9GZMZ0pqEQNCPRBLVJ_-TEe2nGCWSC0exxGsRqz6R1zFkB-icfzQPe4WjQELOUXQ7J9RxhAPTTHtDivYYG-BeTRHrmF04JT1_6b9T_C8bAC0i0teT-nmlBLarQtBJKATXBx1yegbPOoiTqlQrFQP4MrKWNxtnB9Tcbjcvj-Z9je0ckI_eRc4DvAhqcUh_p15Dqg4GeaoNIO_jU","e":"AQAB"},"attributes":{"enabled":true,"created":1529687818,"updated":1529687818,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['652'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:16:58 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"alg": "RS256", "value": "vgZc0NQUb6WMKX___V2JntcFRO_vszKwSAj7R2rL1zg"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['72'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vaultf5590e08.vault.azure.net/keys/keysignf5590e08/sign?api-version=7.0 - response: - body: {string: '{"kid":"https://vaultf5590e08.vault.azure.net/keys/keysignf5590e08/1948c0ba2d1842a7a934aed26be48489","value":"YX0IOuHlYW7IEVboW0c8M_geUfp2pKoCw7ujVZfXZOy0890603_QcjCSzuw_qUWehJ8IYVlfaXeF3Ebu36oB6cD8oG8OfI6rLM9BKQUR2KE5VoCBKAGit7FxhAnLRFGP69dF6gyO_wv_-zCJnXLIOg1Pu0K80WVSYkj6Wzczj35OQHEptDqRmxdwQoDYoEk5iYcb3JOeWC1frcGVEf9qs0yzwx1AbgkAOPElweovZZlleS6MALP0HTt7L5zJg7kjnCsuksVsEfM2R0_Mzt8nT24LczCNyZac50hHVkCepaZDRs26KodYnSs3doFlYOUJpCu8sxil7VBTEtFY38dENg"}'} - headers: - cache-control: [no-cache] - content-length: ['454'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:16:58 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"alg": "RS256", "digest": "vgZc0NQUb6WMKX___V2JntcFRO_vszKwSAj7R2rL1zg", - "value": "YX0IOuHlYW7IEVboW0c8M_geUfp2pKoCw7ujVZfXZOy0890603_QcjCSzuw_qUWehJ8IYVlfaXeF3Ebu36oB6cD8oG8OfI6rLM9BKQUR2KE5VoCBKAGit7FxhAnLRFGP69dF6gyO_wv_-zCJnXLIOg1Pu0K80WVSYkj6Wzczj35OQHEptDqRmxdwQoDYoEk5iYcb3JOeWC1frcGVEf9qs0yzwx1AbgkAOPElweovZZlleS6MALP0HTt7L5zJg7kjnCsuksVsEfM2R0_Mzt8nT24LczCNyZac50hHVkCepaZDRs26KodYnSs3doFlYOUJpCu8sxil7VBTEtFY38dENg"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['428'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vaultf5590e08.vault.azure.net/keys/keysignf5590e08/verify?api-version=7.0 - response: - body: {string: '{"value":true}'} - headers: - cache-control: [no-cache] - content-length: ['14'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:16:59 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"alg": "RS256", "value": "vgZc0NQUb6WMKX___V2JntcFRO_vszKwSAj7R2rL1zg"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['72'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vaultf5590e08.vault.azure.net/keys/keysignf5590e08/sign?api-version=7.0 - response: - body: {string: '{"kid":"https://vaultf5590e08.vault.azure.net/keys/keysignf5590e08/1948c0ba2d1842a7a934aed26be48489","value":"YX0IOuHlYW7IEVboW0c8M_geUfp2pKoCw7ujVZfXZOy0890603_QcjCSzuw_qUWehJ8IYVlfaXeF3Ebu36oB6cD8oG8OfI6rLM9BKQUR2KE5VoCBKAGit7FxhAnLRFGP69dF6gyO_wv_-zCJnXLIOg1Pu0K80WVSYkj6Wzczj35OQHEptDqRmxdwQoDYoEk5iYcb3JOeWC1frcGVEf9qs0yzwx1AbgkAOPElweovZZlleS6MALP0HTt7L5zJg7kjnCsuksVsEfM2R0_Mzt8nT24LczCNyZac50hHVkCepaZDRs26KodYnSs3doFlYOUJpCu8sxil7VBTEtFY38dENg"}'} - headers: - cache-control: [no-cache] - content-length: ['454'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:16:59 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"alg": "RS256", "digest": "vgZc0NQUb6WMKX___V2JntcFRO_vszKwSAj7R2rL1zg", - "value": "YX0IOuHlYW7IEVboW0c8M_geUfp2pKoCw7ujVZfXZOy0890603_QcjCSzuw_qUWehJ8IYVlfaXeF3Ebu36oB6cD8oG8OfI6rLM9BKQUR2KE5VoCBKAGit7FxhAnLRFGP69dF6gyO_wv_-zCJnXLIOg1Pu0K80WVSYkj6Wzczj35OQHEptDqRmxdwQoDYoEk5iYcb3JOeWC1frcGVEf9qs0yzwx1AbgkAOPElweovZZlleS6MALP0HTt7L5zJg7kjnCsuksVsEfM2R0_Mzt8nT24LczCNyZac50hHVkCepaZDRs26KodYnSs3doFlYOUJpCu8sxil7VBTEtFY38dENg"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['428'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vaultf5590e08.vault.azure.net/keys/keysignf5590e08/1948c0ba2d1842a7a934aed26be48489/verify?api-version=7.0 - response: - body: {string: '{"value":true}'} - headers: - cache-control: [no-cache] - content-length: ['14'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:17:00 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_wrap_and_unwrap.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_wrap_and_unwrap.yaml deleted file mode 100644 index fbbe510cde5f..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_keys.test_key_wrap_and_unwrap.yaml +++ /dev/null @@ -1,196 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vaultf6200e19.vault.azure.net/keys/keywrapf6200e19?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:17:41 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"Hsm": false, "key": {"kty": "RSA", "key_ops": ["encrypt", "decrypt", - "sign", "verify", "wrapKey", "unwrapKey"], "n": "AKCRTQAjSsaDshtMFdW-2Ie9yVnC5Xr1Suc06PAHINd10nXkVSB-N4TO62ClCkZV3XKnqU0nHo7o95WaZpym53W_DiO62umRtFKdl4UotL2QUh0y3SZWeWuoK2u_x2aMj17rUFN0f9GZMZ0pqEQNCPRBLVJ_-TEe2nGCWSC0exxGsRqz6R1zFkB-icfzQPe4WjQELOUXQ7J9RxhAPTTHtDivYYG-BeTRHrmF04JT1_6b9T_C8bAC0i0teT-nmlBLarQtBJKATXBx1yegbPOoiTqlQrFQP4MrKWNxtnB9Tcbjcvj-Z9je0ckI_eRc4DvAhqcUh_p15Dqg4GeaoNIO_jU", - "e": "AQAB", "d": "Ynx9JGaBSP4iUsf6ZJ6opantRNdcdmzaQrKbZg6ZQE8Ohi1FYabJWvaoPSE-CiJEsDzShXZHMhUHN4X7Bn8BXaGQhK3p9HXgiwQKmix7oAJTu4ElUIyd8UC3UWHSZr40el4PaQD-HYu_eMzCXus34MnRiNbh_BUWm6T-Eidhk9d3kNIyaSi9YNDQHW6tjWrEhhq63O7JU1j9ZonFChZxpKk20jdkQKQURVAdpOdL-5j4I70ZxFuU6wHZj8DS8oRQfwGOvZKbgYDb5jgf3UNL_7eACqq92XPVX56vm7iKbqeyjCqAIx5y3hrSRIJtZlWCwjYnYQGd4unxDLi8wmJWSQ", - "dp": "AMmhWb5yZcu6vJr8xJZ-t0_likxJRUMZAtEULaWZt2DgODj4y9JrZDJP6mvckzhQP0WXk2NuWbU2HR5pUeCN2wieG1B76VKoH76vfnaJDqT1NuJVBcP2SLHog3ffwZtMME5zjfygchG3kihqOSpwTQ9ETAqAJTkRC38fEhwAz_Cp", - "dq": "AKC9TAo9n2RDaggjdLXK8kiLrBVoaWFTpqXkzYXRhtsx4vWPAkxhfSnze05rVMl6HiXv7FnE0f0wYawzUJzoyuXBH0zS6D9BqCZPeF543AmWB27iPf38Q9Z8Rjr6oBgMSnGDV_mm8nDVQkeaDyE4cOZh-5UKvKShTKKQVwunmDNH", - "qi": "AJ_nrkLpK8BPzVeARkvSHQyKwMWZ-a8CD95qsKfn0dOZAvXY-2xhQYTEwbED-0bpTNEKbIpA-ZkaHygmnzJkNbbFAnb9pkkzU8ZQqDP3JNgMfVIroWx58Oth9nJza2j7i-MkPRCUPEq3Ao0J52z7WJIiLji8TTVYW_NaiM1oxzsH", - "p": "ANHerI1o3dLB_VLVmZZVss8VZSYN5SaeQ_0qhfOSgOFwj__waCFmy2EG7l6l6f_Z-Y0L7Mn_LNov68lyWSFa2EuQUeVj4UoFHc5Di8ZUGiSsTwFM-XMtNuv8HmGgDYLL5BIJD3eTz71LdgW-Ez38OZH34b7VeG8zfeUDb8Hi30zz", - "q": "AMPcZrZBqbc82DO8Q5zTT8ZXRGWrW36KktMllaIk1W2RHnRiQiW0jBWmcCgqUcQNHa1LwumjyNqwx28QBS37BTvG7ULGUoio6LrOeoiBGEMj-U19sX6m37plEhj5Mak7j3OPPY_T9rohjTW5aGGg9YSwq4jdz0RrmBX00ofYOjI3"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['1738'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vaultf6200e19.vault.azure.net/keys/keywrapf6200e19?api-version=7.0 - response: - body: {string: '{"key":{"kid":"https://vaultf6200e19.vault.azure.net/keys/keywrapf6200e19/99fb073cef854c679bd3f5d4722b41d6","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"AKCRTQAjSsaDshtMFdW-2Ie9yVnC5Xr1Suc06PAHINd10nXkVSB-N4TO62ClCkZV3XKnqU0nHo7o95WaZpym53W_DiO62umRtFKdl4UotL2QUh0y3SZWeWuoK2u_x2aMj17rUFN0f9GZMZ0pqEQNCPRBLVJ_-TEe2nGCWSC0exxGsRqz6R1zFkB-icfzQPe4WjQELOUXQ7J9RxhAPTTHtDivYYG-BeTRHrmF04JT1_6b9T_C8bAC0i0teT-nmlBLarQtBJKATXBx1yegbPOoiTqlQrFQP4MrKWNxtnB9Tcbjcvj-Z9je0ckI_eRc4DvAhqcUh_p15Dqg4GeaoNIO_jU","e":"AQAB"},"attributes":{"enabled":true,"created":1529687862,"updated":1529687862,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['652'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:17:42 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"alg": "RSA-OAEP", "value": "NTA2M2U2YWFhODQ1ZjE1MDIwMDU0Nzk0NGZkMTk5Njc5Yzk4ZWQ2Zjk5ZGEwYTBiMmRhZmVhZjFmNDY4NDQ5NmZkNTMyYzFjMjI5OTY4Y2I5ZGVlNDQ5NTdmY2VmN2NjZWY1OWNlZGEwYjM2MmU1NmJjZDc4ZmQzZmFlZTU3ODFjNjIzYzBiYjIyYjM1YmVhYmRlMDY2NGZkMzBlMGU4MjRhYmEzZGQxYjBhZmZmYzRhM2Q5NTVlZGUyMGNmNmE4NTRkNTJjZmQ"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['299'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vaultf6200e19.vault.azure.net/keys/keywrapf6200e19/wrapkey?api-version=7.0 - response: - body: {string: '{"kid":"https://vaultf6200e19.vault.azure.net/keys/keywrapf6200e19/99fb073cef854c679bd3f5d4722b41d6","value":"lZinS8_IzFs9SmcXYDtw_jLyP5m1oeOriN1drCIQRdQzzXmVlE7uBWNbBTTkqFKad4wRkakKRzaPce90SnUFCLF6nXmmF74gwuT0xrVF35hj96nDTOpuh2jl7L7RjLHfKe_UMSmqMC34-YAQN3cJg5tKULoDhxAt4wgbi1z22g3yS2Q3_780BFHoTLtxfQV_RsgEQToJZH_QfJapKiLzwl3MU2vLRBBZJARvfSQa7_-erUDKgxx1q3KM3jpaprtJTcvelwgFLA9AycDOcHj9dv68UUaoL-oHZA7fsMq49tmUBIsnjxlIryxwRZ_qP3m-tSLewr4O-lSO9dd6oWcEnA"}'} - headers: - cache-control: [no-cache] - content-length: ['454'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:17:43 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"alg": "RSA-OAEP", "value": "lZinS8_IzFs9SmcXYDtw_jLyP5m1oeOriN1drCIQRdQzzXmVlE7uBWNbBTTkqFKad4wRkakKRzaPce90SnUFCLF6nXmmF74gwuT0xrVF35hj96nDTOpuh2jl7L7RjLHfKe_UMSmqMC34-YAQN3cJg5tKULoDhxAt4wgbi1z22g3yS2Q3_780BFHoTLtxfQV_RsgEQToJZH_QfJapKiLzwl3MU2vLRBBZJARvfSQa7_-erUDKgxx1q3KM3jpaprtJTcvelwgFLA9AycDOcHj9dv68UUaoL-oHZA7fsMq49tmUBIsnjxlIryxwRZ_qP3m-tSLewr4O-lSO9dd6oWcEnA"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['374'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vaultf6200e19.vault.azure.net/keys/keywrapf6200e19/unwrapkey?api-version=7.0 - response: - body: {string: '{"kid":"https://vaultf6200e19.vault.azure.net/keys/keywrapf6200e19/99fb073cef854c679bd3f5d4722b41d6","value":"NTA2M2U2YWFhODQ1ZjE1MDIwMDU0Nzk0NGZkMTk5Njc5Yzk4ZWQ2Zjk5ZGEwYTBiMmRhZmVhZjFmNDY4NDQ5NmZkNTMyYzFjMjI5OTY4Y2I5ZGVlNDQ5NTdmY2VmN2NjZWY1OWNlZGEwYjM2MmU1NmJjZDc4ZmQzZmFlZTU3ODFjNjIzYzBiYjIyYjM1YmVhYmRlMDY2NGZkMzBlMGU4MjRhYmEzZGQxYjBhZmZmYzRhM2Q5NTVlZGUyMGNmNmE4NTRkNTJjZmQ"}'} - headers: - cache-control: [no-cache] - content-length: ['379'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:17:43 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"alg": "RSA-OAEP", "value": "NTA2M2U2YWFhODQ1ZjE1MDIwMDU0Nzk0NGZkMTk5Njc5Yzk4ZWQ2Zjk5ZGEwYTBiMmRhZmVhZjFmNDY4NDQ5NmZkNTMyYzFjMjI5OTY4Y2I5ZGVlNDQ5NTdmY2VmN2NjZWY1OWNlZGEwYjM2MmU1NmJjZDc4ZmQzZmFlZTU3ODFjNjIzYzBiYjIyYjM1YmVhYmRlMDY2NGZkMzBlMGU4MjRhYmEzZGQxYjBhZmZmYzRhM2Q5NTVlZGUyMGNmNmE4NTRkNTJjZmQ"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['299'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vaultf6200e19.vault.azure.net/keys/keywrapf6200e19/99fb073cef854c679bd3f5d4722b41d6/wrapkey?api-version=7.0 - response: - body: {string: '{"kid":"https://vaultf6200e19.vault.azure.net/keys/keywrapf6200e19/99fb073cef854c679bd3f5d4722b41d6","value":"ZE4SDc6MMJk6hE6W4T3wiARBdF9p-K41jtkdsMG6jq2LaDH0geRIv1BOD1ca3ia0M4TN1EwMoHURmlHtlIIsuyX0ZNENprv5unokeHXzFUspJ_9_8gMEm7eMXWmhxnaGI3kOpeQDfABOS41maDqw41eeu9_n32gZZyL9rPkxfxcir5Ihfob1zxdD2ZA5Q0cePYmJ38HyLSyK33XN2EfkLHXh1kTOdXuYUBuAprwWAF26HWksTzUGo_INSbJegO5GNIAVj2WKA5GOkCaqmB56T55kgmdQFRyg6MKO55Z9r-ium3CWrFqSKB_OcwavfJsLB_Jsq9r-ewJgoJFtzYhj6Q"}'} - headers: - cache-control: [no-cache] - content-length: ['454'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:17:43 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"alg": "RSA-OAEP", "value": "ZE4SDc6MMJk6hE6W4T3wiARBdF9p-K41jtkdsMG6jq2LaDH0geRIv1BOD1ca3ia0M4TN1EwMoHURmlHtlIIsuyX0ZNENprv5unokeHXzFUspJ_9_8gMEm7eMXWmhxnaGI3kOpeQDfABOS41maDqw41eeu9_n32gZZyL9rPkxfxcir5Ihfob1zxdD2ZA5Q0cePYmJ38HyLSyK33XN2EfkLHXh1kTOdXuYUBuAprwWAF26HWksTzUGo_INSbJegO5GNIAVj2WKA5GOkCaqmB56T55kgmdQFRyg6MKO55Z9r-ium3CWrFqSKB_OcwavfJsLB_Jsq9r-ewJgoJFtzYhj6Q"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['374'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vaultf6200e19.vault.azure.net/keys/keywrapf6200e19/99fb073cef854c679bd3f5d4722b41d6/unwrapkey?api-version=7.0 - response: - body: {string: '{"kid":"https://vaultf6200e19.vault.azure.net/keys/keywrapf6200e19/99fb073cef854c679bd3f5d4722b41d6","value":"NTA2M2U2YWFhODQ1ZjE1MDIwMDU0Nzk0NGZkMTk5Njc5Yzk4ZWQ2Zjk5ZGEwYTBiMmRhZmVhZjFmNDY4NDQ5NmZkNTMyYzFjMjI5OTY4Y2I5ZGVlNDQ5NTdmY2VmN2NjZWY1OWNlZGEwYjM2MmU1NmJjZDc4ZmQzZmFlZTU3ODFjNjIzYzBiYjIyYjM1YmVhYmRlMDY2NGZkMzBlMGU4MjRhYmEzZGQxYjBhZmZmYzRhM2Q5NTVlZGUyMGNmNmE4NTRkNTJjZmQ"}'} - headers: - cache-control: [no-cache] - content-length: ['379'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:17:44 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_secrets.test_backup_restore.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_secrets.test_backup_restore.yaml deleted file mode 100644 index 6ed2f81ee7c2..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_secrets.test_backup_restore.yaml +++ /dev/null @@ -1,158 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vaultd9f80d3f.vault.azure.net/secrets/secbakd9f80d3f?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:38:25 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"value": "secVald9f80d3f"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['27'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vaultd9f80d3f.vault.azure.net/secrets/secbakd9f80d3f?api-version=7.0 - response: - body: {string: '{"value":"secVald9f80d3f","id":"https://vaultd9f80d3f.vault.azure.net/secrets/secbakd9f80d3f/d290247e72f74249a68b0a7f2c109006","attributes":{"enabled":true,"created":1529689107,"updated":1529689107,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['227'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:38:26 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vaultd9f80d3f.vault.azure.net/secrets/secbakd9f80d3f/backup?api-version=7.0 - response: - body: {string: '{"value":"KUF6dXJlS2V5VmF1bHRTZWNyZXRCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLnBzaGpLR1B1QmdLd0hZdU91NmIzWTVVWWsxdlItVWpuNDVsVVluTjlaamNFWE1UN01BUV8yaWpxZnhURk9XNE9zTUF1aDBDalpFeUR1d1puTk9LRURKVEhpMWQ0eWFVajlpei1KTlRkMnp5SjhwVWZ5Z3hUS2NFVlpCN2IyR0M0bk5PWnlWeGRTOUFWVl9ZQXhBR1JmS2tZUVdpMXVhSXJKSzdlYlVEWjYzb3hrWUtOS1A3MzRKRGVnTmQzcVR1R3lqUnY2QmZyTmhqWktjRFBhOHV6SmROeXVraWt5b2NhTEhDaEZQbk9FaUlRc3R4U2dZNjBTeVMzcDIxRTQ0SVU2MFR0d0VseEFrQTB6QkY2NFlHRllYaG1TRmc5dVJzaTVzSmFzby02UzNNdmVjc29oSGZqb2NpZkViTmN4MThZdDg5UEdJc2I5TXhaaENBVUg2WnNiQS5uRzVVSVFSUWp3S3B4amZiQmhqODdRLjA1ak54dERJTFlDRzZSMnFWZ3FwbWppMHZCWVZ2dHFtSkxlUkpBZ1RzbVlfcDdQa1VBZ29wTGRIOVhkZG1RUnEtUTNQckVPZkFSSlFDbHl5b0pnYkRrZW1Bd3U2LUowRGVmdDJ1RG1NcnhzaC1zNjQ0SHRLNkdDcGdRbkJSZUlVTVJGS1l1SlRGNm9JRTFYbGhmdXRMOHkyZGNrT0JlaUU0UHFaZ2lrZ09JR0U4V2t2Y09CVGlPelpqWVRFcUtiYTNPMzRYRWNSNFVCZEptZ0g4bHFFRGFGdkhXUU9tQmhLYTBURHdnV1kwMlU0VUlfSmZES01qWjhKVUZCZE9QSG9GcFNMUzE0ZG9lLTlPVS1QcGRQdm9TMnpKdDJJVGFZd2tMR1lJY2s5cThoS1FUZXh4aEFCNmhsWFNGTWlqS2ZuZ0xpcG40UG5YRGtmd1Vld25zbHMtb2pjcHRqRE84alAyWWo5d21oOFRuUG1wVGIydE9RRmhWMlgyWnZOaUZ6eFYxaGx0ZnlhQmxlVGx1NGRjSUxkb0ZZS3ltQjVEWXotb1VOT1dsNUFXS1JPTWtYaGNxdnN2eV9zenpyWENhNnNzWEJRcEFWdG4wZE4yampONEo5ZUxFMHp1d3k3OEFrNlNyWGViMmhuOFZUOW94cUwtQWpfNm9rTzVpNExSUGVhRTExWXduZm8tNnJ5R0w2T3lQbjZSOGdjTzFnZkFIRW1iZXZsVGtWZ0FVODFiTGgzNmtSQzNiX3Q4SGhVMU5PNWxZOXM4ZWJGWUJsWU5DdTI0cFZzQ0ZlZE1YelNxNjFLMmNYQ05EQ0d2QTItbDRacWdtZEZWb3BSUVYyNFlHVUtId3NsWWEtX1I4LXpuOWZUVWhlUnd5TVlBNV9RMm0xY2Q0TGN2YVY3WE84RUtMNjZLbElyVUFBWDR1amJhZmJFNWw3c043U1hndUliZG9vMXN5aXNLUWV3R1gzWnpNdWNZeE9FeHdWSTFMVU1mZXVnUlFiV1NtMFRHWGRLdF9mNzhhcnJTdWZlN2pnem1kVExaaF9vRDZOX2FFT1dDdEdiV0xkUzFiQ1Bza0N1N3Q0NDdGTVNvSG5sMmtOclhmTWVaWHJNcHctRW1TN3lyN2ZfUW1iUXdVeWJOTXZ4c01zWjlUQVB5QlRGRS0yZVN2S0J6NEhocXJIRk83M0paNnE1djF2MEg5UVdxRVJRb3VPSW45ekpxeXZRNTEyaG9sRDZvYUVwM2NmRmFtREloX3M3TFNkRmQ0aW1EQkQtWGV3M3plMDdfSEFXWDJVanZRdUZtQjJtVFpXMDdKd0VNVDJ6WVBKdDdvSms3Z2pnNFNqZldKQll0c3RybGxxOEJ0Q2pYZzYwRkxEU21EUU9JTlVVVzFuZ1YxZ0dHaDB3bXBHcE9tUnJBQlYxV1NJa0cySmZ1TGYtWUxkeXhTSzJQR2stbXUyNjhDRUktNGcyQmp0WUdRMzdHc25xUFhaVlZHU2lzTFN4eXp4ZUpXTmdYVlFidWl0SUI0djFpWVZuSEQwRzV4NTVrYWdVR2FpSXItUDFfVkhUbGJzUHN1SGk5c3FSNllGS2phZTU1RWtqdW1MV05pVVQxNExreWw0RE56MEt1TWN6SldNbV9rOEJTRzU4QUlNTWluZERjUkxpQTlfTjVpaEdERTR4dG1JNXdrVk5KRTZoZGVBMV9udFE3QTRYOTlfdDlKN2ZCNnN1WDB5eUcyQzEySkVkQkZWSzZkbE1DSk1CMVJzVDd2blU5Yi1Kc0tLU2F1ZWtuM0dIWXBOTkpVUFVJc0pfYVpOWklfZjNTMXJ3TFJReXlXdTdpY2N5NkNTOG1NRVVQVFQzWXo0NG53NjVNS1ZrVzdDb0piOWUxMU5WUFh4Sm9TRFJ6VGlzbUdGQk9KRGxxdFFHUTBtdExqdWlXSmhDVWJrRTNRMnRZWEY3YTc3aFBPYUNqNVU4Y0g0UFgzWXVEbzlmSFZDNFhtRloxOWlGUEktM1dVbE01b2l5NU9URVB2ZFNqU3VHS2V5T09wM2I2YWktb2pvblkwMXZlWW0xT0ZtZ3l4Z0hhdDBLUjQxU3RyR05TMUtxTmw5OWg0U3dmTkNPbjVleEljYWJDYkZYRl82Mjd4SC1WTnc2ZXllRmgwTU94ZmREa1BHeDJkWkNFTUU4dXN0ZWdCMUpLeVBVcmYwaGVFelFUX2Rhc21SU3ZDck5aRVg3cWVXT25CbUpPN1BUSm5yeE43QWRfcExDak5HelZGSjJiamVhTXRTZkFTR0hRVC16cDUtSUtocEJYUmx5eTdIT2o4Zk9kME8xUlZyMVlwU3B5SVU0YmlpdTd4Yk1QMGFoR2djYzR4X0ZLcWdrNG5vNkNNY3NULWpHTE1DUDAtX2x4RTVxWjVNamc5OVhUQnBaQk91elYybGtJdnhySlY1ZU5rLXEzazE3RjdORVdFVFV3Q0IxbElEX1p5U2VEZnN4ZldDcTUwcXZydlFlLUZtcWlEempWbnU5Nk1OYXlYazBZYVR4QXhtSVF6VmUtWFp1S3A4c3NONTA5ZXdTb0ZsTVFwWXN4TGFHTnJoZW9NdXpWLU1va3M3MFUxTHdKNWdtNldRQ1prNU5nZ2tsZmFINnFuajM5WHhxR21mWEZkcEpUYVpxUDBTMEZNWFREZlhyUzkwQTBFalRQQ3dqWHZVSGFvVUN1dUFFQ0ZfcGdCaVNhMUdDSzNzNkxIQTlqejNjYXl5OVUtMUV2UzhsdEFBcVVFT0lZbzRfSlFhM1ZYaTV1ekNxemcwOWdCWktrUjBQNmxpc3FhY2hGUnJ3dHJwTXl6UVpqeDJYbmhkRnUwc1BLUi1rTko1bXB1SnVYY0VfNDRqQUktV2JvQXNHU1laSUYzNkQwQUgtUkY3X2VFRTFqTW8zN3RtSllrY1kxQ09PLXNKNVhwMF91ZHZfa3RhVXVJOW5YWjNIMTMyOEJoelE3cnB5WE1rVzREdktuYTFDQ2U2TTFramhiT0FHZWtIQ1YtZ0p4N1JsOXpQT3BWWmliU2pkVGZYclNBb1VfWk1JV0pyWENJaFFDYWpnaFBwcHZabkFxSXFhZGpOSXNjRXJ2STM5azZURzBTM1BZOHQwTlEzeTlNVU1PdkNlX1FhVVZ2TXNaVVRtc1VENkNiM1V4MkFOSXdnMlJDSDRrT2Y2cHk1XzBhZEp5YlFvWlhDd0N6ODhIRTF2c1R3T29uSHVhVGJJbHdzbmNqamM2X0ZhSUJ2M0hGWFJhRjR2dXZFNDRVb3drb2hHMUdxeEl0cENJdVFGdS1jTVpCLWlOLWthZDRhNHZSdDhHTXBKaWRoZlU4MHA2cVRLS3B2Y1lKT1EtNHYwS3FTeGRGeDJXZ0l3WHlrRm9yS2FHb013dnBkdzFuNWd6MjlJZjF1VmJzeExiR094WE5FZUpZTW1uZHpZV2dvQ0J3M0k0VnN3NlR2SVhOY0lxcjBsUHFRaHVJM3VQV2JfRk92Q0VsU1hTZEVFNTd4cHByWUxZbHE0NGNzWVRBam9LOXk2Rk00OFR0cDYyVWdORVR5MmtVQW01YXE4Q1lsOGVoNmU5VlV3ZmNMdmtVMVU3MHJsdVM4Vmd2YkFXQnAwY0hzNGFlVm54RU9MaUtLd2NBUUNpSVk3Z0pYa0ZoOHRUVlRHcUJxRERwZ3h4RnJUT2F2ZGNSRUkzRDYzamNmRmdtRXc2NnkyQVl3djNSQkI1SmNpcm5Za3M5QXhCTzBkLTM5dXljOG9WdXBsSjFHZ1JqeFd0eTctNzh5eDVkN2F6RmtwYVJRTmp6cVJHM1NWQ1U4by11WkZtcU9zb3JJUW1aaTdhcDNKUmhsd1ZsN2hCMExvYkpyY2FNbWJIeTlGYldkaVhtcVFaMGlmWXJfTFVLUG04VVNpQzhHV0J1QnBqeEdkODh0bmoyOFJHLVZxelluQk42MTAtRGxLcnhGb01wTWxrY1FPcC1xV1duRUNJa3h3VGxYUm54bjkxQ3BMU2NPZDBBaFVsNUlDdXlyVU4waFJrc3ZjMVgzbjc2MmZSOFhDc2hnT0s0X2poel84ejhCc1hVcDRsOTg1MEd2eC1Gd3lnNkRPdDlHUVJDREhlbVBCWENRZmV5ai0xZlN0a3IxOVVPTmk2STFvMVJkZjVwczkwZGswWHV1dWYyOUc4UkdoaC1PUi13em9nd3NpdzB3cmVQYU54U3BHU0RnRXdsTUg2NkQwTGtDMEpPclZYbzR4OHR1WWM4T1pPNlNqbXdERk1YaXRidjdMQkJ3T0FlVmQxNFQ2VjZCREZ4YUtzOFFsazFYYnZRNWxOMkFNd0IyaHQzeWtTMFhZTDBmdHVlY1ctdkJ0WVVtZ1c0NUdJd0RTbXhOYlkyVm1JYmdJM0pTRVBWVnhvSkNrdlJqNUtldndkQ1hGNV9BTXM3NTh0bkNPRU5WLXREN0taMWJzTTdfakVYTHplV2h0ZGhpenlvWkw3QW5EcS1RZjdRSVZwQmJtX1ZSNEhDdmVTa3k1Y0hjYWVpdWtSSlRfQ0dRZGJDZHVoLUlVVHV0Uk16Vmg4bTJTeUJSMk5sMmQyUFQ5ZDF0dUYxeVVmSGVYNm0yN09TUUZnV3EtdUhQRzRLdW8wV0ZEVWpESDZpazBaOENnT2tGUHNFM0tDQlFyRERhOVJKMFlYeEktRVBVcGN5VS1BVkdqWm16TW10TXEuUGppNXhiU3RyS05ESzZiQ2F6QWRwQQ"}'} - headers: - cache-control: [no-cache] - content-length: ['5434'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:38:27 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vaultd9f80d3f.vault.azure.net/secrets/secbakd9f80d3f?api-version=7.0 - response: - body: {string: '{"id":"https://vaultd9f80d3f.vault.azure.net/secrets/secbakd9f80d3f/d290247e72f74249a68b0a7f2c109006","attributes":{"enabled":true,"created":1529689107,"updated":1529689107,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['202'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:38:27 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"value": "KUF6dXJlS2V5VmF1bHRTZWNyZXRCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLnBzaGpLR1B1QmdLd0hZdU91NmIzWTVVWWsxdlItVWpuNDVsVVluTjlaamNFWE1UN01BUV8yaWpxZnhURk9XNE9zTUF1aDBDalpFeUR1d1puTk9LRURKVEhpMWQ0eWFVajlpei1KTlRkMnp5SjhwVWZ5Z3hUS2NFVlpCN2IyR0M0bk5PWnlWeGRTOUFWVl9ZQXhBR1JmS2tZUVdpMXVhSXJKSzdlYlVEWjYzb3hrWUtOS1A3MzRKRGVnTmQzcVR1R3lqUnY2QmZyTmhqWktjRFBhOHV6SmROeXVraWt5b2NhTEhDaEZQbk9FaUlRc3R4U2dZNjBTeVMzcDIxRTQ0SVU2MFR0d0VseEFrQTB6QkY2NFlHRllYaG1TRmc5dVJzaTVzSmFzby02UzNNdmVjc29oSGZqb2NpZkViTmN4MThZdDg5UEdJc2I5TXhaaENBVUg2WnNiQS5uRzVVSVFSUWp3S3B4amZiQmhqODdRLjA1ak54dERJTFlDRzZSMnFWZ3FwbWppMHZCWVZ2dHFtSkxlUkpBZ1RzbVlfcDdQa1VBZ29wTGRIOVhkZG1RUnEtUTNQckVPZkFSSlFDbHl5b0pnYkRrZW1Bd3U2LUowRGVmdDJ1RG1NcnhzaC1zNjQ0SHRLNkdDcGdRbkJSZUlVTVJGS1l1SlRGNm9JRTFYbGhmdXRMOHkyZGNrT0JlaUU0UHFaZ2lrZ09JR0U4V2t2Y09CVGlPelpqWVRFcUtiYTNPMzRYRWNSNFVCZEptZ0g4bHFFRGFGdkhXUU9tQmhLYTBURHdnV1kwMlU0VUlfSmZES01qWjhKVUZCZE9QSG9GcFNMUzE0ZG9lLTlPVS1QcGRQdm9TMnpKdDJJVGFZd2tMR1lJY2s5cThoS1FUZXh4aEFCNmhsWFNGTWlqS2ZuZ0xpcG40UG5YRGtmd1Vld25zbHMtb2pjcHRqRE84alAyWWo5d21oOFRuUG1wVGIydE9RRmhWMlgyWnZOaUZ6eFYxaGx0ZnlhQmxlVGx1NGRjSUxkb0ZZS3ltQjVEWXotb1VOT1dsNUFXS1JPTWtYaGNxdnN2eV9zenpyWENhNnNzWEJRcEFWdG4wZE4yampONEo5ZUxFMHp1d3k3OEFrNlNyWGViMmhuOFZUOW94cUwtQWpfNm9rTzVpNExSUGVhRTExWXduZm8tNnJ5R0w2T3lQbjZSOGdjTzFnZkFIRW1iZXZsVGtWZ0FVODFiTGgzNmtSQzNiX3Q4SGhVMU5PNWxZOXM4ZWJGWUJsWU5DdTI0cFZzQ0ZlZE1YelNxNjFLMmNYQ05EQ0d2QTItbDRacWdtZEZWb3BSUVYyNFlHVUtId3NsWWEtX1I4LXpuOWZUVWhlUnd5TVlBNV9RMm0xY2Q0TGN2YVY3WE84RUtMNjZLbElyVUFBWDR1amJhZmJFNWw3c043U1hndUliZG9vMXN5aXNLUWV3R1gzWnpNdWNZeE9FeHdWSTFMVU1mZXVnUlFiV1NtMFRHWGRLdF9mNzhhcnJTdWZlN2pnem1kVExaaF9vRDZOX2FFT1dDdEdiV0xkUzFiQ1Bza0N1N3Q0NDdGTVNvSG5sMmtOclhmTWVaWHJNcHctRW1TN3lyN2ZfUW1iUXdVeWJOTXZ4c01zWjlUQVB5QlRGRS0yZVN2S0J6NEhocXJIRk83M0paNnE1djF2MEg5UVdxRVJRb3VPSW45ekpxeXZRNTEyaG9sRDZvYUVwM2NmRmFtREloX3M3TFNkRmQ0aW1EQkQtWGV3M3plMDdfSEFXWDJVanZRdUZtQjJtVFpXMDdKd0VNVDJ6WVBKdDdvSms3Z2pnNFNqZldKQll0c3RybGxxOEJ0Q2pYZzYwRkxEU21EUU9JTlVVVzFuZ1YxZ0dHaDB3bXBHcE9tUnJBQlYxV1NJa0cySmZ1TGYtWUxkeXhTSzJQR2stbXUyNjhDRUktNGcyQmp0WUdRMzdHc25xUFhaVlZHU2lzTFN4eXp4ZUpXTmdYVlFidWl0SUI0djFpWVZuSEQwRzV4NTVrYWdVR2FpSXItUDFfVkhUbGJzUHN1SGk5c3FSNllGS2phZTU1RWtqdW1MV05pVVQxNExreWw0RE56MEt1TWN6SldNbV9rOEJTRzU4QUlNTWluZERjUkxpQTlfTjVpaEdERTR4dG1JNXdrVk5KRTZoZGVBMV9udFE3QTRYOTlfdDlKN2ZCNnN1WDB5eUcyQzEySkVkQkZWSzZkbE1DSk1CMVJzVDd2blU5Yi1Kc0tLU2F1ZWtuM0dIWXBOTkpVUFVJc0pfYVpOWklfZjNTMXJ3TFJReXlXdTdpY2N5NkNTOG1NRVVQVFQzWXo0NG53NjVNS1ZrVzdDb0piOWUxMU5WUFh4Sm9TRFJ6VGlzbUdGQk9KRGxxdFFHUTBtdExqdWlXSmhDVWJrRTNRMnRZWEY3YTc3aFBPYUNqNVU4Y0g0UFgzWXVEbzlmSFZDNFhtRloxOWlGUEktM1dVbE01b2l5NU9URVB2ZFNqU3VHS2V5T09wM2I2YWktb2pvblkwMXZlWW0xT0ZtZ3l4Z0hhdDBLUjQxU3RyR05TMUtxTmw5OWg0U3dmTkNPbjVleEljYWJDYkZYRl82Mjd4SC1WTnc2ZXllRmgwTU94ZmREa1BHeDJkWkNFTUU4dXN0ZWdCMUpLeVBVcmYwaGVFelFUX2Rhc21SU3ZDck5aRVg3cWVXT25CbUpPN1BUSm5yeE43QWRfcExDak5HelZGSjJiamVhTXRTZkFTR0hRVC16cDUtSUtocEJYUmx5eTdIT2o4Zk9kME8xUlZyMVlwU3B5SVU0YmlpdTd4Yk1QMGFoR2djYzR4X0ZLcWdrNG5vNkNNY3NULWpHTE1DUDAtX2x4RTVxWjVNamc5OVhUQnBaQk91elYybGtJdnhySlY1ZU5rLXEzazE3RjdORVdFVFV3Q0IxbElEX1p5U2VEZnN4ZldDcTUwcXZydlFlLUZtcWlEempWbnU5Nk1OYXlYazBZYVR4QXhtSVF6VmUtWFp1S3A4c3NONTA5ZXdTb0ZsTVFwWXN4TGFHTnJoZW9NdXpWLU1va3M3MFUxTHdKNWdtNldRQ1prNU5nZ2tsZmFINnFuajM5WHhxR21mWEZkcEpUYVpxUDBTMEZNWFREZlhyUzkwQTBFalRQQ3dqWHZVSGFvVUN1dUFFQ0ZfcGdCaVNhMUdDSzNzNkxIQTlqejNjYXl5OVUtMUV2UzhsdEFBcVVFT0lZbzRfSlFhM1ZYaTV1ekNxemcwOWdCWktrUjBQNmxpc3FhY2hGUnJ3dHJwTXl6UVpqeDJYbmhkRnUwc1BLUi1rTko1bXB1SnVYY0VfNDRqQUktV2JvQXNHU1laSUYzNkQwQUgtUkY3X2VFRTFqTW8zN3RtSllrY1kxQ09PLXNKNVhwMF91ZHZfa3RhVXVJOW5YWjNIMTMyOEJoelE3cnB5WE1rVzREdktuYTFDQ2U2TTFramhiT0FHZWtIQ1YtZ0p4N1JsOXpQT3BWWmliU2pkVGZYclNBb1VfWk1JV0pyWENJaFFDYWpnaFBwcHZabkFxSXFhZGpOSXNjRXJ2STM5azZURzBTM1BZOHQwTlEzeTlNVU1PdkNlX1FhVVZ2TXNaVVRtc1VENkNiM1V4MkFOSXdnMlJDSDRrT2Y2cHk1XzBhZEp5YlFvWlhDd0N6ODhIRTF2c1R3T29uSHVhVGJJbHdzbmNqamM2X0ZhSUJ2M0hGWFJhRjR2dXZFNDRVb3drb2hHMUdxeEl0cENJdVFGdS1jTVpCLWlOLWthZDRhNHZSdDhHTXBKaWRoZlU4MHA2cVRLS3B2Y1lKT1EtNHYwS3FTeGRGeDJXZ0l3WHlrRm9yS2FHb013dnBkdzFuNWd6MjlJZjF1VmJzeExiR094WE5FZUpZTW1uZHpZV2dvQ0J3M0k0VnN3NlR2SVhOY0lxcjBsUHFRaHVJM3VQV2JfRk92Q0VsU1hTZEVFNTd4cHByWUxZbHE0NGNzWVRBam9LOXk2Rk00OFR0cDYyVWdORVR5MmtVQW01YXE4Q1lsOGVoNmU5VlV3ZmNMdmtVMVU3MHJsdVM4Vmd2YkFXQnAwY0hzNGFlVm54RU9MaUtLd2NBUUNpSVk3Z0pYa0ZoOHRUVlRHcUJxRERwZ3h4RnJUT2F2ZGNSRUkzRDYzamNmRmdtRXc2NnkyQVl3djNSQkI1SmNpcm5Za3M5QXhCTzBkLTM5dXljOG9WdXBsSjFHZ1JqeFd0eTctNzh5eDVkN2F6RmtwYVJRTmp6cVJHM1NWQ1U4by11WkZtcU9zb3JJUW1aaTdhcDNKUmhsd1ZsN2hCMExvYkpyY2FNbWJIeTlGYldkaVhtcVFaMGlmWXJfTFVLUG04VVNpQzhHV0J1QnBqeEdkODh0bmoyOFJHLVZxelluQk42MTAtRGxLcnhGb01wTWxrY1FPcC1xV1duRUNJa3h3VGxYUm54bjkxQ3BMU2NPZDBBaFVsNUlDdXlyVU4waFJrc3ZjMVgzbjc2MmZSOFhDc2hnT0s0X2poel84ejhCc1hVcDRsOTg1MEd2eC1Gd3lnNkRPdDlHUVJDREhlbVBCWENRZmV5ai0xZlN0a3IxOVVPTmk2STFvMVJkZjVwczkwZGswWHV1dWYyOUc4UkdoaC1PUi13em9nd3NpdzB3cmVQYU54U3BHU0RnRXdsTUg2NkQwTGtDMEpPclZYbzR4OHR1WWM4T1pPNlNqbXdERk1YaXRidjdMQkJ3T0FlVmQxNFQ2VjZCREZ4YUtzOFFsazFYYnZRNWxOMkFNd0IyaHQzeWtTMFhZTDBmdHVlY1ctdkJ0WVVtZ1c0NUdJd0RTbXhOYlkyVm1JYmdJM0pTRVBWVnhvSkNrdlJqNUtldndkQ1hGNV9BTXM3NTh0bkNPRU5WLXREN0taMWJzTTdfakVYTHplV2h0ZGhpenlvWkw3QW5EcS1RZjdRSVZwQmJtX1ZSNEhDdmVTa3k1Y0hjYWVpdWtSSlRfQ0dRZGJDZHVoLUlVVHV0Uk16Vmg4bTJTeUJSMk5sMmQyUFQ5ZDF0dUYxeVVmSGVYNm0yN09TUUZnV3EtdUhQRzRLdW8wV0ZEVWpESDZpazBaOENnT2tGUHNFM0tDQlFyRERhOVJKMFlYeEktRVBVcGN5VS1BVkdqWm16TW10TXEuUGppNXhiU3RyS05ESzZiQ2F6QWRwQQ"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['5435'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vaultd9f80d3f.vault.azure.net/secrets/restore?api-version=7.0 - response: - body: {string: '{"id":"https://vaultd9f80d3f.vault.azure.net/secrets/secbakd9f80d3f/d290247e72f74249a68b0a7f2c109006","attributes":{"enabled":true,"created":1529689107,"updated":1529689107,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['202'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:38:28 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_secrets.test_list_versions.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_secrets.test_list_versions.yaml deleted file mode 100644 index 3937781755d7..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_secrets.test_list_versions.yaml +++ /dev/null @@ -1,126 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vaultce470cfa.vault.azure.net/secrets/secce470cfa?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:39:10 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"value": "secValce470cfa"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['27'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vaultce470cfa.vault.azure.net/secrets/secce470cfa?api-version=7.0 - response: - body: {string: '{"value":"secValce470cfa","id":"https://vaultce470cfa.vault.azure.net/secrets/secce470cfa/fdb3084c5f2648a6a09e8aa4eb312c1e","attributes":{"enabled":true,"created":1529689151,"updated":1529689151,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['224'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:39:11 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"value": "secValce470cfa"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['27'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vaultce470cfa.vault.azure.net/secrets/secce470cfa?api-version=7.0 - response: - body: {string: '{"value":"secValce470cfa","id":"https://vaultce470cfa.vault.azure.net/secrets/secce470cfa/c776d812a166488a8f46aaec9e02ef6a","attributes":{"enabled":true,"created":1529689151,"updated":1529689151,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['224'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:39:11 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vaultce470cfa.vault.azure.net/secrets/secce470cfa/versions?api-version=7.0 - response: - body: {string: '{"value":[{"id":"https://vaultce470cfa.vault.azure.net/secrets/secce470cfa/c776d812a166488a8f46aaec9e02ef6a","attributes":{"enabled":true,"created":1529689151,"updated":1529689151,"recoveryLevel":"Purgeable"}},{"id":"https://vaultce470cfa.vault.azure.net/secrets/secce470cfa/fdb3084c5f2648a6a09e8aa4eb312c1e","attributes":{"enabled":true,"created":1529689151,"updated":1529689151,"recoveryLevel":"Purgeable"}}],"nextLink":null}'} - headers: - cache-control: [no-cache] - content-length: ['427'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:39:12 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_secrets.test_recover_purge.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_secrets.test_recover_purge.yaml deleted file mode 100644 index 95cc9cf05a1d..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_secrets.test_recover_purge.yaml +++ /dev/null @@ -1,522 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vaultcdc10cde.vault.azure.net/secrets/secrec0cdc10cde?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 19:10:54 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"value": "secval0cdc10cde"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['28'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vaultcdc10cde.vault.azure.net/secrets/secrec0cdc10cde?api-version=7.0 - response: - body: {string: '{"value":"secval0cdc10cde","id":"https://vaultcdc10cde.vault.azure.net/secrets/secrec0cdc10cde/acfe54b71a92474cad92876602b4dc4d","attributes":{"enabled":true,"created":1529694655,"updated":1529694655,"recoveryLevel":"Recoverable+Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['241'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 19:10:55 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"value": "secval1cdc10cde"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['28'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vaultcdc10cde.vault.azure.net/secrets/secrec1cdc10cde?api-version=7.0 - response: - body: {string: '{"value":"secval1cdc10cde","id":"https://vaultcdc10cde.vault.azure.net/secrets/secrec1cdc10cde/779934677bf741d8a39c780d65a890ce","attributes":{"enabled":true,"created":1529694656,"updated":1529694656,"recoveryLevel":"Recoverable+Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['241'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 19:10:56 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"value": "secval0cdc10cde"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['28'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vaultcdc10cde.vault.azure.net/secrets/secprg0cdc10cde?api-version=7.0 - response: - body: {string: '{"value":"secval0cdc10cde","id":"https://vaultcdc10cde.vault.azure.net/secrets/secprg0cdc10cde/03cbed33ea7943ac874e150b56a12df1","attributes":{"enabled":true,"created":1529694656,"updated":1529694656,"recoveryLevel":"Recoverable+Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['241'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 19:10:56 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"value": "secval1cdc10cde"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['28'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vaultcdc10cde.vault.azure.net/secrets/secprg1cdc10cde?api-version=7.0 - response: - body: {string: '{"value":"secval1cdc10cde","id":"https://vaultcdc10cde.vault.azure.net/secrets/secprg1cdc10cde/b1110782c3ff4debbec87eb1e206e450","attributes":{"enabled":true,"created":1529694657,"updated":1529694657,"recoveryLevel":"Recoverable+Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['241'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 19:10:56 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vaultcdc10cde.vault.azure.net/secrets/secrec0cdc10cde?api-version=7.0 - response: - body: {string: '{"recoveryId":"https://vaultcdc10cde.vault.azure.net/deletedsecrets/secrec0cdc10cde","deletedDate":1529694657,"scheduledPurgeDate":1537470657,"id":"https://vaultcdc10cde.vault.azure.net/secrets/secrec0cdc10cde/acfe54b71a92474cad92876602b4dc4d","attributes":{"enabled":true,"created":1529694655,"updated":1529694655,"recoveryLevel":"Recoverable+Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['356'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 19:10:57 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vaultcdc10cde.vault.azure.net/secrets/secrec1cdc10cde?api-version=7.0 - response: - body: {string: '{"recoveryId":"https://vaultcdc10cde.vault.azure.net/deletedsecrets/secrec1cdc10cde","deletedDate":1529694658,"scheduledPurgeDate":1537470658,"id":"https://vaultcdc10cde.vault.azure.net/secrets/secrec1cdc10cde/779934677bf741d8a39c780d65a890ce","attributes":{"enabled":true,"created":1529694656,"updated":1529694656,"recoveryLevel":"Recoverable+Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['356'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 19:10:58 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vaultcdc10cde.vault.azure.net/secrets/secprg0cdc10cde?api-version=7.0 - response: - body: {string: '{"recoveryId":"https://vaultcdc10cde.vault.azure.net/deletedsecrets/secprg0cdc10cde","deletedDate":1529694659,"scheduledPurgeDate":1537470659,"id":"https://vaultcdc10cde.vault.azure.net/secrets/secprg0cdc10cde/03cbed33ea7943ac874e150b56a12df1","attributes":{"enabled":true,"created":1529694656,"updated":1529694656,"recoveryLevel":"Recoverable+Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['356'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 19:10:58 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vaultcdc10cde.vault.azure.net/secrets/secprg1cdc10cde?api-version=7.0 - response: - body: {string: '{"recoveryId":"https://vaultcdc10cde.vault.azure.net/deletedsecrets/secprg1cdc10cde","deletedDate":1529694659,"scheduledPurgeDate":1537470659,"id":"https://vaultcdc10cde.vault.azure.net/secrets/secprg1cdc10cde/b1110782c3ff4debbec87eb1e206e450","attributes":{"enabled":true,"created":1529694657,"updated":1529694657,"recoveryLevel":"Recoverable+Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['356'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 19:10:59 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vaultcdc10cde.vault.azure.net/deletedsecrets?api-version=7.0 - response: - body: {string: '{"value":[{"recoveryId":"https://vaultcdc10cde.vault.azure.net/deletedsecrets/secprg0cdc10cde","deletedDate":1529694659,"scheduledPurgeDate":1537470659,"id":"https://vaultcdc10cde.vault.azure.net/secrets/secprg0cdc10cde","attributes":{"enabled":true,"created":1529694656,"updated":1529694656,"recoveryLevel":"Recoverable+Purgeable"}},{"recoveryId":"https://vaultcdc10cde.vault.azure.net/deletedsecrets/secprg1cdc10cde","deletedDate":1529694659,"scheduledPurgeDate":1537470659,"id":"https://vaultcdc10cde.vault.azure.net/secrets/secprg1cdc10cde","attributes":{"enabled":true,"created":1529694657,"updated":1529694657,"recoveryLevel":"Recoverable+Purgeable"}},{"recoveryId":"https://vaultcdc10cde.vault.azure.net/deletedsecrets/secrec0cdc10cde","deletedDate":1529694657,"scheduledPurgeDate":1537470657,"id":"https://vaultcdc10cde.vault.azure.net/secrets/secrec0cdc10cde","attributes":{"enabled":true,"created":1529694655,"updated":1529694655,"recoveryLevel":"Recoverable+Purgeable"}},{"recoveryId":"https://vaultcdc10cde.vault.azure.net/deletedsecrets/secrec1cdc10cde","deletedDate":1529694658,"scheduledPurgeDate":1537470658,"id":"https://vaultcdc10cde.vault.azure.net/secrets/secrec1cdc10cde","attributes":{"enabled":true,"created":1529694656,"updated":1529694656,"recoveryLevel":"Recoverable+Purgeable"}}],"nextLink":null}'} - headers: - cache-control: [no-cache] - content-length: ['1323'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 19:11:19 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vaultcdc10cde.vault.azure.net/deletedsecrets/secrec0cdc10cde/recover?api-version=7.0 - response: - body: {string: '{"id":"https://vaultcdc10cde.vault.azure.net/secrets/secrec0cdc10cde/acfe54b71a92474cad92876602b4dc4d","attributes":{"enabled":true,"created":1529694655,"updated":1529694655,"recoveryLevel":"Recoverable+Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['215'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 19:11:21 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vaultcdc10cde.vault.azure.net/deletedsecrets/secrec1cdc10cde/recover?api-version=7.0 - response: - body: {string: '{"id":"https://vaultcdc10cde.vault.azure.net/secrets/secrec1cdc10cde/779934677bf741d8a39c780d65a890ce","attributes":{"enabled":true,"created":1529694656,"updated":1529694656,"recoveryLevel":"Recoverable+Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['215'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 19:11:21 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vaultcdc10cde.vault.azure.net/deletedsecrets/secprg0cdc10cde?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - date: ['Fri, 22 Jun 2018 19:11:22 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 204, message: No Content} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vaultcdc10cde.vault.azure.net/deletedsecrets/secprg1cdc10cde?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - date: ['Fri, 22 Jun 2018 19:11:22 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 204, message: No Content} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vaultcdc10cde.vault.azure.net/deletedsecrets?api-version=7.0 - response: - body: {string: '{"value":[],"nextLink":null}'} - headers: - cache-control: [no-cache] - content-length: ['28'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 19:11:43 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vaultcdc10cde.vault.azure.net/secrets/secrec0cdc10cde/?api-version=7.0 - response: - body: {string: '{"value":"secval0cdc10cde","id":"https://vaultcdc10cde.vault.azure.net/secrets/secrec0cdc10cde/acfe54b71a92474cad92876602b4dc4d","attributes":{"enabled":true,"created":1529694655,"updated":1529694655,"recoveryLevel":"Recoverable+Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['241'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 19:11:43 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vaultcdc10cde.vault.azure.net/secrets/secrec1cdc10cde/?api-version=7.0 - response: - body: {string: '{"value":"secval1cdc10cde","id":"https://vaultcdc10cde.vault.azure.net/secrets/secrec1cdc10cde/779934677bf741d8a39c780d65a890ce","attributes":{"enabled":true,"created":1529694656,"updated":1529694656,"recoveryLevel":"Recoverable+Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['241'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 19:11:44 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_secrets.test_secret_crud_operations.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_secrets.test_secret_crud_operations.yaml deleted file mode 100644 index 3031da78366b..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_secrets.test_secret_crud_operations.yaml +++ /dev/null @@ -1,254 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vault5346109c.vault.azure.net/secrets/crud-secret?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:41:41 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"value": "crud_secret_value5346109c"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['38'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vault5346109c.vault.azure.net/secrets/crud-secret?api-version=7.0 - response: - body: {string: '{"value":"crud_secret_value5346109c","id":"https://vault5346109c.vault.azure.net/secrets/crud-secret/94d0bfd2f17f4178831f265a7cd07615","attributes":{"enabled":true,"created":1529689303,"updated":1529689303,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['235'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:41:43 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault5346109c.vault.azure.net/secrets/crud-secret/?api-version=7.0 - response: - body: {string: '{"value":"crud_secret_value5346109c","id":"https://vault5346109c.vault.azure.net/secrets/crud-secret/94d0bfd2f17f4178831f265a7cd07615","attributes":{"enabled":true,"created":1529689303,"updated":1529689303,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['235'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:41:44 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault5346109c.vault.azure.net/secrets/crud-secret/94d0bfd2f17f4178831f265a7cd07615?api-version=7.0 - response: - body: {string: '{"value":"crud_secret_value5346109c","id":"https://vault5346109c.vault.azure.net/secrets/crud-secret/94d0bfd2f17f4178831f265a7cd07615","attributes":{"enabled":true,"created":1529689303,"updated":1529689303,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['235'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:41:44 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"contentType": "text/plain", "attributes": {"enabled": true, "exp": 2527401600}, - "tags": {"foo": "updated tag"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['113'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PATCH - uri: https://vault5346109c.vault.azure.net/secrets/crud-secret/?api-version=7.0 - response: - body: {string: '{"contentType":"text/plain","id":"https://vault5346109c.vault.azure.net/secrets/crud-secret/94d0bfd2f17f4178831f265a7cd07615","attributes":{"enabled":true,"exp":2527401600,"created":1529689303,"updated":1529689305,"recoveryLevel":"Purgeable"},"tags":{"foo":"updated - tag"}}'} - headers: - cache-control: [no-cache] - content-length: ['272'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:41:45 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"contentType": "text/plain", "attributes": {"enabled": true, "exp": 2527401600}, - "tags": {"foo": "updated tag"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['113'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PATCH - uri: https://vault5346109c.vault.azure.net/secrets/crud-secret/94d0bfd2f17f4178831f265a7cd07615?api-version=7.0 - response: - body: {string: '{"contentType":"text/plain","id":"https://vault5346109c.vault.azure.net/secrets/crud-secret/94d0bfd2f17f4178831f265a7cd07615","attributes":{"enabled":true,"exp":2527401600,"created":1529689303,"updated":1529689306,"recoveryLevel":"Purgeable"},"tags":{"foo":"updated - tag"}}'} - headers: - cache-control: [no-cache] - content-length: ['272'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:41:46 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vault5346109c.vault.azure.net/secrets/crud-secret?api-version=7.0 - response: - body: {string: '{"contentType":"text/plain","id":"https://vault5346109c.vault.azure.net/secrets/crud-secret/94d0bfd2f17f4178831f265a7cd07615","attributes":{"enabled":true,"exp":2527401600,"created":1529689303,"updated":1529689306,"recoveryLevel":"Purgeable"},"tags":{"foo":"updated - tag"}}'} - headers: - cache-control: [no-cache] - content-length: ['272'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:41:46 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault5346109c.vault.azure.net/secrets/crud-secret/?api-version=7.0 - response: - body: {string: '{"error":{"code":"SecretNotFound","message":"Secret not found: - crud-secret"}}'} - headers: - cache-control: [no-cache] - content-length: ['77'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:41:46 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 404, message: Not Found} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_secrets.test_secret_list.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_secrets.test_secret_list.yaml deleted file mode 100644 index 1a4a057b6ee4..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_secrets.test_secret_list.yaml +++ /dev/null @@ -1,126 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vaultb42e0c07.vault.azure.net/secrets/sec0?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:42:28 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"value": "secVal0b42e0c07"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['28'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vaultb42e0c07.vault.azure.net/secrets/sec0?api-version=7.0 - response: - body: {string: '{"value":"secVal0b42e0c07","id":"https://vaultb42e0c07.vault.azure.net/secrets/sec0/623ef9e4652c4cdd89d70605ec5293da","attributes":{"enabled":true,"created":1529689349,"updated":1529689349,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['218'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:42:29 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"value": "secVal1b42e0c07"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['28'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vaultb42e0c07.vault.azure.net/secrets/sec1?api-version=7.0 - response: - body: {string: '{"value":"secVal1b42e0c07","id":"https://vaultb42e0c07.vault.azure.net/secrets/sec1/e194b21f0c734c9ca1d445617f547bba","attributes":{"enabled":true,"created":1529689350,"updated":1529689350,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['218'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:42:29 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vaultb42e0c07.vault.azure.net/secrets?maxresults=2&api-version=7.0 - response: - body: {string: '{"value":[{"id":"https://vaultb42e0c07.vault.azure.net/secrets/sec0","attributes":{"enabled":true,"created":1529689349,"updated":1529689349,"recoveryLevel":"Purgeable"}},{"id":"https://vaultb42e0c07.vault.azure.net/secrets/sec1","attributes":{"enabled":true,"created":1529689350,"updated":1529689350,"recoveryLevel":"Purgeable"}}],"nextLink":null}'} - headers: - cache-control: [no-cache] - content-length: ['347'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:42:30 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_secrets.test_secret_list_versions.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_secrets.test_secret_list_versions.yaml deleted file mode 100644 index 50db9a2fa0a2..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_secrets.test_secret_list_versions.yaml +++ /dev/null @@ -1,126 +0,0 @@ -interactions: -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.25 azure-keyvault/1.0.0b1 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vault33710fdf.vault.azure.net/secrets/sec33710fdf?api-version=7.0-preview - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 18 May 2018 12:34:22 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.114;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.848] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: '{"value": "secVal33710fdf"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['27'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.25 azure-keyvault/1.0.0b1 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vault33710fdf.vault.azure.net/secrets/sec33710fdf?api-version=7.0-preview - response: - body: {string: '{"value":"secVal33710fdf","id":"https://vault33710fdf.vault.azure.net/secrets/sec33710fdf/52714a7585d442e9bfb209bc78e4280f","attributes":{"enabled":true,"created":1526646863,"updated":1526646863,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['224'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 18 May 2018 12:34:23 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.114;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.848] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"value": "secVal33710fdf"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['27'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.25 azure-keyvault/1.0.0b1 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vault33710fdf.vault.azure.net/secrets/sec33710fdf?api-version=7.0-preview - response: - body: {string: '{"value":"secVal33710fdf","id":"https://vault33710fdf.vault.azure.net/secrets/sec33710fdf/70d4c47a07a3417b951ef2a6b8f4d984","attributes":{"enabled":true,"created":1526646864,"updated":1526646864,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['224'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 18 May 2018 12:34:23 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.114;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.848] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.25 azure-keyvault/1.0.0b1 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault33710fdf.vault.azure.net/secrets/sec33710fdf/versions?api-version=7.0-preview - response: - body: {string: '{"value":[{"id":"https://vault33710fdf.vault.azure.net/secrets/sec33710fdf/52714a7585d442e9bfb209bc78e4280f","attributes":{"enabled":true,"created":1526646863,"updated":1526646863,"recoveryLevel":"Purgeable"}},{"id":"https://vault33710fdf.vault.azure.net/secrets/sec33710fdf/70d4c47a07a3417b951ef2a6b8f4d984","attributes":{"enabled":true,"created":1526646864,"updated":1526646864,"recoveryLevel":"Purgeable"}}],"nextLink":null}'} - headers: - cache-control: [no-cache] - content-length: ['427'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 18 May 2018 12:34:23 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.114;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.848] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/recordings/test_storage.test_e2e.yaml b/sdk/keyvault/azure-keyvault/tests/recordings/test_storage.test_e2e.yaml deleted file mode 100644 index 9dec4eeb33ad..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/recordings/test_storage.test_e2e.yaml +++ /dev/null @@ -1,566 +0,0 @@ -interactions: -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-mgmt-authorization/0.40.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/providers/Microsoft.Authorization/roleDefinitions?$filter=roleName%20eq%20%27Storage%20Account%20Key%20Operator%20Service%20Role%27&api-version=2018-01-01-preview - response: - body: {string: '{"value":[{"properties":{"roleName":"Storage Account Key Operator - Service Role","type":"BuiltInRole","description":"Storage Account Key Operators - are allowed to list and regenerate keys on Storage Accounts","assignableScopes":["/"],"permissions":[{"actions":["Microsoft.Storage/storageAccounts/listkeys/action","Microsoft.Storage/storageAccounts/regeneratekey/action"],"notActions":[],"dataActions":[],"notDataActions":[]}],"createdOn":"2017-04-13T18:26:11.5770570Z","updatedOn":"2017-04-13T20:57:14.5990198Z","createdBy":null,"updatedBy":null},"id":"/providers/Microsoft.Authorization/roleDefinitions/81a9662b-bebf-436f-a333-f67b29880f12","type":"Microsoft.Authorization/roleDefinitions","name":"81a9662b-bebf-436f-a333-f67b29880f12"}]}'} - headers: - cache-control: [no-cache] - content-length: ['737'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:23:05 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - set-cookie: [x-ms-gateway-slice=productionb; path=/; secure; HttpOnly] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-request-charge: ['1'] - status: {code: 200, message: OK} -- request: - body: '{"properties": {"roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/81a9662b-bebf-436f-a333-f67b29880f12", - "principalId": "93c27d83-f79b-4cb2-8dd4-4aa716542e74"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['182'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-mgmt-authorization/0.40.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_storage_test_e2e5fab085e/providers/Microsoft.Storage/storageAccounts/kvsa15fab085e/providers/Microsoft.Authorization/roleAssignments/d7607bd3-a467-4a14-ab5f-f4b016ffbfff?api-version=2018-01-01-preview - response: - body: {string: '{"properties":{"roleDefinitionId":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleDefinitions/81a9662b-bebf-436f-a333-f67b29880f12","principalId":"93c27d83-f79b-4cb2-8dd4-4aa716542e74","principalType":"ServicePrincipal","scope":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_storage_test_e2e5fab085e/providers/Microsoft.Storage/storageAccounts/kvsa15fab085e","createdOn":"2018-06-22T17:23:06.4108913Z","updatedOn":"2018-06-22T17:23:06.4108913Z","createdBy":null,"updatedBy":"00000000-0000-0000-0000-000000000000"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_storage_test_e2e5fab085e/providers/Microsoft.Storage/storageAccounts/kvsa15fab085e/providers/Microsoft.Authorization/roleAssignments/d7607bd3-a467-4a14-ab5f-f4b016ffbfff","type":"Microsoft.Authorization/roleAssignments","name":"d7607bd3-a467-4a14-ab5f-f4b016ffbfff"}'} - headers: - cache-control: [no-cache] - content-length: ['927'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:23:10 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - set-cookie: [x-ms-gateway-slice=productionb; path=/; secure; HttpOnly] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] - x-ms-request-charge: ['5'] - status: {code: 201, message: Created} -- request: - body: '' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: [0] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vault5fab085e.vault.azure.net/storage/kvsa15fab085e?api-version=7.0 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 22 Jun 2018 17:23:11 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - www-authenticate: ['Bearer authorization="https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", - resource="https://vault.azure.net"'] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 401, message: Unauthorized} -- request: - body: 'b''b\''{"resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_storage_test_e2e5fab085e/providers/Microsoft.Storage/storageAccounts/kvsa15fab085e", - "activeKeyName": "key1", "autoRegenerateKey": true, "regenerationPeriod": "P30D", - "attributes": {"enabled": true}}\''''' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['287'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vault5fab085e.vault.azure.net/storage/kvsa15fab085e?api-version=7.0 - response: - body: {string: '{"id":"https://vault5fab085e.vault.azure.net/storage/kvsa15fab085e","resourceId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_storage_test_e2e5fab085e/providers/Microsoft.Storage/storageAccounts/kvsa15fab085e","activeKeyName":"key1","autoRegenerateKey":true,"regenerationPeriod":"P30D","attributes":{"enabled":true,"created":1529688194,"updated":1529688194,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['414'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:23:14 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"activeKeyName": "key2"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['25'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PATCH - uri: https://vault5fab085e.vault.azure.net/storage/kvsa15fab085e?api-version=7.0 - response: - body: {string: '{"id":"https://vault5fab085e.vault.azure.net/storage/kvsa15fab085e","resourceId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_storage_test_e2e5fab085e/providers/Microsoft.Storage/storageAccounts/kvsa15fab085e","activeKeyName":"key2","autoRegenerateKey":true,"regenerationPeriod":"P30D","attributes":{"enabled":true,"created":1529688194,"updated":1529688194,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['414'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:23:14 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"keyName": "key1"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['19'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: POST - uri: https://vault5fab085e.vault.azure.net/storage/kvsa15fab085e/regeneratekey?api-version=7.0 - response: - body: {string: '{"id":"https://vault5fab085e.vault.azure.net/storage/kvsa15fab085e","resourceId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_storage_test_e2e5fab085e/providers/Microsoft.Storage/storageAccounts/kvsa15fab085e","activeKeyName":"key1","autoRegenerateKey":true,"regenerationPeriod":"P30D","attributes":{"enabled":true,"created":1529688196,"updated":1529688196,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['414'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:23:15 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: '{"templateUri": "se=2020-01-01&sp=acdlpruw&sv=2017-07-29&ss=bfqt&srt=sco&sig=YWdFIAQJDor%2B8o/PGcC3XhdPtvsIQFoVcsmDXUO%2BQkg%3D", - "sasType": "account", "validityPeriod": "PT2H", "attributes": {"enabled": true}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['210'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vault5fab085e.vault.azure.net/storage/kvsa15fab085e/sas/acctall?api-version=7.0 - response: - body: {string: '{"id":"https://vault5fab085e.vault.azure.net/storage/kvsa15fab085e/sas/acctall","sid":"https://vault5fab085e.vault.azure.net/secrets/kvsa15fab085e-acctall","templateUri":"se=2020-01-01&sp=acdlpruw&sv=2017-07-29&ss=bfqt&srt=sco&sig=YWdFIAQJDor%2B8o/PGcC3XhdPtvsIQFoVcsmDXUO%2BQkg%3D","sasType":"account","validityPeriod":"PT2H","attributes":{"enabled":true,"created":1529688196,"updated":1529688196,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['427'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:23:16 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault5fab085e.vault.azure.net/secrets/kvsa15fab085e-acctall/?api-version=7.0 - response: - body: {string: '{"value":"?sv=2017-07-29&ss=bfqt&srt=sco&sp=acdlpruw&se=2018-06-22T19:23:17Z&sig=fa4mkeNzAfSg8SHPL1f4MlCRqwfcqBYMXwaZoecoteY%3D","contentType":"application/vnd.ms-sastoken-storage","id":"https://vault5fab085e.vault.azure.net/secrets/kvsa15fab085e-acctall","managed":true,"attributes":{"enabled":true,"exp":1529695397,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['346'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:23:16 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Connection: [keep-alive] - Content-Length: ['0'] - User-Agent: [Azure-Storage/1.1.0-1.1.0 (Python CPython 3.6.2; Windows 10)] - x-ms-date: ['Fri, 22 Jun 2018 17:23:17 GMT'] - x-ms-version: ['2017-07-29'] - method: PUT - uri: https://kvsa15fab085e.blob.core.windows.net/blobcontainer?sv=2017-07-29&ss=bfqt&srt=sco&sp=acdlpruw&se=2018-06-22T19:23:17Z&sig=fa4mkeNzAfSg8SHPL1f4MlCRqwfcqBYMXwaZoecoteY%3D&restype=container - response: - body: {string: ''} - headers: - date: ['Fri, 22 Jun 2018 17:23:17 GMT'] - etag: ['"0x8D5D864D84469F3"'] - last-modified: ['Fri, 22 Jun 2018 17:23:17 GMT'] - server: [Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0] - transfer-encoding: [chunked] - x-ms-version: ['2017-07-29'] - status: {code: 201, message: Created} -- request: - body: test blob1 data - headers: - Connection: [keep-alive] - Content-Length: ['15'] - User-Agent: [Azure-Storage/1.1.0-1.1.0 (Python CPython 3.6.2; Windows 10)] - x-ms-blob-type: [BlockBlob] - x-ms-date: ['Fri, 22 Jun 2018 17:23:18 GMT'] - x-ms-version: ['2017-07-29'] - method: PUT - uri: https://kvsa15fab085e.blob.core.windows.net/blobcontainer/blob1?sv=2017-07-29&ss=bfqt&srt=sco&sp=acdlpruw&se=2018-06-22T19:23:17Z&sig=fa4mkeNzAfSg8SHPL1f4MlCRqwfcqBYMXwaZoecoteY%3D - response: - body: {string: ''} - headers: - content-md5: [nTqGDfAnfDtU7tyJ8UJqKA==] - date: ['Fri, 22 Jun 2018 17:23:18 GMT'] - etag: ['"0x8D5D864D86E755B"'] - last-modified: ['Fri, 22 Jun 2018 17:23:18 GMT'] - server: [Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0] - transfer-encoding: [chunked] - x-ms-request-server-encrypted: ['true'] - x-ms-version: ['2017-07-29'] - status: {code: 201, message: Created} -- request: - body: '{"templateUri": "https://kvsa15fab085e.blob.core.windows.net/blobcontainer?restype=container&se=2020-01-01&sp=rwdl&sv=2017-07-29&sr=c&sig=0RaJgVOfs0vJD7ZTqiQgjBhaZ4a425P1uNUn1SNhtWY%3D", - "sasType": "service", "validityPeriod": "PT2H", "attributes": {"enabled": true}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['267'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://vault5fab085e.vault.azure.net/storage/kvsa15fab085e/sas/blobcontall?api-version=7.0 - response: - body: {string: '{"id":"https://vault5fab085e.vault.azure.net/storage/kvsa15fab085e/sas/blobcontall","sid":"https://vault5fab085e.vault.azure.net/secrets/kvsa15fab085e-blobcontall","templateUri":"https://kvsa15fab085e.blob.core.windows.net/blobcontainer?restype=container&se=2020-01-01&sp=rwdl&sv=2017-07-29&sr=c&sig=0RaJgVOfs0vJD7ZTqiQgjBhaZ4a425P1uNUn1SNhtWY%3D","sasType":"service","validityPeriod":"PT2H","attributes":{"enabled":true,"created":1529688198,"updated":1529688198,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['492'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:23:18 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault5fab085e.vault.azure.net/secrets/kvsa15fab085e-blobcontall/?api-version=7.0 - response: - body: {string: '{"value":"?sv=2017-07-29&sr=c&sp=rwdl&se=2018-06-22T19%3A23%3A19Z&sig=CbzfQHOxMs%2B4h43BudpoJw4IpoFsZwTgqYJrZEjaquc%3D","contentType":"application/vnd.ms-sastoken-storage","id":"https://vault5fab085e.vault.azure.net/secrets/kvsa15fab085e-blobcontall","managed":true,"attributes":{"enabled":true,"exp":1529695399,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['341'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:23:18 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: test blob2 data - headers: - Connection: [keep-alive] - Content-Length: ['15'] - User-Agent: [Azure-Storage/1.1.0-1.1.0 (Python CPython 3.6.2; Windows 10)] - x-ms-blob-type: [BlockBlob] - x-ms-date: ['Fri, 22 Jun 2018 17:23:19 GMT'] - x-ms-version: ['2017-07-29'] - method: PUT - uri: https://kvsa15fab085e.blob.core.windows.net/blobcontainer/blob2?sv=2017-07-29&sr=c&sp=rwdl&se=2018-06-22T19%3A23%3A19Z&sig=CbzfQHOxMs%2B4h43BudpoJw4IpoFsZwTgqYJrZEjaquc%3D - response: - body: {string: ''} - headers: - content-md5: [862XuMyOsyybSzYVY9l8xg==] - date: ['Fri, 22 Jun 2018 17:23:19 GMT'] - etag: ['"0x8D5D864D95D55F3"'] - last-modified: ['Fri, 22 Jun 2018 17:23:19 GMT'] - server: [Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0] - transfer-encoding: [chunked] - x-ms-request-server-encrypted: ['true'] - x-ms-version: ['2017-07-29'] - status: {code: 201, message: Created} -- request: - body: null - headers: - Connection: [keep-alive] - User-Agent: [Azure-Storage/1.1.0-1.1.0 (Python CPython 3.6.2; Windows 10)] - x-ms-date: ['Fri, 22 Jun 2018 17:23:19 GMT'] - x-ms-version: ['2017-07-29'] - method: GET - uri: https://kvsa15fab085e.blob.core.windows.net/blobcontainer?sv=2017-07-29&sr=c&sp=rwdl&se=2018-06-22T19%3A23%3A19Z&sig=CbzfQHOxMs%2B4h43BudpoJw4IpoFsZwTgqYJrZEjaquc%3D&restype=container&comp=list - response: - body: {string: "\uFEFFblob1Fri,\ - \ 22 Jun 2018 17:23:18 GMT0x8D5D864D86E755B15application/octet-streamnTqGDfAnfDtU7tyJ8UJqKA==BlockBlobunlockedavailabletrueblob2Fri,\ - \ 22 Jun 2018 17:23:19 GMT0x8D5D864D95D55F315application/octet-stream862XuMyOsyybSzYVY9l8xg==BlockBlobunlockedavailabletrue"} - headers: - content-type: [application/xml] - date: ['Fri, 22 Jun 2018 17:23:19 GMT'] - server: [Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0] - transfer-encoding: [chunked] - x-ms-version: ['2017-07-29'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Connection: [keep-alive] - Content-Length: ['0'] - User-Agent: [Azure-Storage/1.1.0-1.1.0 (Python CPython 3.6.2; Windows 10)] - x-ms-date: ['Fri, 22 Jun 2018 17:23:20 GMT'] - x-ms-version: ['2017-07-29'] - method: DELETE - uri: https://kvsa15fab085e.blob.core.windows.net/blobcontainer/blob1?sv=2017-07-29&sr=c&sp=rwdl&se=2018-06-22T19%3A23%3A19Z&sig=CbzfQHOxMs%2B4h43BudpoJw4IpoFsZwTgqYJrZEjaquc%3D - response: - body: {string: ''} - headers: - date: ['Fri, 22 Jun 2018 17:23:19 GMT'] - server: [Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0] - transfer-encoding: [chunked] - x-ms-delete-type-permanent: ['true'] - x-ms-version: ['2017-07-29'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Connection: [keep-alive] - Content-Length: ['0'] - User-Agent: [Azure-Storage/1.1.0-1.1.0 (Python CPython 3.6.2; Windows 10)] - x-ms-date: ['Fri, 22 Jun 2018 17:23:20 GMT'] - x-ms-version: ['2017-07-29'] - method: DELETE - uri: https://kvsa15fab085e.blob.core.windows.net/blobcontainer/blob2?sv=2017-07-29&sr=c&sp=rwdl&se=2018-06-22T19%3A23%3A19Z&sig=CbzfQHOxMs%2B4h43BudpoJw4IpoFsZwTgqYJrZEjaquc%3D - response: - body: {string: ''} - headers: - date: ['Fri, 22 Jun 2018 17:23:19 GMT'] - server: [Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0] - transfer-encoding: [chunked] - x-ms-delete-type-permanent: ['true'] - x-ms-version: ['2017-07-29'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault5fab085e.vault.azure.net/storage/kvsa15fab085e/sas?maxresults=5&api-version=7.0 - response: - body: {string: '{"value":[{"id":"https://vault5fab085e.vault.azure.net/storage/kvsa15fab085e/sas/acctall","sid":"https://vault5fab085e.vault.azure.net/secrets/kvsa15fab085e-acctall","attributes":{"enabled":true,"created":1529688196,"updated":1529688196,"recoveryLevel":"Purgeable"}},{"id":"https://vault5fab085e.vault.azure.net/storage/kvsa15fab085e/sas/blobcontall","sid":"https://vault5fab085e.vault.azure.net/secrets/kvsa15fab085e-blobcontall","attributes":{"enabled":true,"created":1529688198,"updated":1529688198,"recoveryLevel":"Purgeable"}}],"nextLink":null}'} - headers: - cache-control: [no-cache] - content-length: ['549'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:23:20 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault5fab085e.vault.azure.net/storage/kvsa15fab085e/sas/acctall?api-version=7.0 - response: - body: {string: '{"id":"https://vault5fab085e.vault.azure.net/storage/kvsa15fab085e/sas/acctall","sid":"https://vault5fab085e.vault.azure.net/secrets/kvsa15fab085e-acctall","templateUri":"se=2020-01-01&sp=acdlpruw&sv=2017-07-29&ss=bfqt&srt=sco&sig=YWdFIAQJDor%2B8o/PGcC3XhdPtvsIQFoVcsmDXUO%2BQkg%3D","sasType":"account","validityPeriod":"PT2H","attributes":{"enabled":true,"created":1529688196,"updated":1529688196,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['427'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:23:21 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://vault5fab085e.vault.azure.net/storage/kvsa15fab085e/sas/blobcontall?api-version=7.0 - response: - body: {string: '{"id":"https://vault5fab085e.vault.azure.net/storage/kvsa15fab085e/sas/blobcontall","sid":"https://vault5fab085e.vault.azure.net/secrets/kvsa15fab085e-blobcontall","templateUri":"https://kvsa15fab085e.blob.core.windows.net/blobcontainer?restype=container&se=2020-01-01&sp=rwdl&sv=2017-07-29&sr=c&sig=0RaJgVOfs0vJD7ZTqiQgjBhaZ4a425P1uNUn1SNhtWY%3D","sasType":"service","validityPeriod":"PT2H","attributes":{"enabled":true,"created":1529688198,"updated":1529688198,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['492'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:23:21 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.1 - msrest_azure/0.4.33 azure-keyvault/1.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://vault5fab085e.vault.azure.net/storage/kvsa15fab085e?api-version=7.0 - response: - body: {string: '{"id":"https://vault5fab085e.vault.azure.net/storage/kvsa15fab085e","resourceId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_storage_test_e2e5fab085e/providers/Microsoft.Storage/storageAccounts/kvsa15fab085e","activeKeyName":"key1","autoRegenerateKey":true,"regenerationPeriod":"P30D","attributes":{"enabled":true,"created":1529688196,"updated":1529688196,"recoveryLevel":"Purgeable"}}'} - headers: - cache-control: [no-cache] - content-length: ['414'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 22 Jun 2018 17:23:22 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000;includeSubDomains] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-keyvault-network-info: [addr=167.220.0.182;act_addr_fam=InterNetwork;] - x-ms-keyvault-region: [westus] - x-ms-keyvault-service-version: [1.0.0.849] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -version: 1 diff --git a/sdk/keyvault/azure-keyvault/tests/test_certificates.py b/sdk/keyvault/azure-keyvault/tests/test_certificates.py deleted file mode 100644 index d656a3cc4b14..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/test_certificates.py +++ /dev/null @@ -1,515 +0,0 @@ -import time -from devtools_testutils import ResourceGroupPreparer -from keyvault_preparer import KeyVaultPreparer -from keyvault_testcase import KeyvaultTestCase -from azure.keyvault import KeyVaultId -from azure.keyvault.models import ( - SecretProperties, KeyProperties, CertificatePolicy, IssuerParameters, X509CertificateProperties, - SubjectAlternativeNames, IssuerCredentials, OrganizationDetails, AdministratorDetails, Contact -) - -class KeyVaultCertificateTest(KeyvaultTestCase): - - def _import_common_certificate(self, vault_uri, cert_name): - cert_content = 'MIIJOwIBAzCCCPcGCSqGSIb3DQEHAaCCCOgEggjkMIII4DCCBgkGCSqGSIb3DQEHAaCCBfoEggX2MIIF8jCCBe4GCyqGSIb3DQEMCgECoIIE/jCCBPowHAYKKoZIhvcNAQwBAzAOBAj15YH9pOE58AICB9AEggTYLrI+SAru2dBZRQRlJY7XQ3LeLkah2FcRR3dATDshZ2h0IA2oBrkQIdsLyAAWZ32qYR1qkWxLHn9AqXgu27AEbOk35+pITZaiy63YYBkkpR+pDdngZt19Z0PWrGwHEq5z6BHS2GLyyN8SSOCbdzCz7blj3+7IZYoMj4WOPgOm/tQ6U44SFWek46QwN2zeA4i97v7ftNNns27ms52jqfhOvTA9c/wyfZKAY4aKJfYYUmycKjnnRl012ldS2lOkASFt+lu4QCa72IY6ePtRudPCvmzRv2pkLYS6z3cI7omT8nHP3DymNOqLbFqr5O2M1ZYaLC63Q3xt3eVvbcPh3N08D1hHkhz/KDTvkRAQpvrW8ISKmgDdmzN55Pe55xHfSWGB7gPw8sZea57IxFzWHTK2yvTslooWoosmGxanYY2IG/no3EbPOWDKjPZ4ilYJe5JJ2immlxPz+2e2EOCKpDI+7fzQcRz3PTd3BK+budZ8aXX8aW/lOgKS8WmxZoKnOJBNWeTNWQFugmktXfdPHAdxMhjUXqeGQd8wTvZ4EzQNNafovwkI7IV/ZYoa++RGofVR3ZbRSiBNF6TDj/qXFt0wN/CQnsGAmQAGNiN+D4mY7i25dtTu/Jc7OxLdhAUFpHyJpyrYWLfvOiS5WYBeEDHkiPUa/8eZSPA3MXWZR1RiuDvuNqMjct1SSwdXADTtF68l/US1ksU657+XSC+6ly1A/upz+X71+C4Ho6W0751j5ZMT6xKjGh5pee7MVuduxIzXjWIy3YSd0fIT3U0A5NLEvJ9rfkx6JiHjRLx6V1tqsrtT6BsGtmCQR1UCJPLqsKVDvAINx3cPA/CGqr5OX2BGZlAihGmN6n7gv8w4O0k0LPTAe5YefgXN3m9pE867N31GtHVZaJ/UVgDNYS2jused4rw76ZWN41akx2QN0JSeMJqHXqVz6AKfz8ICS/dFnEGyBNpXiMRxrY/QPKi/wONwqsbDxRW7vZRVKs78pBkE0ksaShlZk5GkeayDWC/7Hi/NqUFtIloK9XB3paLxo1DGu5qqaF34jZdktzkXp0uZqpp+FfKZaiovMjt8F7yHCPk+LYpRsU2Cyc9DVoDA6rIgf+uEP4jppgehsxyT0lJHax2t869R2jYdsXwYUXjgwHIV0voj7bJYPGFlFjXOp6ZW86scsHM5xfsGQoK2Fp838VT34SHE1ZXU/puM7rviREHYW72pfpgGZUILQMohuTPnd8tFtAkbrmjLDo+k9xx7HUvgoFTiNNWuq/cRjr70FKNguMMTIrid+HwfmbRoaxENWdLcOTNeascER2a+37UQolKD5ksrPJG6RdNA7O2pzp3micDYRs/+s28cCIxO//J/d4nsgHp6RTuCu4+Jm9k0YTw2Xg75b2cWKrxGnDUgyIlvNPaZTB5QbMid4x44/lE0LLi9kcPQhRgrK07OnnrMgZvVGjt1CLGhKUv7KFc3xV1r1rwKkosxnoG99oCoTQtregcX5rIMjHgkc1IdflGJkZzaWMkYVFOJ4Weynz008i4ddkske5vabZs37Lb8iggUYNBYZyGzalruBgnQyK4fz38Fae4nWYjyildVfgyo/fCePR2ovOfphx9OQJi+M9BoFmPrAg+8ARDZ+R+5yzYuEc9ZoVX7nkp7LTGB3DANBgkrBgEEAYI3EQIxADATBgkqhkiG9w0BCRUxBgQEAQAAADBXBgkqhkiG9w0BCRQxSh5IAGEAOAAwAGQAZgBmADgANgAtAGUAOQA2AGUALQA0ADIAMgA0AC0AYQBhADEAMQAtAGIAZAAxADkANABkADUAYQA2AGIANwA3MF0GCSsGAQQBgjcRATFQHk4ATQBpAGMAcgBvAHMAbwBmAHQAIABTAHQAcgBvAG4AZwAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIAbwB2AGkAZABlAHIwggLPBgkqhkiG9w0BBwagggLAMIICvAIBADCCArUGCSqGSIb3DQEHATAcBgoqhkiG9w0BDAEGMA4ECNX+VL2MxzzWAgIH0ICCAojmRBO+CPfVNUO0s+BVuwhOzikAGNBmQHNChmJ/pyzPbMUbx7tO63eIVSc67iERda2WCEmVwPigaVQkPaumsfp8+L6iV/BMf5RKlyRXcwh0vUdu2Qa7qadD+gFQ2kngf4Dk6vYo2/2HxayuIf6jpwe8vql4ca3ZtWXfuRix2fwgltM0bMz1g59d7x/glTfNqxNlsty0A/rWrPJjNbOPRU2XykLuc3AtlTtYsQ32Zsmu67A7UNBw6tVtkEXlFDqhavEhUEO3dvYqMY+QLxzpZhA0q44ZZ9/ex0X6QAFNK5wuWxCbupHWsgxRwKftrxyszMHsAvNoNcTlqcctee+ecNwTJQa1/MDbnhO6/qHA7cfG1qYDq8Th635vGNMW1w3sVS7l0uEvdayAsBHWTcOC2tlMa5bfHrhY8OEIqj5bN5H9RdFy8G/W239tjDu1OYjBDydiBqzBn8HG1DSj1Pjc0kd/82d4ZU0308KFTC3yGcRad0GnEH0Oi3iEJ9HbriUbfVMbXNHOF+MktWiDVqzndGMKmuJSdfTBKvGFvejAWVO5E4mgLvoaMmbchc3BO7sLeraHnJN5hvMBaLcQI38N86mUfTR8AP6AJ9c2k514KaDLclm4z6J8dMz60nUeo5D3YD09G6BavFHxSvJ8MF0Lu5zOFzEePDRFm9mH8W0N/sFlIaYfD/GWU/w44mQucjaBk95YtqOGRIj58tGDWr8iUdHwaYKGqU24zGeRae9DhFXPzZshV1ZGsBQFRaoYkyLAwdJWIXTi+c37YaC8FRSEnnNmS79Dou1Kc3BvK4EYKAD2KxjtUebrV174gD0Q+9YuJ0GXOTspBvCFd5VT2Rw5zDNrA/J3F5fMCk4wOzAfMAcGBSsOAwIaBBSxgh2xyF+88V4vAffBmZXv8Txt4AQU4O/NX4MjxSodbE7ApNAMIvrtREwCAgfQ' - cert_password = '123' - cert_policy = CertificatePolicy(key_properties=KeyProperties(exportable=True, - key_type='RSA', - key_size=2048, - reuse_key=False), - secret_properties=SecretProperties(content_type='application/x-pkcs12')) - return ( - self.client.import_certificate(vault_uri, cert_name, cert_content, cert_password, cert_policy), - cert_policy - ) - - def _validate_certificate_operation(self, pending_cert, vault, cert_name, cert_policy): - self.assertIsNotNone(pending_cert) - self.assertIsNotNone(pending_cert.csr) - self.assertEqual(cert_policy.issuer_parameters.name, pending_cert.issuer_parameters.name) - pending_id = KeyVaultId.parse_certificate_operation_id(pending_cert.id) - self.assertEqual(pending_id.vault.strip('/'), vault.strip('/')) - self.assertEqual(pending_id.name, cert_name) - - def _validate_certificate_bundle(self, cert, vault, cert_name, cert_policy): - cert_id = KeyVaultId.parse_certificate_id(cert.id) - self.assertEqual(cert_id.vault.strip('/'), vault.strip('/')) - self.assertEqual(cert_id.name, cert_name) - self.assertIsNotNone(cert) - self.assertIsNotNone(cert.x509_thumbprint) - self.assertIsNotNone(cert.cer) - self.assertIsNotNone(cert.attributes) - self.assertIsNotNone(cert.policy) - self.assertIsNotNone(cert.policy.id) - self.assertIsNotNone(cert.policy.issuer_parameters) - self.assertIsNotNone(cert.policy.lifetime_actions) - self.assertEqual(cert.policy.key_properties, cert_policy.key_properties) - self.assertEqual(cert.policy.secret_properties, cert_policy.secret_properties) - self.assertIsNotNone(cert.policy.x509_certificate_properties) - if cert_policy.x509_certificate_properties: - self.assertEqual(cert.policy.x509_certificate_properties.validity_in_months, - cert_policy.x509_certificate_properties.validity_in_months) - KeyVaultId.parse_secret_id(cert.sid) - KeyVaultId.parse_key_id(cert.kid) - - def _validate_certificate_list(self, certificates, expected): - for cert in certificates: - if cert.id in expected.keys(): - del expected[cert.id] - else: - self.assertTrue(False) - - def _validate_issuer_bundle(self, bundle, vault, name, provider, credentials, org_details): - self.assertIsNotNone(bundle) - self.assertIsNotNone(bundle.attributes) - self.assertIsNotNone(bundle.organization_details) - self.assertEqual(bundle.provider, provider) - - issuer_id = KeyVaultId.parse_certificate_issuer_id(bundle.id) - self.assertEqual(issuer_id.vault.strip('/'), vault.strip('/')) - self.assertEqual(issuer_id.name, name) - - if credentials: - self.assertEqual(bundle.credentials.account_id, credentials.account_id) - if org_details: - # To Accomodate tiny change in == semantic in msrest 0.4.20 - org_details.additional_properties = {} - bundle.organization_details.additional_properties = {} - - self.assertEqual(bundle.organization_details, org_details) - - def _validate_certificate_issuer_list(self, issuers, expected): - for issuer in issuers: - KeyVaultId.parse_certificate_issuer_id(issuer.id) - provider = expected[issuer.id] - if provider: - self.assertEqual(provider, issuer.provider) - del expected[issuer.id] - - def _validate_certificate_contacts(self, contacts, vault, expected): - contact_id = '{}certificates/contacts'.format(vault) - self.assertEqual(contact_id, contacts.id) - self.assertEqual(len(contacts.contact_list), len(expected)) - - for contact in contacts.contact_list: - exp_contact = next(x for x in expected if x.email_address == contact.email_address) - self.assertEqual(contact, exp_contact) - - @ResourceGroupPreparer() - @KeyVaultPreparer() - def test_crud_operations(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - cert_name = self.get_resource_name('cert') - - cert_policy = CertificatePolicy(key_properties=KeyProperties(exportable=True, - key_type='RSA', - key_size=2048, - reuse_key=False), - secret_properties=SecretProperties(content_type='application/x-pkcs12'), - issuer_parameters=IssuerParameters(name='Self'), - x509_certificate_properties=X509CertificateProperties( - subject='CN=*.microsoft.com', - subject_alternative_names=SubjectAlternativeNames( - dns_names=['onedrive.microsoft.com', 'xbox.microsoft.com'] - ), - validity_in_months=24 - )) - - # create certificate - interval_time = 5 if not self.is_playback() else 0 - cert_operation = self.client.create_certificate(vault_uri, cert_name, cert_policy) - while True: - pending_cert = self.client.get_certificate_operation(vault_uri, cert_name) - self._validate_certificate_operation(pending_cert, vault_uri, cert_name, cert_policy) - if pending_cert.status.lower() == 'completed': - cert_id = KeyVaultId.parse_certificate_operation_id(pending_cert.target) - break - elif pending_cert.status.lower() != 'inprogress': - raise Exception('Unknown status code for pending certificate: {}'.format(pending_cert)) - time.sleep(interval_time) - - # get certificate - cert_bundle = self.client.get_certificate(cert_id.vault, cert_id.name, '') - self._validate_certificate_bundle(cert_bundle, vault_uri, cert_name, cert_policy) - - # get certificate as secret - secret_id = KeyVaultId.parse_secret_id(cert_bundle.sid) - secret_bundle = self.client.get_secret(secret_id.vault, secret_id.name, secret_id.version) - - # update certificate - cert_policy.tags = {'tag1': 'value1'} - cert_bundle = self.client.update_certificate(cert_id.vault, cert_id.name, cert_id.version, cert_policy) - self._validate_certificate_bundle(cert_bundle, vault_uri, cert_name, cert_policy) - - # delete certificate - cert_bundle = self.client.delete_certificate(vault_uri, cert_name) - self._validate_certificate_bundle(cert_bundle, vault_uri, cert_name, cert_policy) - - # get certificate returns not found - try: - self.client.get_certificate(cert_id.vault, cert_id.name, '') - self.fail('Get should fail') - except Exception as ex: - if not hasattr(ex, 'message') or 'not found' not in ex.message.lower(): - raise ex - - @ResourceGroupPreparer() - @KeyVaultPreparer() - def test_import(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - cert_name = self.get_resource_name('certimp') - - # import certificate( - (cert_bundle, cert_policy) = self._import_common_certificate(vault_uri, cert_name) - self._validate_certificate_bundle(cert_bundle, vault_uri, cert_name, cert_policy) - - @ResourceGroupPreparer() - @KeyVaultPreparer() - def test_list(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - - max_certificates = self.list_test_size - expected = {} - - # import some certificates - for x in range(0, max_certificates): - cert_name = self.get_resource_name('cert{}'.format(x)) - cert_bundle = None - error_count = 0 - while not cert_bundle: - try: - cert_bundle = self._import_common_certificate(vault_uri, cert_name)[0] - cid = KeyVaultId.parse_certificate_id(cert_bundle.id).base_id.strip('/') - expected[cid] = cert_bundle.attributes - except Exception as ex: - if hasattr(ex, 'message') and 'Throttled' in ex.message: - error_count += 1 - time.sleep(2.5 * error_count) - continue - else: - raise ex - - # list certificates - result = list(self.client.get_certificates(vault_uri, self.list_test_size)) - self._validate_certificate_list(result, expected) - - @ResourceGroupPreparer() - @KeyVaultPreparer() - def test_list_versions(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - cert_name = self.get_resource_name('certver') - - max_certificates = self.list_test_size - expected = {} - - # import same certificates as different versions - for x in range(0, max_certificates): - cert_bundle = None - error_count = 0 - while not cert_bundle: - try: - cert_bundle = self._import_common_certificate(vault_uri, cert_name)[0] - cid = KeyVaultId.parse_certificate_id(cert_bundle.id).id.strip('/') - expected[cid] = cert_bundle.attributes - except Exception as ex: - if hasattr(ex, 'message') and 'Throttled' in ex.message: - error_count += 1 - time.sleep(2.5 * error_count) - continue - else: - raise ex - - # list certificate versions - self._validate_certificate_list(list(self.client.get_certificate_versions(vault_uri, cert_name)), expected) - - @ResourceGroupPreparer() - @KeyVaultPreparer() - def test_crud_issuer(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - - issuer_name = 'pythonIssuer' - issuer_credentials = IssuerCredentials(account_id='keyvaultuser', password='password') - organization_details = OrganizationDetails( - admin_details=[AdministratorDetails(first_name='Jane', - last_name='Doe', - email_address='admin@contoso.com', - phone='4256666666')]) - - # create certificate issuer - issuer_bundle = self.client.set_certificate_issuer(vault_uri, issuer_name, 'test', issuer_credentials, - organization_details) - self._validate_issuer_bundle(issuer_bundle, vault_uri, issuer_name, 'test', issuer_credentials, - organization_details) - - # get certificate issuer - issuer_bundle = self.client.get_certificate_issuer(vault_uri, issuer_name) - self._validate_issuer_bundle(issuer_bundle, vault_uri, issuer_name, 'test', issuer_credentials, - organization_details) - - # update certificate issue - new_credentials = IssuerCredentials(account_id='xboxuser', password='security') - new_org_details = OrganizationDetails( - admin_details=[AdministratorDetails(first_name='Jane II', - last_name='Doe', - email_address='admin@contoso.com', - phone='1111111111')]) - issuer_bundle = self.client.update_certificate_issuer(vault_uri, issuer_name, 'test', new_credentials, - new_org_details) - self._validate_issuer_bundle(issuer_bundle, vault_uri, issuer_name, 'test', new_credentials, new_org_details) - - # delete certificate issuer( - self.client.delete_certificate_issuer(vault_uri, issuer_name) - - # get certificate issuer returns not found - try: - self.client.get_certificate_issuer(vault_uri, issuer_name) - self.fail('Get should fail') - except Exception as ex: - if not hasattr(ex, 'message') or 'not found' not in ex.message.lower(): - raise ex - - @ResourceGroupPreparer() - @KeyVaultPreparer() - def test_list_issuers(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - - max_issuers = self.list_test_size - expected = {} - - # create some certificate issuers( - for x in range(0, max_issuers): - issuer_name = 'pythonIssuer{}'.format(x + 1) - issuer_credentials = IssuerCredentials(account_id='keyvaultuser', password='password') - organization_details = OrganizationDetails( - admin_details=[AdministratorDetails(first_name='Jane', - last_name='Doe', - email_address='admin@contoso.com', - phone='4256666666')]) - error_count = 0 - issuer_bundle = None - while not issuer_bundle: - try: - issuer_bundle = self.client.set_certificate_issuer(vault_uri, issuer_name, 'test', - issuer_credentials, organization_details) - expected[issuer_bundle.id] = issuer_bundle.provider - except Exception as ex: - if hasattr(ex, 'message') and 'Throttled' in ex.message: - error_count += 1 - time.sleep(2.5 * error_count) - continue - else: - raise ex - - # list certificate issuers - result = list(self.client.get_certificate_issuers(vault_uri, self.list_test_size)) - self._validate_certificate_issuer_list(result, expected) - - @ResourceGroupPreparer() - @KeyVaultPreparer() - def test_async_request_cancellation_and_deletion(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - - cert_name = 'asyncCanceledDeletedCert' - cert_policy = CertificatePolicy(key_properties=KeyProperties(exportable=True, - key_type='RSA', - key_size=2048, - reuse_key=False), - secret_properties=SecretProperties(content_type='application/x-pkcs12'), - issuer_parameters=IssuerParameters(name='Self'), - x509_certificate_properties=X509CertificateProperties( - subject='CN=*.microsoft.com', - subject_alternative_names=SubjectAlternativeNames( - dns_names=['onedrive.microsoft.com', 'xbox.microsoft.com'] - ), - validity_in_months=24 - )) - - # create certificate - self.client.create_certificate(vault_uri, cert_name, cert_policy) - - # cancel certificate operation - cancel_operation = self.client.update_certificate_operation(vault_uri, cert_name, True) - self.assertTrue(hasattr(cancel_operation, 'cancellation_requested')) - self.assertTrue(cancel_operation.cancellation_requested) - self._validate_certificate_operation(cancel_operation, vault_uri, cert_name, cert_policy) - - retrieved_operation = self.client.get_certificate_operation(vault_uri, cert_name) - self.assertTrue(hasattr(retrieved_operation, 'cancellation_requested')) - self.assertTrue(retrieved_operation.cancellation_requested) - self._validate_certificate_operation(retrieved_operation, vault_uri, cert_name, cert_policy) - - # delete certificate operation - deleted_operation = self.client.delete_certificate_operation(vault_uri, cert_name) - self.assertIsNotNone(deleted_operation) - self._validate_certificate_operation(deleted_operation, vault_uri, cert_name, cert_policy) - - try: - self.client.get_certificate_operation(vault_uri, cert_name) - self.fail('Get should fail') - except Exception as ex: - if not hasattr(ex, 'message') or 'not found' not in ex.message.lower(): - raise ex - - # delete cancelled certificate operation - self.client.delete_certificate(vault_uri, cert_name) - - @ResourceGroupPreparer() - @KeyVaultPreparer() - def test_crud_contacts(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - - contact_list = [ - Contact(email_address='admin@contoso.com', - name='John Doe', - phone='1111111111'), - Contact(email_address='admin2@contoso.com', - name='John Doe2', - phone='2222222222') - ] - - # create certificate contacts - contacts = self.client.set_certificate_contacts(vault_uri, contact_list) - self._validate_certificate_contacts(contacts, vault_uri, contact_list) - - # get certificate contacts - contacts = self.client.get_certificate_contacts(vault_uri) - self._validate_certificate_contacts(contacts, vault_uri, contact_list) - - # delete certificate contacts - contacts = self.client.delete_certificate_contacts(vault_uri) - self._validate_certificate_contacts(contacts, vault_uri, contact_list) - - # get certificate contacts returns not found - try: - contacts = self.client.get_certificate_contacts(vault_uri) - self.fail('Get should fail') - except Exception as ex: - if not hasattr(ex, 'message') or 'not found' not in ex.message.lower(): - raise ex - - @ResourceGroupPreparer() - @KeyVaultPreparer() - def test_policy(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - - cert_name = 'policyCertificate' - - # get certificate policy - (cert_bundle, cert_policy) = self._import_common_certificate(vault_uri, cert_name) - retrieved_policy = self.client.get_certificate_policy(vault_uri, cert_name) - self.assertIsNotNone(retrieved_policy) - - # update certificate policy - cert_policy = CertificatePolicy(key_properties=KeyProperties(exportable=True, - key_type='RSA', - key_size=2048, - reuse_key=False), - secret_properties=SecretProperties(content_type='application/x-pkcs12'), - issuer_parameters=IssuerParameters(name='Self') - ) - - self.client.update_certificate_policy(vault_uri, cert_name, cert_policy) - updated_cert_policy = self.client.get_certificate_policy(vault_uri, cert_name) - self.assertIsNotNone(updated_cert_policy) - - @ResourceGroupPreparer() - @KeyVaultPreparer() - def test_manual_enrolled(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - - cert_name = 'unknownIssuerCert' - cert_policy = CertificatePolicy(key_properties=KeyProperties(exportable=True, - key_type='RSA', - key_size=2048, - reuse_key=False), - secret_properties=SecretProperties(content_type='application/x-pkcs12'), - issuer_parameters=IssuerParameters(name='Unknown'), - x509_certificate_properties=X509CertificateProperties( - subject='CN=*.microsoft.com', - subject_alternative_names=SubjectAlternativeNames( - dns_names=['onedrive.microsoft.com', 'xbox.microsoft.com'] - ), - validity_in_months=24 - )) - - # get pending certificate signing request - cert_operation = self.client.create_certificate(vault_uri, cert_name, cert_policy) - pending_version_csr = self.client.get_pending_certificate_signing_request(vault_uri, cert_name) - try: - self.assertEqual(cert_operation.csr, pending_version_csr) - except Exception as ex: - pass - finally: - self.client.delete_certificate(vault_uri, cert_name) - - @ResourceGroupPreparer() - @KeyVaultPreparer(enable_soft_delete=True) - def test_recover_and_purge(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - - certs = {} - cert_policy = CertificatePolicy(key_properties=KeyProperties(exportable=True, - key_type='RSA', - key_size=2048, - reuse_key=False), - secret_properties=SecretProperties(content_type='application/x-pkcs12'), - issuer_parameters=IssuerParameters(name='Self'), - x509_certificate_properties=X509CertificateProperties( - subject='CN=*.microsoft.com', - subject_alternative_names=SubjectAlternativeNames( - dns_names=['onedrive.microsoft.com', 'xbox.microsoft.com'] - ), - validity_in_months=24 - )) - # create certificates to recover - for i in range(0, self.list_test_size): - cert_name = self.get_resource_name('certrec{}'.format(str(i))) - certs[cert_name] = self._import_common_certificate(vault_uri, cert_name) - - # create certificates to purge - for i in range(0, self.list_test_size): - cert_name = self.get_resource_name('certprg{}'.format(str(i))) - certs[cert_name] = self._import_common_certificate(vault_uri, cert_name) - - # delete all certificates - for cert_name in certs.keys(): - delcert = self.client.delete_certificate(vault_uri, cert_name) - print(delcert) - - if not self.is_playback(): - time.sleep(30) - - # validate all our deleted certificates are returned by get_deleted_certificates - deleted = [KeyVaultId.parse_certificate_id(s.id).name for s in self.client.get_deleted_certificates(vault_uri)] - # self.assertTrue(all(s in deleted for s in certs.keys())) - - # recover select secrets - for certificate_name in [s for s in certs.keys() if s.startswith('certrec')]: - self.client.recover_deleted_certificate(vault_uri, certificate_name) - - # purge select secrets - for certificate_name in [s for s in certs.keys() if s.startswith('certprg')]: - self.client.purge_deleted_certificate(vault_uri, certificate_name) - - if not self.is_playback(): - time.sleep(30) - - # validate none of our deleted certificates are returned by get_deleted_certificates - deleted = [KeyVaultId.parse_secret_id(s.id).name for s in self.client.get_deleted_certificates(vault_uri)] - self.assertTrue(not any(s in deleted for s in certs.keys())) - - # validate the recovered certificates - expected = {k: v for k, v in certs.items() if k.startswith('certrec')} - actual = {k: self.client.get_certificate(vault_uri, k, KeyVaultId.version_none) for k in expected.keys()} - self.assertEqual(len(set(expected.keys()) & set(actual.keys())), len(expected)) diff --git a/sdk/keyvault/azure-keyvault/tests/test_custom.py b/sdk/keyvault/azure-keyvault/tests/test_custom.py deleted file mode 100644 index c5a1003f2f79..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/test_custom.py +++ /dev/null @@ -1,180 +0,0 @@ -import unittest -from azure.keyvault import KeyVaultId, HttpBearerChallengeCache, HttpBearerChallenge -try: - from unittest.mock import MagicMock -except ImportError: - from mock import MagicMock - -class KeyVaultCustomLayerTest(unittest.TestCase): - def _get_expected(self, collection, vault, name, version=None): - return { - 'vault': 'https://{}.vault.azure.net'.format(vault), - 'collection': collection, - 'name': name, - 'version': version or KeyVaultId.version_none - } - - def test_create_object_id(self): - # success scenarios - expected = self._get_expected('keys', 'myvault', 'mykey') - res = KeyVaultId.create_object_id('keys', 'https://myvault.vault.azure.net', ' mykey', None) - self.assertEqual(res.__dict__, expected) - - res = KeyVaultId.create_object_id('keys', 'https://myvault.vault.azure.net', ' mykey', ' ') - self.assertEqual(res.__dict__, expected) - - expected = self._get_expected('keys', 'myvault', 'mykey', 'abc123') - res = KeyVaultId.create_object_id(' keys ', 'https://myvault.vault.azure.net', ' mykey ', ' abc123 ') - self.assertEqual(res.__dict__, expected) - - # failure scenarios - with self.assertRaises(TypeError): - KeyVaultId.create_object_id('keys', 'https://myvault.vault.azure.net', ['stuff'], '') - with self.assertRaises(ValueError): - KeyVaultId.create_object_id('keys', 'https://myvault.vault.azure.net', ' ', '') - with self.assertRaises(ValueError): - KeyVaultId.create_object_id('keys', 'myvault.vault.azure.net', 'mykey', '') - - def test_parse_object_id(self): - # success scenarios - expected = self._get_expected('keys', 'myvault', 'mykey', 'abc123') - res = KeyVaultId.parse_object_id('keys', 'https://myvault.vault.azure.net/keys/mykey/abc123') - self.assertEqual(res.__dict__, expected) - - expected = self._get_expected('keys', 'myvault', 'mykey') - res = KeyVaultId.parse_object_id('keys', 'https://myvault.vault.azure.net/keys/mykey') - self.assertEqual(res.__dict__, expected) - - # failure scenarios - with self.assertRaises(ValueError): - KeyVaultId.parse_object_id('secret', 'https://myvault.vault.azure.net/keys/mykey/abc123') - with self.assertRaises(ValueError): - KeyVaultId.parse_object_id('keys', 'https://myvault.vault.azure.net/keys/mykey/abc123/extra') - with self.assertRaises(ValueError): - KeyVaultId.parse_object_id('keys', 'https://myvault.vault.azure.net') - - def test_create_key_id(self): - expected = self._get_expected('keys', 'myvault', 'mykey') - res = KeyVaultId.create_key_id('https://myvault.vault.azure.net', ' mykey', None) - self.assertEqual(res.__dict__, expected) - - expected = self._get_expected('keys', 'myvault', 'mykey', 'abc123') - res = KeyVaultId.create_key_id('https://myvault.vault.azure.net', ' mykey ', ' abc123 ') - self.assertEqual(res.__dict__, expected) - - def test_parse_key_id(self): - expected = self._get_expected('keys', 'myvault', 'mykey', 'abc123') - res = KeyVaultId.parse_key_id('https://myvault.vault.azure.net/keys/mykey/abc123') - self.assertEqual(res.__dict__, expected) - - expected = self._get_expected('keys', 'myvault', 'mykey') - res = KeyVaultId.parse_key_id('https://myvault.vault.azure.net/keys/mykey') - self.assertEqual(res.__dict__, expected) - - def test_create_secret_id(self): - expected = self._get_expected('secrets', 'myvault', 'mysecret') - res = KeyVaultId.create_secret_id('https://myvault.vault.azure.net', ' mysecret', None) - self.assertEqual(res.__dict__, expected) - - expected = self._get_expected('secrets', 'myvault', 'mysecret', 'abc123') - res = KeyVaultId.create_secret_id('https://myvault.vault.azure.net', ' mysecret ', ' abc123 ') - self.assertEqual(res.__dict__, expected) - - def test_parse_secret_id(self): - expected = self._get_expected('secrets', 'myvault', 'mysecret', 'abc123') - res = KeyVaultId.parse_secret_id('https://myvault.vault.azure.net/secrets/mysecret/abc123') - self.assertEqual(res.__dict__, expected) - - expected = self._get_expected('secrets', 'myvault', 'mysecret') - res = KeyVaultId.parse_secret_id('https://myvault.vault.azure.net/secrets/mysecret') - self.assertEqual(res.__dict__, expected) - - def test_create_certificate_id(self): - expected = self._get_expected('certificates', 'myvault', 'mycert') - res = KeyVaultId.create_certificate_id('https://myvault.vault.azure.net', ' mycert', None) - self.assertEqual(res.__dict__, expected) - - expected = self._get_expected('certificates', 'myvault', 'mycert', 'abc123') - res = KeyVaultId.create_certificate_id('https://myvault.vault.azure.net', 'mycert', ' abc123') - self.assertEqual(res.__dict__, expected) - - def test_parse_certificate_id(self): - expected = self._get_expected('certificates', 'myvault', 'mycert', 'abc123') - res = KeyVaultId.parse_certificate_id('https://myvault.vault.azure.net/certificates/mycert/abc123') - self.assertEqual(res.__dict__, expected) - - expected = self._get_expected('certificates', 'myvault', 'mycert') - res = KeyVaultId.parse_certificate_id('https://myvault.vault.azure.net/certificates/mycert') - self.assertEqual(res.__dict__, expected) - - def test_create_certificate_operation_id(self): - expected = self._get_expected('certificates', 'myvault', 'mycert', 'pending') - res = KeyVaultId.create_certificate_operation_id('https://myvault.vault.azure.net', ' mycert') - self.assertEqual(res.__dict__, expected) - - def test_parse_certificate_operation_id(self): - expected = self._get_expected('certificates', 'myvault', 'mycert', 'pending') - res = KeyVaultId.parse_certificate_operation_id('https://myvault.vault.azure.net/certificates/mycert/pending') - self.assertEqual(res.__dict__, expected) - - def test_create_certificate_issuer_id(self): - expected = self._get_expected('certificates', 'myvault', 'myissuer') - res = KeyVaultId.create_certificate_issuer_id('https://myvault.vault.azure.net', 'myissuer') - self.assertEqual(res.__dict__, expected) - - def test_parse_certificate_issuer_id(self): - expected = self._get_expected('certificates', 'myvault', 'myissuer') - res = KeyVaultId.parse_certificate_issuer_id('https://myvault.vault.azure.net/certificates/issuers/myissuer') - self.assertEqual(res.__dict__, expected) - - def test_bearer_challenge_cache(self): - test_challenges = [] - HttpBearerChallengeCache.clear() - for x in range(0, 3): - challenge = MagicMock() - challenge.source_authority = 'mytest{}.url.com'.format(x) - url = 'https://mytest{}.url.com'.format(x) - test_challenges.append({ - 'url': url, - 'challenge': challenge - }) - HttpBearerChallengeCache.set_challenge_for_url(url, challenge) - - self.assertEqual(len(HttpBearerChallengeCache._cache), 3) - - cached_challenge = HttpBearerChallengeCache.get_challenge_for_url(test_challenges[1]['url']) - self.assertTrue(cached_challenge.source_authority in test_challenges[1]['url']) - - # test remove - HttpBearerChallengeCache.remove_challenge_for_url(test_challenges[0]['url']) - self.assertIsNone(HttpBearerChallengeCache.get_challenge_for_url(test_challenges[0]['url'])) - - # test clear - self.assertEqual(len(HttpBearerChallengeCache._cache), 2) - HttpBearerChallengeCache.clear() - self.assertEqual(len(HttpBearerChallengeCache._cache), 0) - - with self.assertRaises(ValueError): - HttpBearerChallengeCache.set_challenge_for_url('https://diffurl.com', test_challenges[0]['challenge']) - - def test_bearer_challenge(self): - mock_bearer_challenge = ' Bearer authorization="https://login.windows.net/mock-id", resource="https://vault.azure.net"' - - self.assertTrue(HttpBearerChallenge.is_bearer_challenge(mock_bearer_challenge)) - self.assertFalse(HttpBearerChallenge.is_bearer_challenge('Some other string')) - - with self.assertRaises(ValueError): - HttpBearerChallenge('https://test.uri.com', 'Non bearer string') - - with self.assertRaises(ValueError): - HttpBearerChallenge('ftp://test.ftp.com', mock_bearer_challenge) - - challenge = HttpBearerChallenge('https://test.uri.com', mock_bearer_challenge) - self.assertEqual(challenge.get_authorization_server(), 'https://login.windows.net/mock-id') - self.assertEqual(challenge.get_resource(), 'https://vault.azure.net') - self.assertEqual(challenge.get_value('resource'), 'https://vault.azure.net') - self.assertEqual(challenge.get_scope(), '') - - mock_bearer_challenge = ' Bearer authorization_uri="https://login.windows.net/mock-id", resource="https://vault.azure.net"' - challenge = HttpBearerChallenge('https://test.uri.com', mock_bearer_challenge) - self.assertEqual(challenge.get_authorization_server(), 'https://login.windows.net/mock-id') diff --git a/sdk/keyvault/azure-keyvault/tests/test_internal.py b/sdk/keyvault/azure-keyvault/tests/test_internal.py deleted file mode 100644 index 878be9057744..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/test_internal.py +++ /dev/null @@ -1,282 +0,0 @@ -import json -import os -import random -import string -import time -import unittest -import uuid - -from azure.keyvault._internal import _bytes_to_int, _int_to_bytes, _int_to_bigendian_8_bytes, \ - _bstr_to_b64url, _b64_to_bstr, _b64_to_str, _str_to_b64url, _a128cbc_hs256_decrypt, _a128cbc_hs256_encrypt, \ - _RsaKey, _JwsHeader, _JweHeader - - -class EncodingTests(unittest.TestCase): - def test_int_byte_conversion(self): - # generate a random byte - b = os.urandom(1) - i = _bytes_to_int(b) - self._assert_bytes_significantly_equal(b, _int_to_bytes(i)) - - # generate a random number of random bytes - b = os.urandom(random.randint(1, 32)) - i = _bytes_to_int(b) - self._assert_bytes_significantly_equal(b, _int_to_bytes(i)) - - # generate random 4096 bits (4k key) - b = os.urandom(512) - i = _bytes_to_int(b) - self._assert_bytes_significantly_equal(b, _int_to_bytes(i)) - - # - b = b'\x00\x00\x00\x01' - i = _bytes_to_int(b) - self._assert_bytes_significantly_equal(b, _int_to_bytes(i)) - - b = b'' - with self.assertRaises(ValueError): - _bytes_to_int(b) - - b = None - with self.assertRaises(ValueError): - _bytes_to_int(b) - - def test_int_to_bigendian_8_bytes(self): - i = 0xFFFFFFFFFFFFFFFF - b = _int_to_bigendian_8_bytes(i) - self.assertEqual(b, b'\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF') - - i = 0 - b = _int_to_bigendian_8_bytes(i) - self.assertEqual(b, b'\x00\x00\x00\x00\x00\x00\x00\x00') - - i = random.randint(1, 0xFFFFFFFFFFFFFFFF) - b = _int_to_bigendian_8_bytes(i) - self.assertEqual(len(b), 8) - self.assertEqual(i, _bytes_to_int(b)) - - i = random.randint(0xFFFFFFFFFFFFFFFF01, 0xFFFFFFFFFFFFFFFFFF) - with self.assertRaises(ValueError): - _int_to_bigendian_8_bytes(i) - - def test_bstr_encode_decode(self): - b = b'' - b64 = _bstr_to_b64url(b) - self.assertEqual(b, _b64_to_bstr(b64)) - - b = os.urandom(1) - b64 = _bstr_to_b64url(b) - self.assertEqual(b, _b64_to_bstr(b64)) - - b = os.urandom(random.randint(2, 32)) - b64 = _bstr_to_b64url(b) - self.assertEqual(b, _b64_to_bstr(b64)) - - b = os.urandom(512) - b64 = _bstr_to_b64url(b) - self.assertEqual(b, _b64_to_bstr(b64)) - - def test_str_encode_decode(self): - s = '' - b64 = _str_to_b64url(s) - self.assertEqual(s, _b64_to_str(b64)) - - s = self._random_str(1) - b64 = _str_to_b64url(s) - self.assertEqual(s, _b64_to_str(b64)) - - s = self._random_str(random.randint(2, 32)) - b64 = _str_to_b64url(s) - self.assertEqual(s, _b64_to_str(b64)) - - s = self._random_str(4096) - b64 = _str_to_b64url(s) - self.assertEqual(s, _b64_to_str(b64)) - - def test_a128cbc_hs256_encrypt_decrypt(self): - key = os.urandom(32) - iv = os.urandom(16) - - plain_text = os.urandom(random.randint(1024, 4096)) - auth_data = os.urandom(random.randint(128, 512)) - - cipher_text, auth_tag = _a128cbc_hs256_encrypt(key, iv, plain_text, auth_data) - self.assertEqual(plain_text, _a128cbc_hs256_decrypt(key, iv, cipher_text, auth_data, auth_tag)) - - def test_a128cbc_hs256_encrypt_error(self): - key = os.urandom(32) - iv = os.urandom(16) - plain_text = os.urandom(random.randint(1024, 4096)) - auth_data = os.urandom(random.randint(128, 512)) - - with self.assertRaises(ValueError): - # key not specified - _a128cbc_hs256_encrypt(key=None, iv=iv, plaintext=plain_text, authdata=auth_data) - _a128cbc_hs256_encrypt(key=b'', iv=iv, plaintext=plain_text, authdata=auth_data) - # key insufficient len - _a128cbc_hs256_encrypt(key=os.urandom(31), iv=iv, plaintext=plain_text, authdata=auth_data) - - # iv not specified - _a128cbc_hs256_encrypt(key=key, iv=None, plaintext=plain_text, authdata=auth_data) - _a128cbc_hs256_encrypt(key=key, iv=b'', plaintext=plain_text, authdata=auth_data) - # iv incorrect len - _a128cbc_hs256_encrypt(key=key, iv=os.urandom(15), plaintext=plain_text, authdata=auth_data) - _a128cbc_hs256_encrypt(key=key, iv=os.urandom(17), plaintext=plain_text, authdata=auth_data) - - # plaintext not specified - _a128cbc_hs256_encrypt(key=key, iv=iv, plaintext=None, authdata=auth_data) - _a128cbc_hs256_encrypt(key=key, iv=iv, plaintext=b'', authdata=auth_data) - - # authdata not specified - _a128cbc_hs256_encrypt(key=key, iv=iv, plaintext=plain_text, authdata=None) - _a128cbc_hs256_encrypt(key=key, iv=iv, plaintext=plain_text, authdata=b'') - - def test_a128cbc_hs256_decrypt_error(self): - key = os.urandom(32) - iv = os.urandom(16) - cipher_text = os.urandom(random.randint(1024, 4096)) - auth_data = os.urandom(random.randint(128, 512)) - auth_tag = os.urandom(16) - - with self.assertRaises(ValueError): - # key not specified - _a128cbc_hs256_decrypt(key=None, iv=iv, ciphertext=cipher_text, authdata=auth_data, authtag=auth_tag) - _a128cbc_hs256_decrypt(key=b'', iv=iv, ciphertext=cipher_text, authdata=auth_data, authtag=auth_tag) - # key insufficient len - _a128cbc_hs256_decrypt(key=os.urandom(31), iv=iv, ciphertext=cipher_text, authdata=auth_data, authtag=auth_tag) - - # iv not specified - _a128cbc_hs256_decrypt(key=key, iv=None, ciphertext=cipher_text, authdata=auth_data, authtag=auth_tag) - _a128cbc_hs256_decrypt(key=key, iv=b'', ciphertext=cipher_text, authdata=auth_data, authtag=auth_tag) - # iv incorrect len - _a128cbc_hs256_decrypt(key=key, iv=os.urandom(15), ciphertext=cipher_text, authdata=auth_data, authtag=auth_tag) - _a128cbc_hs256_decrypt(key=key, iv=os.urandom(17), ciphertext=cipher_text, authdata=auth_data, authtag=auth_tag) - - # ciphertext not specified - _a128cbc_hs256_decrypt(key=key, iv=iv, ciphertext=None, authdata=auth_data, authtag=auth_tag) - _a128cbc_hs256_decrypt(key=key, iv=iv, ciphertext=b'', authdata=auth_data, authtag=auth_tag) - - # authdata not specified - _a128cbc_hs256_decrypt(key=key, iv=iv, ciphertext=cipher_text, authdata=None, authtag=auth_tag) - _a128cbc_hs256_decrypt(key=key, iv=iv, ciphertext=cipher_text, authdata=b'', authtag=auth_tag) - - # authtag not specified - _a128cbc_hs256_decrypt(key=key, iv=iv, ciphertext=cipher_text, authdata=auth_data, authtag=None) - _a128cbc_hs256_decrypt(key=key, iv=iv, ciphertext=cipher_text, authdata=auth_data, authtag=b'') - # authtag invalid len - _a128cbc_hs256_decrypt(key=key, iv=iv, ciphertext=cipher_text, authdata=auth_data, authtag=os.urandom(17)) - _a128cbc_hs256_decrypt(key=key, iv=iv, ciphertext=cipher_text, authdata=auth_data, authtag=os.urandom(15)) - - def test_private_rsakey_to_from_jwk(self): - # create a key1 export to jwk and import as key2 - key1 = _RsaKey.generate() - jwk = key1.to_jwk(include_private=True) - key2 = _RsaKey.from_jwk(jwk) - - # validate that key2 is a private key - self.assertTrue(key2.is_private_key()) - - # validate that key2 can encrypt and decrypt properly - unwrapped = os.urandom(32) - wrapped = key1.encrypt(unwrapped) - self.assertEqual(unwrapped, key2.decrypt(wrapped)) - wrapped = key2.encrypt(unwrapped) - self.assertEqual(unwrapped, key1.decrypt(wrapped)) - - # validate that key2 can sign and verify properly - data = os.urandom(random.randint(1024, 4096)) - signature = key1.sign(data) - key2.verify(signature, data) - signature = key2.sign(data) - key1.verify(signature, data) - - # validate that all numbers, both public and private are consistent - self.assertEqual(key1.kid, key2.kid) - self.assertEqual(key1.kty, key2.kty) - self.assertEqual(key1.key_ops, key2.key_ops) - self.assertEqual(key1.n, key2.n) - self.assertEqual(key1.e, key2.e) - self.assertEqual(key1.q, key2.q) - self.assertEqual(key1.p, key2.p) - self.assertEqual(key1.d, key2.d) - self.assertEqual(key1.dq, key2.dq) - self.assertEqual(key1.dp, key2.dp) - self.assertEqual(key1.qi, key2.qi) - - # validate that key2 serializes to the same jwk - self.assertEqual(json.dumps(jwk.serialize()), json.dumps(key2.to_jwk(include_private=True).serialize())) - - def test_public_rsakey_to_from_jwk(self): - # create key1 export public components and import as key2 - key1 = _RsaKey.generate() - jwk = key1.to_jwk() - key2 = _RsaKey.from_jwk(jwk) - - # validate that key2 is not a private key - self.assertFalse(key2.is_private_key()) - - # validate that key2 can encrypt properly - unwrapped = os.urandom(32) - wrapped = key2.encrypt(unwrapped) - self.assertEqual(unwrapped, key1.decrypt(wrapped)) - - # validate that key2 can verify properly - data = os.urandom(random.randint(1024, 4096)) - signature = key1.sign(data) - key2.verify(signature, data) - - # validate that all public numbers consistent - self.assertEqual(key1.kid, key2.kid) - self.assertEqual(key1.kty, key2.kty) - self.assertEqual(key1.n, key2.n) - self.assertEqual(key1.e, key2.e) - - # validate that all private numbers are not present - self.assertIsNone(key2.q) - self.assertIsNone(key2.p) - self.assertIsNone(key2.d) - self.assertIsNone(key2.dq) - self.assertIsNone(key2.dp) - self.assertIsNone(key2.qi) - - # validate that key2 serializes to the same public jwk - self.assertEqual(json.dumps(jwk.serialize()), json.dumps(key2.to_jwk().serialize())) - - def test_jws_header_to_from_compact_header(self): - head1 = _JwsHeader() - head1.alg = 'RS256' - head1.kid = str(uuid.uuid4()) - head1.at = self._random_str(random.randint(512, 1024)) - head1.ts = int(time.time()) - head1.typ = 'PoP' - - compact = head1.to_compact_header() - - head2 = _JwsHeader.from_compact_header(compact) - - # assert that all header values match - self.assertEqual(head1.alg, head2.alg) - self.assertEqual(head1.kid, head2.kid) - self.assertEqual(head1.at, head2.at) - self.assertEqual(head1.ts, head2.ts) - self.assertEqual(head1.typ, head2.typ) - - def test_jwe_header_to_from_compact_header(self): - head1 = _JweHeader() - head1.alg = 'RSA-OAEP' - head1.kid = str(uuid.uuid4()) - head1.enc = 'A128CBC-HS256' - - compact = head1.to_compact_header() - head2 = _JweHeader.from_compact_header(compact) - - # assert that all header values match - self.assertEqual(head1.alg, head2.alg) - self.assertEqual(head1.kid, head2.kid) - self.assertEqual(head1.enc, head2.enc) - - def _random_str(self, length): - return ''.join(random.choice(string.printable) for i in range(length)) - - def _assert_bytes_significantly_equal(self, b1, b2): - self.assertEqual(b1.lstrip(b'\x00'), b2.lstrip(b'\x00')) diff --git a/sdk/keyvault/azure-keyvault/tests/test_keys.py b/sdk/keyvault/azure-keyvault/tests/test_keys.py deleted file mode 100644 index 94d3ca97fafb..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/test_keys.py +++ /dev/null @@ -1,355 +0,0 @@ -import time -import codecs -import copy -import hashlib -from dateutil import parser as date_parse -from devtools_testutils import AzureMgmtTestCase, ResourceGroupPreparer -from keyvault_preparer import KeyVaultPreparer -from keyvault_testcase import KeyvaultTestCase -from azure.keyvault import KeyVaultId -from azure.keyvault.models import ( - JsonWebKey -) - -class KeyVaultKeyTest(KeyvaultTestCase): - def setUp(self): - super(KeyVaultKeyTest, self).setUp() - self.plain_text = b'5063e6aaa845f150200547944fd199679c98ed6f99da0a0b2dafeaf1f4684496fd532c1c229968cb9dee44957fcef7ccef59ceda0b362e56bcd78fd3faee5781c623c0bb22b35beabde0664fd30e0e824aba3dd1b0afffc4a3d955ede20cf6a854d52cfd' - - def tearDown(self): - super(KeyVaultKeyTest, self).tearDown() - - def _import_test_key(self, vault, key_id, import_to_hardware=False): - - def _to_bytes(hex): - if len(hex) % 2: - hex = '0{}'.format(hex) - return codecs.decode(hex, 'hex_codec') - - key = JsonWebKey( - kty='RSA', - key_ops=['encrypt', 'decrypt', 'sign', 'verify', 'wrapKey', 'unwrapKey'], - n=_to_bytes( - '00a0914d00234ac683b21b4c15d5bed887bdc959c2e57af54ae734e8f00720d775d275e455207e3784ceeb60a50a4655dd72a7a94d271e8ee8f7959a669ca6e775bf0e23badae991b4529d978528b4bd90521d32dd2656796ba82b6bbfc7668c8f5eeb5053747fd199319d29a8440d08f4412d527ff9311eda71825920b47b1c46b11ab3e91d7316407e89c7f340f7b85a34042ce51743b27d4718403d34c7b438af6181be05e4d11eb985d38253d7fe9bf53fc2f1b002d22d2d793fa79a504b6ab42d0492804d7071d727a06cf3a8893aa542b1503f832b296371b6707d4dc6e372f8fe67d8ded1c908fde45ce03bc086a71487fa75e43aa0e0679aa0d20efe35'), - e=_to_bytes('10001'), - d=_to_bytes( - '627c7d24668148fe2252c7fa649ea8a5a9ed44d75c766cda42b29b660e99404f0e862d4561a6c95af6a83d213e0a2244b03cd28576473215073785fb067f015da19084ade9f475e08b040a9a2c7ba00253bb8125508c9df140b75161d266be347a5e0f6900fe1d8bbf78ccc25eeb37e0c9d188d6e1fc15169ba4fe12276193d77790d2326928bd60d0d01d6ead8d6ac4861abadceec95358fd6689c50a1671a4a936d2376440a41445501da4e74bfb98f823bd19c45b94eb01d98fc0d2f284507f018ebd929b8180dbe6381fdd434bffb7800aaabdd973d55f9eaf9bb88a6ea7b28c2a80231e72de1ad244826d665582c2362761019de2e9f10cb8bcc2625649'), - p=_to_bytes( - '00d1deac8d68ddd2c1fd52d5999655b2cf1565260de5269e43fd2a85f39280e1708ffff0682166cb6106ee5ea5e9ffd9f98d0becc9ff2cda2febc97259215ad84b9051e563e14a051dce438bc6541a24ac4f014cf9732d36ebfc1e61a00d82cbe412090f7793cfbd4b7605be133dfc3991f7e1bed5786f337de5036fc1e2df4cf3'), - q=_to_bytes( - '00c3dc66b641a9b73cd833bc439cd34fc6574465ab5b7e8a92d32595a224d56d911e74624225b48c15a670282a51c40d1dad4bc2e9a3c8dab0c76f10052dfb053bc6ed42c65288a8e8bace7a8881184323f94d7db17ea6dfba651218f931a93b8f738f3d8fd3f6ba218d35b96861a0f584b0ab88ddcf446b9815f4d287d83a3237'), - dp=_to_bytes( - '00c9a159be7265cbbabc9afcc4967eb74fe58a4c4945431902d1142da599b760e03838f8cbd26b64324fea6bdc9338503f459793636e59b5361d1e6951e08ddb089e1b507be952a81fbeaf7e76890ea4f536e25505c3f648b1e88377dfc19b4c304e738dfca07211b792286a392a704d0f444c0a802539110b7f1f121c00cff0a9'), - dq=_to_bytes( - '00a0bd4c0a3d9f64436a082374b5caf2488bac1568696153a6a5e4cd85d186db31e2f58f024c617d29f37b4e6b54c97a1e25efec59c4d1fd3061ac33509ce8cae5c11f4cd2e83f41a8264f785e78dc0996076ee23dfdfc43d67c463afaa0180c4a718357f9a6f270d542479a0f213870e661fb950abca4a14ca290570ba7983347'), - qi=_to_bytes( - '009fe7ae42e92bc04fcd5780464bd21d0c8ac0c599f9af020fde6ab0a7e7d1d39902f5d8fb6c614184c4c1b103fb46e94cd10a6c8a40f9991a1f28269f326435b6c50276fda6493353c650a833f724d80c7d522ba16c79f0eb61f672736b68fb8be3243d10943c4ab7028d09e76cfb5892222e38bc4d35585bf35a88cd68c73b07') - ) - imported_key = self.client.import_key(key_id.vault, key_id.name, key, import_to_hardware) - self._validate_rsa_key_bundle(imported_key, vault.properties.vault_uri, key_id.name, - 'RSA-HSM' if import_to_hardware else 'RSA', key.key_ops) - return imported_key - - def _validate_rsa_key_bundle(self, bundle, vault, key_name, kty, key_ops=None): - prefix = '{}keys/{}/'.format(vault, key_name) - key_ops = key_ops or ['encrypt', 'decrypt', 'sign', 'verify', 'wrapKey', 'unwrapKey'] - key = bundle.key - kid = key.kid - self.assertTrue(kid.index(prefix) == 0, - "String should start with '{}', but value is '{}'".format(prefix, kid)) - self.assertEqual(key.kty, kty, "kty should by '{}', but is '{}'".format(key, key.kty)) - self.assertTrue(key.n and key.e, 'Bad RSA public material.') - self.assertEqual(key_ops, key.key_ops, - "keyOps should be '{}', but is '{}'".format(key_ops, key.key_ops)) - self.assertTrue(bundle.attributes.created and bundle.attributes.updated, - 'Missing required date attributes.') - - def _validate_key_list(self, keys, expected): - for key in keys: - if key.kid in expected.keys(): - del expected[key.kid] - else: - self.assertTrue(False) - - @ResourceGroupPreparer() - @KeyVaultPreparer() - def test_key_crud_operations(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - key_name = self.get_resource_name('key') - - # create key - created_bundle = self.client.create_key(vault_uri, key_name, 'RSA') - self._validate_rsa_key_bundle(created_bundle, vault_uri, key_name, 'RSA') - key_id = KeyVaultId.parse_key_id(created_bundle.key.kid) - - # get key without version - self.assertEqual(created_bundle, self.client.get_key(key_id.vault, key_id.name, '')) - - # get key with version - self.assertEqual(created_bundle, self.client.get_key(key_id.vault, key_id.name, key_id.version)) - - def _update_key(key_uri): - updating_bundle = copy.deepcopy(created_bundle) - updating_bundle.attributes.expires = date_parse.parse('2050-02-02T08:00:00.000Z') - updating_bundle.key.key_ops = ['encrypt', 'decrypt'] - updating_bundle.tags = {'foo': 'updated tag'} - kid = KeyVaultId.parse_key_id(key_uri) - key_bundle = self.client.update_key( - kid.vault, kid.name, kid.version, updating_bundle.key.key_ops, updating_bundle.attributes, - updating_bundle.tags) - self.assertEqual(updating_bundle.tags, key_bundle.tags) - self.assertEqual(updating_bundle.key.kid, key_bundle.key.kid) - return key_bundle - - # update key without version - created_bundle = _update_key(key_id.base_id) - - # update key with version - created_bundle = _update_key(key_id.id) - - # delete key - self.client.delete_key(key_id.vault, key_id.name) - - # get key returns not found - try: - self.client.get_key(key_id.vault, key_id.name, '') - self.fail('Get should fail') - except Exception as ex: - if not hasattr(ex, 'message') or 'not found' not in ex.message.lower(): - raise ex - - @ResourceGroupPreparer() - @KeyVaultPreparer() - def test_key_list(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - max_keys = self.list_test_size - expected = {} - - # create many keys - for x in range(0, max_keys): - key_name = self.get_resource_name('key{}-'.format(x)) - key_bundle = None - error_count = 0 - while not key_bundle: - try: - key_bundle = self.client.create_key(vault_uri, key_name, 'RSA') - kid = KeyVaultId.parse_key_id(key_bundle.key.kid).base_id.strip('/') - expected[kid] = key_bundle.attributes - except Exception as ex: - if hasattr(ex, 'message') and 'Throttled' in ex.message: - error_count += 1 - time.sleep(2.5 * error_count) - continue - else: - raise ex - - # list keys - result = list(self.client.get_keys(vault_uri, self.list_test_size)) - self._validate_key_list(result, expected) - - @ResourceGroupPreparer() - @KeyVaultPreparer() - def test_key_list_versions(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - key_name = self.get_resource_name('key') - - max_keys = self.list_test_size - expected = {} - - # create many key versions - for x in range(0, max_keys): - key_bundle = None - error_count = 0 - while not key_bundle: - try: - key_bundle = self.client.create_key(vault_uri, key_name, 'RSA') - kid = KeyVaultId.parse_key_id(key_bundle.key.kid).id.strip('/') - expected[kid] = key_bundle.attributes - except Exception as ex: - if hasattr(ex, 'message') and 'Throttled' in ex.message: - error_count += 1 - time.sleep(2.5 * error_count) - continue - else: - raise ex - - # list key versions - self._validate_key_list(list(self.client.get_key_versions(vault_uri, key_name)), expected) - - @ResourceGroupPreparer() - @KeyVaultPreparer() - def test_key_backup_and_restore(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - key_name = self.get_resource_name('keybak') - - # create key - created_bundle = self.client.create_key(vault_uri, key_name, 'RSA') - key_id = KeyVaultId.parse_key_id(created_bundle.key.kid) - - # backup key - key_backup = self.client.backup_key(key_id.vault, key_id.name).value - - # delete key - self.client.delete_key(key_id.vault, key_id.name) - - # restore key - self.assertEqual(created_bundle, self.client.restore_key(vault_uri, key_backup)) - - @ResourceGroupPreparer() - @KeyVaultPreparer(enable_soft_delete=True) - def test_key_recover_and_purge(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - - keys = {} - - # create keys to recover - for i in range(0, self.list_test_size): - key_name = self.get_resource_name('keyrec{}'.format(str(i))) - keys[key_name] = self.client.create_key(vault_uri, key_name, 'RSA') - - # create keys to purge - for i in range(0, self.list_test_size): - key_name = self.get_resource_name('keyprg{}'.format(str(i))) - keys[key_name] = self.client.create_key(vault_uri, key_name, 'RSA') - - # delete all keys - for key_name in keys.keys(): - self.client.delete_key(vault_uri, key_name) - - if not self.is_playback(): - time.sleep(20) - - # validate all our deleted keys are returned by get_deleted_keys - deleted = [KeyVaultId.parse_key_id(s.kid).name for s in self.client.get_deleted_keys(vault_uri)] - self.assertTrue(all(s in deleted for s in keys.keys())) - - # recover select keys - for key_name in [s for s in keys.keys() if s.startswith('keyrec')]: - self.client.recover_deleted_key(vault_uri, key_name) - - # purge select keys - for key_name in [s for s in keys.keys() if s.startswith('keyprg')]: - self.client.purge_deleted_key(vault_uri, key_name) - - if not self.is_playback(): - time.sleep(20) - - # validate none of our deleted keys are returned by get_deleted_keys - deleted = [KeyVaultId.parse_key_id(s.kid).name for s in self.client.get_deleted_keys(vault_uri)] - self.assertTrue(not any(s in deleted for s in keys.keys())) - - # validate the recovered keys - expected = {k: v for k, v in keys.items() if k.startswith('key-') and k.endswith('-recover')} - actual = {k: self.client.get_key(vault_uri, k) for k in expected.keys()} - self.assertEqual(len(set(expected.keys()) & set(actual.keys())), len(expected)) - - @ResourceGroupPreparer() - @KeyVaultPreparer() - def test_key_import(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - key_name = self.get_resource_name('keyimp') - - key_id = KeyVaultId.create_key_id(vault_uri, key_name) - - # import to software - self._import_test_key(vault, key_id, False) - - # import to hardware - self._import_test_key(vault, key_id, True) - - @ResourceGroupPreparer() - @KeyVaultPreparer() - def test_key_encrypt_and_decrypt(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - key_name = self.get_resource_name('keycrypt') - - key_id = KeyVaultId.create_key_id(vault_uri, key_name) - plain_text = self.plain_text - - # import key - imported_key = self._import_test_key(vault, key_id) - key_id = KeyVaultId.parse_key_id(imported_key.key.kid) - - # encrypt without version - result = self.client.encrypt(key_id.vault, key_id.name, '', 'RSA-OAEP', plain_text) - cipher_text = result.result - - # decrypt without version - result = self.client.decrypt(key_id.vault, key_id.name, '', 'RSA-OAEP', cipher_text) - self.assertEqual(plain_text, result.result) - - # encrypt with version - result = self.client.encrypt(key_id.vault, key_id.name, key_id.version, 'RSA-OAEP', plain_text) - cipher_text = result.result - - # decrypt with version - result = self.client.decrypt(key_id.vault, key_id.name, key_id.version, 'RSA-OAEP', cipher_text) - self.assertEqual(plain_text, result.result) - - @ResourceGroupPreparer() - @KeyVaultPreparer() - def test_key_wrap_and_unwrap(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - key_name = self.get_resource_name('keywrap') - - key_id = KeyVaultId.create_key_id(vault_uri, key_name) - plain_text = self.plain_text - - # import key - imported_key = self._import_test_key(vault, key_id) - key_id = KeyVaultId.parse_key_id(imported_key.key.kid) - - # wrap without version - result = self.client.wrap_key(key_id.vault, key_id.name, '', 'RSA-OAEP', plain_text) - cipher_text = result.result - - # unwrap without version - result = self.client.unwrap_key(key_id.vault, key_id.name, '', 'RSA-OAEP', cipher_text) - self.assertEqual(plain_text, result.result) - - # wrap with version - result = self.client.wrap_key(key_id.vault, key_id.name, key_id.version, 'RSA-OAEP', plain_text) - cipher_text = result.result - - # unwrap with version - result = self.client.unwrap_key(key_id.vault, key_id.name, key_id.version, 'RSA-OAEP', cipher_text) - self.assertEqual(plain_text, result.result) - - @ResourceGroupPreparer() - @KeyVaultPreparer() - def test_key_sign_and_verify(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - key_name = self.get_resource_name('keysign') - - key_id = KeyVaultId.create_key_id(vault_uri, key_name) - plain_text = self.plain_text - md = hashlib.sha256() - md.update(plain_text); - digest = md.digest(); - - # import key - imported_key = self._import_test_key(vault, key_id) - key_id = KeyVaultId.parse_key_id(imported_key.key.kid) - - # sign without version - signature = self.client.sign(key_id.vault, key_id.name, '', 'RS256', digest).result - - # verify without version - result = self.client.verify(key_id.vault, key_id.name, '', 'RS256', digest, signature) - self.assertTrue(result.value) - - # sign with version - signature = self.client.sign(key_id.vault, key_id.name, '', 'RS256', digest).result - - # verify with version - result = self.client.verify(key_id.vault, key_id.name, key_id.version, 'RS256', digest, signature) - self.assertTrue(result.value) diff --git a/sdk/keyvault/azure-keyvault/tests/test_secrets.py b/sdk/keyvault/azure-keyvault/tests/test_secrets.py deleted file mode 100644 index e69ef25fa62e..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/test_secrets.py +++ /dev/null @@ -1,216 +0,0 @@ -from devtools_testutils import AzureMgmtTestCase, ResourceGroupPreparer -from keyvault_preparer import KeyVaultPreparer -from keyvault_testcase import KeyvaultTestCase -from azure.keyvault import KeyVaultId, KeyVaultClient, KeyVaultAuthentication, AccessToken - -import copy -from dateutil import parser as date_parse -import time -import unittest - - -class KeyVaultSecretTest(KeyvaultTestCase): - - - def _validate_secret_bundle(self, bundle, vault, secret_name, secret_value): - prefix = '{}secrets/{}/'.format(vault, secret_name) - id = bundle.id - self.assertTrue(id.index(prefix) == 0, - "String should start with '{}', but value is '{}'".format(prefix, id)) - self.assertEqual(bundle.value, secret_value, - "value should be '{}', but is '{}'".format(secret_value, bundle.value)) - self.assertTrue(bundle.attributes.created and bundle.attributes.updated, - 'Missing required date attributes.') - - def _validate_secret_list(self, secrets, expected): - for secret in secrets: - if secret.id in expected.keys(): - attributes = expected[secret.id] - self.assertEqual(attributes, secret.attributes) - del expected[secret.id] - - - @ResourceGroupPreparer() - @KeyVaultPreparer() - def test_secret_crud_operations(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - secret_name = 'crud-secret' - secret_value = self.get_resource_name('crud_secret_value') - - # create secret - secret_bundle = self.client.set_secret(vault_uri, secret_name, secret_value) - self._validate_secret_bundle(secret_bundle, vault_uri, secret_name, secret_value) - created_bundle = secret_bundle - secret_id = KeyVaultId.parse_secret_id(created_bundle.id) - - # get secret without version - self.assertEqual(created_bundle, self.client.get_secret(secret_id.vault, secret_id.name, '')) - - # get secret with version - self.assertEqual(created_bundle, self.client.get_secret(secret_id.vault, secret_id.name, secret_id.version)) - - def _update_secret(secret_uri): - updating_bundle = copy.deepcopy(created_bundle) - updating_bundle.content_type = 'text/plain' - updating_bundle.attributes.expires = date_parse.parse('2050-02-02T08:00:00.000Z') - updating_bundle.tags = {'foo': 'updated tag'} - sid = KeyVaultId.parse_secret_id(secret_uri) - secret_bundle = self.client.update_secret( - sid.vault, sid.name, sid.version, updating_bundle.content_type, updating_bundle.attributes, - updating_bundle.tags) - self.assertEqual(updating_bundle.tags, secret_bundle.tags) - self.assertEqual(updating_bundle.id, secret_bundle.id) - self.assertNotEqual(str(updating_bundle.attributes.updated), str(secret_bundle.attributes.updated)) - return secret_bundle - - # update secret without version - secret_bundle = _update_secret(secret_id.base_id) - - # update secret with version - secret_bundle = _update_secret(secret_id.id) - - # delete secret - self.client.delete_secret(secret_id.vault, secret_id.name) - - # get secret returns not found - try: - self.client.get_secret(secret_id.vault, secret_id.name, '') - except Exception as ex: - if not hasattr(ex, 'message') or 'not found' not in ex.message.lower(): - raise ex - - @ResourceGroupPreparer() - @KeyVaultPreparer() - def test_secret_list(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - - max_secrets = self.list_test_size - expected = {} - - # create many secrets - for x in range(0, max_secrets): - secret_name = 'sec{}'.format(x) - secret_value = self.get_resource_name('secVal{}'.format(x)) - secret_bundle = None - error_count = 0 - while not secret_bundle: - try: - secret_bundle = self.client.set_secret(vault_uri, secret_name, secret_value) - sid = KeyVaultId.parse_secret_id(secret_bundle.id).base_id.strip('/') - expected[sid] = secret_bundle.attributes - except Exception as ex: - if hasattr(ex, 'message') and 'Throttled' in ex.message: - error_count += 1 - time.sleep(2.5 * error_count) - continue - else: - raise ex - - # list secrets - result = list(self.client.get_secrets(vault_uri, self.list_test_size)) - self._validate_secret_list(result, expected) - - @ResourceGroupPreparer() - @KeyVaultPreparer() - def test_list_versions(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - secret_name = self.get_resource_name('sec') - secret_value = self.get_resource_name('secVal') - - max_secrets = self.list_test_size - expected = {} - - # create many secret versions - for x in range(0, max_secrets): - secret_bundle = None - error_count = 0 - while not secret_bundle: - try: - secret_bundle = self.client.set_secret(vault_uri, secret_name, secret_value) - sid = KeyVaultId.parse_secret_id(secret_bundle.id).id.strip('/') - expected[sid] = secret_bundle.attributes - except Exception as ex: - if hasattr(ex, 'message') and 'Throttled' in ex.message: - error_count += 1 - time.sleep(2.5 * error_count) - continue - else: - raise ex - - # list secret versions - self._validate_secret_list(list(self.client.get_secret_versions(vault_uri, secret_name)), expected) - - @ResourceGroupPreparer() - @KeyVaultPreparer() - def test_backup_restore(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - secret_name = self.get_resource_name('secbak') - secret_value = self.get_resource_name('secVal') - - # create secret - created_bundle = self.client.set_secret(vault_uri, secret_name, secret_value) - secret_id = KeyVaultId.parse_secret_id(created_bundle.id) - - # backup secret - secret_backup = self.client.backup_secret(secret_id.vault, secret_id.name).value - - # delete secret - self.client.delete_secret(secret_id.vault, secret_id.name) - - # restore secret - self.assertEqual(created_bundle.attributes, self.client.restore_secret(vault_uri, secret_backup).attributes) - - @ResourceGroupPreparer() - @KeyVaultPreparer(enable_soft_delete=True) - def test_recover_purge(self, vault, **kwargs): - self.assertIsNotNone(vault) - vault_uri = vault.properties.vault_uri - - secrets = {} - - # create secrets to recover - for i in range(0, self.list_test_size): - secret_name = self.get_resource_name('secrec{}'.format(str(i))) - secret_value = self.get_resource_name('secval{}'.format((str(i)))) - secrets[secret_name] = self.client.set_secret(vault_uri, secret_name, secret_value) - - # create secrets to purge - for i in range(0, self.list_test_size): - secret_name = self.get_resource_name('secprg{}'.format(str(i))) - secret_value = self.get_resource_name('secval{}'.format((str(i)))) - secrets[secret_name] = self.client.set_secret(vault_uri, secret_name, secret_value) - - # delete all secrets - for secret_name in secrets.keys(): - self.client.delete_secret(vault_uri, secret_name) - - if not self.is_playback(): - time.sleep(20) - - # validate all our deleted secrets are returned by get_deleted_secrets - deleted = [KeyVaultId.parse_secret_id(s.id).name for s in self.client.get_deleted_secrets(vault_uri)] - self.assertTrue(all(s in deleted for s in secrets.keys())) - - # recover select secrets - for secret_name in [s for s in secrets.keys() if s.startswith('secrec')]: - self.client.recover_deleted_secret(vault_uri, secret_name) - - # purge select secrets - for secret_name in [s for s in secrets.keys() if s.startswith('secprg')]: - self.client.purge_deleted_secret(vault_uri, secret_name) - - if not self.is_playback(): - time.sleep(20) - - # validate none of our deleted secrets are returned by get_deleted_secrets - deleted = [KeyVaultId.parse_secret_id(s.id).name for s in self.client.get_deleted_secrets(vault_uri)] - self.assertTrue(not any(s in deleted for s in secrets.keys())) - - # validate the recovered secrets - expected = {k: v for k, v in secrets.items() if k.startswith('secrec')} - actual = {k: self.client.get_secret(vault_uri, k, KeyVaultId.version_none) for k in expected.keys()} - self.assertEqual(len(set(expected.keys()) & set(actual.keys())), len(expected)) \ No newline at end of file diff --git a/sdk/keyvault/azure-keyvault/tests/test_storage.py b/sdk/keyvault/azure-keyvault/tests/test_storage.py deleted file mode 100644 index 00c8a5fc3bd9..000000000000 --- a/sdk/keyvault/azure-keyvault/tests/test_storage.py +++ /dev/null @@ -1,192 +0,0 @@ -import uuid -from devtools_testutils import AzureMgmtTestCase, ResourceGroupPreparer, StorageAccountPreparer -from keyvault_preparer import KeyVaultPreparer -from keyvault_testcase import KeyvaultTestCase -from azure.mgmt.authorization import AuthorizationManagementClient -from azure.mgmt.authorization.models import RoleAssignmentCreateParameters -from azure.keyvault.models import StorageAccountAttributes - - -class KeyVaultSecretTest(KeyvaultTestCase): - - @ResourceGroupPreparer() - @StorageAccountPreparer(name_prefix='kvsa1') - @KeyVaultPreparer() - def test_e2e(self, vault, storage_account, resource_group, **kwargs): - - if not self.is_live: - sa_id = '{}/providers/Microsoft.Storage/storageAccounts/{}'.format(resource_group.id, storage_account.name) - else: - sa_id = storage_account.id - - # find the role definition for "Storage Account Key Operator Service Role" - filter_str = 'roleName eq \'Storage Account Key Operator Service Role\'' - authorization_mgmt_client = self.create_mgmt_client(AuthorizationManagementClient) - role_id = list(authorization_mgmt_client.role_definitions.list(scope='/', filter=filter_str))[0].id - - # create a role assignment granting the key vault service principal this role - role_params = RoleAssignmentCreateParameters(role_definition_id=role_id, - # the Azure Key Vault service id - principal_id='93c27d83-f79b-4cb2-8dd4-4aa716542e74') - - authorization_mgmt_client.role_assignments.create(scope=sa_id, - role_assignment_name='d7607bd3-a467-4a14-ab5f-f4b016ffbfff', - parameters=role_params) - - # add the storage account to the vault using the users KeyVaultClient - attributes = StorageAccountAttributes(enabled=True) - self.client.set_storage_account(vault_base_url=vault.properties.vault_uri, - storage_account_name=storage_account.name, - resource_id=sa_id, - active_key_name='key1', - auto_regenerate_key=True, - regeneration_period='P30D', - storage_account_attributes=attributes) - - # update active key for the storage account - self.client.update_storage_account(vault_base_url=vault.properties.vault_uri, - storage_account_name=storage_account.name, - active_key_name='key2') - - self.client.regenerate_storage_account_key(vault_base_url=vault.properties.vault_uri, - storage_account_name=storage_account.name, - key_name='key1') - - self.create_account_sas_definition(storage_account.name, vault.properties.vault_uri) - - self.create_blob_sas_defintion(storage_account.name, vault.properties.vault_uri) - - self.get_sas_definitions(storage_account.name, vault.properties.vault_uri) - - self.client.delete_storage_account(vault_base_url=vault.properties.vault_uri, - storage_account_name=storage_account.name) - - - def create_account_sas_definition(self, storage_account_name, vault_url): - """ - Creates an account sas definition, to manage storage account and its entities. - """ - from azure.storage.common import SharedAccessSignature, CloudStorageAccount - from azure.keyvault.models import SasTokenType, SasDefinitionAttributes - from azure.keyvault import SecretId - - # To create an account sas definition in the vault we must first create the template. The - # template_uri for an account sas definition is the intended account sas token signed with an arbitrary key. - # Use the SharedAccessSignature class from azure.storage.common to create a account sas token - sas = SharedAccessSignature(account_name=storage_account_name, - # don't sign the template with the storage account key use key 00000000 - account_key='00000000') - account_sas_template = sas.generate_account(services='bfqt', # all services blob, file, queue and table - resource_types='sco', # all resources service, template, object - permission='acdlpruw', - # all permissions add, create, list, process, read, update, write - expiry='2020-01-01') # expiry will be ignored and validity period will determine token expiry - - # use the created template to create a sas definition in the vault - attributes = SasDefinitionAttributes(enabled=True) - sas_def = self.client.set_sas_definition(vault_base_url=vault_url, - storage_account_name=storage_account_name, - sas_definition_name='acctall', - template_uri=account_sas_template, - sas_type=SasTokenType.account, - validity_period='PT2H', - sas_definition_attributes=attributes) - - # When the sas definition is created a corresponding managed secret is also created in the vault, the. This - # secret is used to provision sas tokens according to the sas definition. Users retrieve the sas token - # via the get_secret method. - - # get the secret id from the returned SasDefinitionBundle - sas_secret_id = SecretId(uri=sas_def.secret_id) - # call get_secret and the value of the returned SecretBundle will be a newly issued sas token - acct_sas_token = self.client.get_secret(vault_base_url=sas_secret_id.vault, - secret_name=sas_secret_id.name, - secret_version=sas_secret_id.version).value - - # create the cloud storage account object - cloud_storage_account = CloudStorageAccount(account_name=storage_account_name, - sas_token=acct_sas_token) - - # create a blob with the account sas token - blob_service = cloud_storage_account.create_block_blob_service() - blob_service.create_container('blobcontainer') - blob_service.create_blob_from_text(container_name='blobcontainer', - blob_name='blob1', - text=u'test blob1 data') - - def create_blob_sas_defintion(self, storage_account_name, vault_url): - """ - Creates a service SAS definition with access to a blob container. - """ - - from azure.storage.blob import BlockBlobService, ContainerPermissions - from azure.keyvault.models import SasTokenType, SasDefinitionAttributes - from azure.keyvault import SecretId - - # create the blob sas definition template - # the sas template uri for service sas definitions contains the storage entity url with the template token - # this sample demonstrates constructing the template uri for a blob container, but a similar approach can - # be used for all other storage service, i.e. File, Queue, Table - - # create a template sas token for the container - service = BlockBlobService(account_name=storage_account_name, - # don't sign the template with the storage account key use key 00000000 - account_key='00000000') - permissions = ContainerPermissions(read=True, write=True, delete=True, list=True) - temp_token = service.generate_container_shared_access_signature(container_name='blobcontainer', - permission=permissions, - expiry='2020-01-01') - - # use the BlockBlobService to construct the template uri for the container sas definition - blob_sas_template_uri = service.make_container_url(container_name='blobcontainer', - protocol='https', - sas_token=temp_token) - # create the sas definition in the vault - attributes = SasDefinitionAttributes(enabled=True) - blob_sas_def = self.client.set_sas_definition(vault_base_url=vault_url, - storage_account_name=storage_account_name, - sas_definition_name='blobcontall', - template_uri=blob_sas_template_uri, - sas_type=SasTokenType.service, - validity_period='PT2H', - sas_definition_attributes=attributes) - - # use the sas definition to provision a sas token and use it to create a BlockBlobClient - # which can interact with blobs in the container - - # get the secret_id of the container sas definition and get the token from the vault as a secret - sas_secret_id = SecretId(uri=blob_sas_def.secret_id) - blob_sas_token = self.client.get_secret(vault_base_url=sas_secret_id.vault, - secret_name=sas_secret_id.name, - secret_version=sas_secret_id.version).value - service = BlockBlobService(account_name=storage_account_name, - sas_token=blob_sas_token) - service.create_blob_from_text(container_name='blobcontainer', - blob_name='blob2', - text=u'test blob2 data') - blobs = list(service.list_blobs(container_name='blobcontainer')) - - for blob in blobs: - service.delete_blob(container_name='blobcontainer', - blob_name=blob.name) - - def get_sas_definitions(self, storage_account_name, vault_url): - """ - List the sas definitions for the storage account, and get each. - """ - from azure.keyvault import StorageSasDefinitionId - - # list the sas definitions for the storage account - print('list and get sas definitions for the managed storage account') - sas_defs = list(self.client.get_sas_definitions(vault_base_url=vault_url, - storage_account_name=storage_account_name, - maxresults=5)) - - # for each sas definition parse the id and get the SasDefinitionBundle - for s in sas_defs: - sas_def_id = StorageSasDefinitionId(uri=s.id) - sas_def = self.client.get_sas_definition(vault_base_url=sas_def_id.vault, - storage_account_name=sas_def_id.account_name, - sas_definition_name=sas_def_id.sas_definition) - print(sas_def_id.sas_definition, sas_def.template_uri) -