KeyClient Clase

Una interfaz de alto nivel para administrar las claves de un almacén.

Herencia
azure.keyvault.keys._shared.client_base.KeyVaultClientBase
KeyClient

Constructor

KeyClient(vault_url: str, credential: TokenCredential, **kwargs)

Parámetros

vault_url
str
Requerido

Dirección URL del almacén al que accederá el cliente. Esto también se denomina "Nombre DNS" del almacén. Debe validar que esta dirección URL hace referencia a un recurso de Key Vault o HSM administrado válido. Para obtener información detallada, vea https://aka.ms/azsdk/blog/vault-uri.

credential
TokenCredential
Requerido

Objeto que puede proporcionar un token de acceso para el almacén, como una credencial de . identity

api_version
ApiVersion

Versión de la API de servicio que se va a usar. El valor predeterminado es el más reciente.

verify_challenge_resource
bool

Indica si el recurso de desafío de autenticación coincide con el dominio de Key Vault o HSM administrado. El valor predeterminado es True.

Métodos

backup_key

Realice una copia de seguridad de una clave en un formulario protegido que solo pueda usar Azure Key Vault.

Requiere el permiso de copia de seguridad y claves.

Esto está pensado para permitir la copia de una clave de un almacén a otro. Ambos almacenes deben ser propiedad de la misma suscripción de Azure. Además, la copia de seguridad o restauración no se puede realizar a través de límites geopolíticas. Por ejemplo, una copia de seguridad de un almacén de una región de EE. UU. no se puede restaurar en un almacén de una región de la UE.

begin_delete_key

Elimine todas las versiones de una clave y su material criptográfico.

Requiere el permiso de eliminación o claves. Cuando este método devuelve Key Vault ha comenzado a eliminar la clave. La eliminación puede tardar varios segundos en un almacén con la eliminación temporal habilitada. Por lo tanto, este método devuelve un sondeo que le permite esperar a que se complete la eliminación.

begin_recover_deleted_key

Recupere una clave eliminada en su versión más reciente. Solo es posible en un almacén con la eliminación temporal habilitada.

Requiere el permiso de claves y recuperación.

Cuando este método devuelve Key Vault ha comenzado a recuperar la clave. La recuperación puede tardar varios segundos. Por lo tanto, este método devuelve un sondeo que le permite esperar a que se complete la recuperación. Esperar solo es necesario cuando se desea usar la clave recuperada en otra operación inmediatamente.

close

Cierre los sockets abiertos por el cliente.

Llamar a este método no es necesario cuando se usa el cliente como administrador de contexto.

create_ec_key

Cree una nueva clave de curva elíptica o, si name ya está en uso, cree una nueva versión de la clave.

requiere el permiso keys/create.

create_key

Cree una clave o, si name ya está en uso, cree una nueva versión de la clave.

Requiere claves o permiso de creación.

create_oct_key

Cree una nueva clave de secuencia de octetos (simétrica) o, si name está en uso, cree una nueva versión de la clave.

requiere el permiso keys/create.

create_rsa_key

Cree una nueva clave RSA o, si name ya está en uso, cree una nueva versión de la clave.

requiere el permiso keys/create.

get_cryptography_client

Obtiene un CryptographyClient para la clave especificada.

get_deleted_key

Obtener una clave eliminada. Solo es posible en un almacén con la eliminación temporal habilitada.

Requiere el permiso keys/get.

get_key

Obtenga los atributos de una clave y, si es una clave asimétrica, su material público.

Requiere el permiso keys/get.

get_key_rotation_policy

Obtiene la directiva de rotación de una clave de Key Vault.

get_random_bytes

Obtenga el número solicitado de bytes aleatorios de un HSM administrado.

import_key

Importe una clave creada externamente.

Requiere el permiso de importación o claves. Si name ya está en uso, la clave se importará como una nueva versión.

list_deleted_keys

Enumere todas las claves eliminadas, incluida la parte pública de cada una. Solo es posible en un almacén con la eliminación temporal habilitada.

Requiere el permiso keys/list.

list_properties_of_key_versions

Enumere los identificadores y las propiedades de las versiones de una clave.

Requiere el permiso keys/list.

list_properties_of_keys

Enumera los identificadores y las propiedades de todas las claves del almacén.

Requiere el permiso keys/list.

purge_deleted_key

Elimina permanentemente una clave eliminada. Solo es posible en un almacén con la eliminación temporal habilitada.

Realiza una eliminación irreversible de la clave especificada, sin posibilidad de recuperación. La operación no está disponible si recovery_level no especifica "Purgable". Este método solo es necesario para purgar una clave antes de su scheduled_purge_date.

Requiere el permiso de purga o claves.

release_key

Libera una clave.

La operación de clave de versión es aplicable a todos los tipos de clave. La clave de destino debe marcarse como exportable. Esta operación requiere el permiso keys/release.

restore_key_backup

Restaure una copia de seguridad de claves en el almacén.

Requiere el permiso de claves y restauración.

Esto importa todas las versiones de la clave, con su nombre, atributos y directivas de control de acceso. Si el nombre de la clave ya está en uso, se producirá un error al restaurarla. Además, el almacén de destino debe ser propiedad de la misma suscripción de Microsoft Azure que el almacén de origen.

rotate_key

Gire la clave en función de la directiva de claves mediante la generación de una nueva versión de la clave.

Esta operación requiere el permiso keys/rotate.

send_request

Ejecuta una solicitud de red mediante la canalización existente del cliente.

La dirección URL de la solicitud puede ser relativa a la dirección URL del almacén. La versión de la API de servicio usada para la solicitud es la misma que la del cliente, a menos que se especifique lo contrario. Este método no genera si la respuesta es un error; para generar una excepción, llame a raise_for_status() en el objeto de respuesta devuelto. Para obtener más información sobre cómo enviar solicitudes personalizadas con este método, vea https://aka.ms/azsdk/dpcodegen/python/send_request.

update_key_properties

Cambiar las propiedades de una clave (no su material criptográfico).

Requiere claves o permisos de actualización.

update_key_rotation_policy

Novedades la directiva de rotación de una clave de Key Vault.

Esta operación requiere el permiso de claves y actualización.

backup_key

Realice una copia de seguridad de una clave en un formulario protegido que solo pueda usar Azure Key Vault.

Requiere el permiso de copia de seguridad y claves.

Esto está pensado para permitir la copia de una clave de un almacén a otro. Ambos almacenes deben ser propiedad de la misma suscripción de Azure. Además, la copia de seguridad o restauración no se puede realizar a través de límites geopolíticas. Por ejemplo, una copia de seguridad de un almacén de una región de EE. UU. no se puede restaurar en un almacén de una región de la UE.

backup_key(name: str, **kwargs) -> bytes

Parámetros

name
str
Requerido

Nombre de la clave de la que se va a realizar una copia de seguridad

Tipo de valor devuelto

Excepciones

si la clave no existe,

para otros errores

begin_delete_key

Elimine todas las versiones de una clave y su material criptográfico.

Requiere el permiso de eliminación o claves. Cuando este método devuelve Key Vault ha comenzado a eliminar la clave. La eliminación puede tardar varios segundos en un almacén con la eliminación temporal habilitada. Por lo tanto, este método devuelve un sondeo que le permite esperar a que se complete la eliminación.

begin_delete_key(name: str, **kwargs) -> LROPoller[DeletedKey]

Parámetros

name
str
Requerido

Nombre de la clave que se va a eliminar.

Devoluciones

Un sondeo para la operación de eliminación de clave. El método de resultado del sondeo devuelve sin DeletedKey esperar a que se complete la eliminación. Si el almacén tiene habilitada la eliminación temporal y desea eliminar permanentemente la clave con purge_deleted_key, llame primero al método wait del sondeo. Se bloqueará hasta que se complete la eliminación. El método wait requiere el permiso keys/get.

Tipo de valor devuelto

Excepciones

si la clave no existe,

para otros errores

begin_recover_deleted_key

Recupere una clave eliminada en su versión más reciente. Solo es posible en un almacén con la eliminación temporal habilitada.

Requiere el permiso de claves y recuperación.

Cuando este método devuelve Key Vault ha comenzado a recuperar la clave. La recuperación puede tardar varios segundos. Por lo tanto, este método devuelve un sondeo que le permite esperar a que se complete la recuperación. Esperar solo es necesario cuando se desea usar la clave recuperada en otra operación inmediatamente.

begin_recover_deleted_key(name: str, **kwargs) -> LROPoller[KeyVaultKey]

Parámetros

name
str
Requerido

Nombre de la clave eliminada que se va a recuperar.

Devoluciones

Un sondeo para la operación de recuperación. El método de resultado del sondeo devuelve el objeto recuperado KeyVaultKey sin esperar a que se complete la recuperación. Si desea usar la clave recuperada inmediatamente, llame al método wait del sondeo, que se bloquea hasta que la clave esté lista para usarse. El método wait requiere el permiso keys/get.

Tipo de valor devuelto

Excepciones

close

Cierre los sockets abiertos por el cliente.

Llamar a este método no es necesario cuando se usa el cliente como administrador de contexto.

close() -> None

Excepciones

si la clave no existe,

para otros errores

create_ec_key

Cree una nueva clave de curva elíptica o, si name ya está en uso, cree una nueva versión de la clave.

requiere el permiso keys/create.

create_ec_key(name: str, **kwargs) -> KeyVaultKey

Parámetros

name
str
Requerido

Nombre de la nueva clave.

curve
KeyCurveName o str o None

Nombre de la curva elíptica. El valor predeterminado es la curva elíptica NIST P-256.

key_operations
list[KeyOperation o str] o None

Operaciones de clave permitidas

hardware_protected
bool o None

Si la clave se debe crear en un módulo de seguridad de hardware. Tiene como valor predeterminado False.

enabled
bool o None

Indica si la clave está habilitada para su uso.

tags
dict[str, str] o None

Metadatos específicos de la aplicación en forma de pares clave-valor.

not_before
datetime o None

No antes de la fecha de la clave en UTC

expires_on
datetime o None

Fecha de expiración de la clave en UTC

exportable
bool o None

Si se puede exportar la clave privada.

release_policy
KeyReleasePolicy o None

Reglas de directiva con las que se puede exportar la clave.

Devoluciones

La clave creada

Tipo de valor devuelto

Excepciones

create_key

Cree una clave o, si name ya está en uso, cree una nueva versión de la clave.

Requiere claves o permiso de creación.

create_key(name: str, key_type: str | KeyType, **kwargs) -> KeyVaultKey

Parámetros

name
str
Requerido

Nombre de la nueva clave.

key_type
KeyType o str
Requerido

Tipo de clave que se va a crear

size
int o None

Tamaño de clave en bits. Solo se aplica a las claves RSA y simétricas. Considere la posibilidad de usar create_rsa_key o create_oct_key en su lugar.

curve
KeyCurveName o str o None

Nombre de la curva elíptica. Solo se aplica a las claves de curva elíptica. El valor predeterminado es la curva elíptica NIST P-256. Para crear una clave de curva elíptica, considere la posibilidad de usar create_ec_key en su lugar.

public_exponent
int o None

Exponente público rsa que se va a usar. Solo se aplica a las claves RSA creadas en un HSM administrado.

key_operations
list[KeyOperation o str] o None

Operaciones de clave permitidas

enabled
bool o None

Indica si la clave está habilitada para su uso.

tags
dict[str, str] o None

Metadatos específicos de la aplicación en forma de pares clave-valor.

not_before
datetime o None

No antes de la fecha de la clave en UTC

expires_on
datetime o None

Fecha de expiración de la clave en UTC

exportable
bool o None

Si se puede exportar la clave privada.

release_policy
KeyReleasePolicy o None

Reglas de directiva con las que se puede exportar la clave.

Devoluciones

La clave creada

Tipo de valor devuelto

Excepciones

create_oct_key

Cree una nueva clave de secuencia de octetos (simétrica) o, si name está en uso, cree una nueva versión de la clave.

requiere el permiso keys/create.

create_oct_key(name: str, **kwargs) -> KeyVaultKey

Parámetros

name
str
Requerido

Nombre de la nueva clave.

size
int o None

Tamaño de clave en bits, por ejemplo 128, 192 o 256.

key_operations
list[KeyOperation o str] o None

Operaciones de clave permitidas.

hardware_protected
bool o None

Si la clave se debe crear en un módulo de seguridad de hardware. Tiene como valor predeterminado False.

enabled
bool o None

Indica si la clave está habilitada para su uso.

tags
dict[str, str] o None

Metadatos específicos de la aplicación en forma de pares clave-valor.

not_before
datetime o None

No antes de la fecha de la clave en UTC

expires_on
datetime o None

Fecha de expiración de la clave en UTC

exportable
bool o None

Indica si se puede exportar la clave.

release_policy
KeyReleasePolicy o None

Reglas de directiva con las que se puede exportar la clave.

Devoluciones

La clave creada

Tipo de valor devuelto

Excepciones

create_rsa_key

Cree una nueva clave RSA o, si name ya está en uso, cree una nueva versión de la clave.

requiere el permiso keys/create.

create_rsa_key(name: str, **kwargs) -> KeyVaultKey

Parámetros

name
str
Requerido

Nombre de la nueva clave.

size
int o None

Tamaño de clave en bits, por ejemplo 2048, 3072 o 4096.

public_exponent
int o None

Exponente público rsa que se va a usar. Solo se aplica a las claves RSA creadas en un HSM administrado.

hardware_protected
bool o None

Si la clave se debe crear en un módulo de seguridad de hardware. Tiene como valor predeterminado False.

key_operations
list[KeyOperation o str] o None

Operaciones de clave permitidas

enabled
bool o None

Indica si la clave está habilitada para su uso.

tags
dict[str, str] o None

Metadatos específicos de la aplicación en forma de pares clave-valor.

not_before
datetime o None

No antes de la fecha de la clave en UTC

expires_on
datetime o None

Fecha de expiración de la clave en UTC

exportable
bool o None

Si se puede exportar la clave privada.

release_policy
KeyReleasePolicy o None

Reglas de directiva con las que se puede exportar la clave.

Devoluciones

La clave creada

Tipo de valor devuelto

Excepciones

get_cryptography_client

Obtiene un CryptographyClient para la clave especificada.

get_cryptography_client(key_name: str, **kwargs) -> CryptographyClient

Parámetros

key_name
str
Requerido

Nombre de la clave utilizada para realizar operaciones criptográficas.

key_version
str

Versión opcional de la clave usada para realizar operaciones criptográficas.

Devoluciones

que CryptographyClient usa las mismas opciones, credenciales y cliente HTTP que este KeyClient.

Tipo de valor devuelto

Excepciones

si la clave no existe,

para otros errores

get_deleted_key

Obtener una clave eliminada. Solo es posible en un almacén con la eliminación temporal habilitada.

Requiere el permiso keys/get.

get_deleted_key(name: str, **kwargs) -> DeletedKey

Parámetros

name
str
Requerido

Nombre de la clave

Devoluciones

Clave eliminada

Tipo de valor devuelto

Excepciones

si la clave no existe,

para otros errores

get_key

Obtenga los atributos de una clave y, si es una clave asimétrica, su material público.

Requiere el permiso keys/get.

get_key(name: str, version: str | None = None, **kwargs) -> KeyVaultKey

Parámetros

name
str
Requerido

Nombre de la clave que se va a obtener.

version
str o None
Requerido

(opcional) Una versión específica de la clave que se va a obtener. Si no se especifica, obtiene la versión más reciente de la clave.

Tipo de valor devuelto

Excepciones

si la clave no existe,

para otros errores

get_key_rotation_policy

Obtiene la directiva de rotación de una clave de Key Vault.

get_key_rotation_policy(key_name: str, **kwargs) -> KeyRotationPolicy

Parámetros

key_name
str
Requerido

El nombre de la clave.

Devoluciones

Directiva de rotación de claves.

Tipo de valor devuelto

Excepciones

*azure.core.exceptions.HttpResponseError*

get_random_bytes

Obtenga el número solicitado de bytes aleatorios de un HSM administrado.

get_random_bytes(count: int, **kwargs) -> bytes

Parámetros

count
int
Requerido

Número solicitado de bytes aleatorios.

Devoluciones

Bytes aleatorios.

Tipo de valor devuelto

Excepciones

si se solicita menos de un byte aleatorio,

para otros errores

import_key

Importe una clave creada externamente.

Requiere el permiso de importación o claves. Si name ya está en uso, la clave se importará como una nueva versión.

import_key(name: str, key: JsonWebKey, **kwargs) -> KeyVaultKey

Parámetros

name
str
Requerido

Nombre de la clave importada

key
JsonWebKey
Requerido

Clave web JSON que se va a importar

hardware_protected
bool o None

Si la clave debe estar respaldada por un módulo de seguridad de hardware

enabled
bool o None

Indica si la clave está habilitada para su uso.

tags
dict[str, str] o None

Metadatos específicos de la aplicación en forma de pares clave-valor.

not_before
datetime o None

No antes de la fecha de la clave en UTC

expires_on
datetime o None

Fecha de expiración de la clave en UTC

exportable
bool o None

Si se puede exportar la clave privada.

release_policy
KeyReleasePolicy o None

Reglas de directiva con las que se puede exportar la clave.

Devoluciones

Clave importada

Tipo de valor devuelto

Excepciones

list_deleted_keys

Enumere todas las claves eliminadas, incluida la parte pública de cada una. Solo es posible en un almacén con la eliminación temporal habilitada.

Requiere el permiso keys/list.

list_deleted_keys(**kwargs) -> ItemPaged[DeletedKey]

Devoluciones

Iterador de claves eliminadas

Tipo de valor devuelto

Excepciones

si la clave no existe,

para otros errores

list_properties_of_key_versions

Enumere los identificadores y las propiedades de las versiones de una clave.

Requiere el permiso keys/list.

list_properties_of_key_versions(name: str, **kwargs) -> ItemPaged[KeyProperties]

Parámetros

name
str
Requerido

Nombre de la clave

Devoluciones

Iterador de claves sin su material criptográfico

Tipo de valor devuelto

Excepciones

si la clave no existe,

para otros errores

list_properties_of_keys

Enumera los identificadores y las propiedades de todas las claves del almacén.

Requiere el permiso keys/list.

list_properties_of_keys(**kwargs) -> ItemPaged[KeyProperties]

Devoluciones

Iterador de claves sin su material criptográfico o información de versión

Tipo de valor devuelto

Excepciones

si la clave no existe,

para otros errores

purge_deleted_key

Elimina permanentemente una clave eliminada. Solo es posible en un almacén con la eliminación temporal habilitada.

Realiza una eliminación irreversible de la clave especificada, sin posibilidad de recuperación. La operación no está disponible si recovery_level no especifica "Purgable". Este método solo es necesario para purgar una clave antes de su scheduled_purge_date.

Requiere el permiso de purga o claves.

purge_deleted_key(name: str, **kwargs) -> None

Parámetros

name
str
Requerido

Nombre de la clave eliminada que se va a purgar.

Devoluciones

Ninguno

Excepciones

Ejemplos


   # if the vault has soft-delete enabled, purge permanently deletes a deleted key
   # (with soft-delete disabled, begin_delete_key is permanent)
   key_client.purge_deleted_key("key-name")

release_key

Libera una clave.

La operación de clave de versión es aplicable a todos los tipos de clave. La clave de destino debe marcarse como exportable. Esta operación requiere el permiso keys/release.

release_key(name: str, target_attestation_token: str, **kwargs) -> ReleaseKeyResult

Parámetros

name
str
Requerido

Nombre de la clave que se va a obtener.

target_attestation_token
str
Requerido

Aserción de atestación para el destino de la versión de clave.

version
str o None

Una versión específica de la clave que se va a liberar. Si no se especifica, se publica la versión más reciente.

algorithm
str o KeyExportEncryptionAlgorithm o None

Algoritmo de cifrado que se va a usar para proteger el material de clave liberado.

nonce
str o None

Nonce proporcionado por el cliente para la actualización.

Devoluciones

Resultado de la versión de la clave.

Tipo de valor devuelto

Excepciones

restore_key_backup

Restaure una copia de seguridad de claves en el almacén.

Requiere el permiso de claves y restauración.

Esto importa todas las versiones de la clave, con su nombre, atributos y directivas de control de acceso. Si el nombre de la clave ya está en uso, se producirá un error al restaurarla. Además, el almacén de destino debe ser propiedad de la misma suscripción de Microsoft Azure que el almacén de origen.

restore_key_backup(backup: bytes, **kwargs) -> KeyVaultKey

Parámetros

backup
bytes
Requerido

Una copia de seguridad de clave tal como la devuelve backup_key

Devoluciones

Clave restaurada

Tipo de valor devuelto

Excepciones

si el nombre de la clave de copia de seguridad ya está en uso,

para otros errores

rotate_key

Gire la clave en función de la directiva de claves mediante la generación de una nueva versión de la clave.

Esta operación requiere el permiso keys/rotate.

rotate_key(name: str, **kwargs) -> KeyVaultKey

Parámetros

name
str
Requerido

Nombre de la clave que se va a girar.

Devoluciones

Nueva versión de la clave rotada.

Tipo de valor devuelto

Excepciones

send_request

Ejecuta una solicitud de red mediante la canalización existente del cliente.

La dirección URL de la solicitud puede ser relativa a la dirección URL del almacén. La versión de la API de servicio usada para la solicitud es la misma que la del cliente, a menos que se especifique lo contrario. Este método no genera si la respuesta es un error; para generar una excepción, llame a raise_for_status() en el objeto de respuesta devuelto. Para obtener más información sobre cómo enviar solicitudes personalizadas con este método, vea https://aka.ms/azsdk/dpcodegen/python/send_request.

send_request(request: HttpRequest, *, stream: bool = False, **kwargs) -> HttpResponse

Parámetros

request
HttpRequest
Requerido

La solicitud de red que desea realizar.

stream
bool

Indica si se transmitirá la carga de respuesta. El valor predeterminado es False.

Devoluciones

Respuesta de la llamada de red. No realiza el control de errores en la respuesta.

Tipo de valor devuelto

Excepciones

si la clave no existe,

para otros errores

update_key_properties

Cambiar las propiedades de una clave (no su material criptográfico).

Requiere claves o permisos de actualización.

update_key_properties(name: str, version: str | None = None, **kwargs) -> KeyVaultKey

Parámetros

name
str
Requerido

Nombre de la clave que se va a actualizar

version
str o None
Requerido

(opcional) Versión de la clave que se va a actualizar. Si no se especifica, se actualiza la versión más reciente.

key_operations
list[KeyOperation o str] o None

Operaciones de clave permitidas

enabled
bool o None

Indica si la clave está habilitada para su uso.

tags
dict[str, str] o None

Metadatos específicos de la aplicación en forma de pares clave-valor.

not_before
datetime o None

No antes de la fecha de la clave en UTC

expires_on
datetime o None

Fecha de expiración de la clave en UTC

release_policy
KeyReleasePolicy o None

Reglas de directiva con las que se puede exportar la clave.

Devoluciones

Clave actualizada

Tipo de valor devuelto

Excepciones

si la clave no existe,

para otros errores

update_key_rotation_policy

Novedades la directiva de rotación de una clave de Key Vault.

Esta operación requiere el permiso de claves y actualización.

update_key_rotation_policy(key_name: str, policy: KeyRotationPolicy, **kwargs) -> KeyRotationPolicy

Parámetros

key_name
str
Requerido

Nombre de la clave en el almacén especificado.

policy
KeyRotationPolicy
Requerido

Nueva directiva de rotación para la clave.

lifetime_actions
list[KeyRotationLifetimeAction]

Acciones que realizará Key Vault durante la vigencia de una clave. Esto invalidará las acciones de duración de la clase proporcionada policy.

expires_in
str

Hora de expiración de la directiva que se aplicará en las nuevas versiones de clave, definidas como una duración ISO 8601. Por ejemplo: 90 días es "P90D", 3 meses es "P3M" y 48 horas es "PT48H". Consulte Wikipedia para obtener más información sobre las duraciones ISO 8601. Esto invalidará la hora de expiración del objeto proporcionado policy.

Devoluciones

Directiva de rotación actualizada.

Tipo de valor devuelto

Excepciones

Atributos

vault_url