Aller au contenu principal

enterprise_ai.encryption

Source : sdks/python/src/enterprise_ai/encryption/__init__.py. Retour à l'index de la référence du SDK Python.

remarque

Cette page est générée par tools/docs/gen_sdk_reference.py depuis les sources du SDK et les dossiers de textes OpenAPI. Ne la modifiez pas à la main : changez la source et régénérez.

Classe EncryptionClient​

Vie privée et protection des données. Services de protection des données du tenant : classification, DLP (prévention des fuites de données), tokenisation et chiffrement par enveloppe.

Resource

EncryptionClient.create_key​

create_key(name: str, purpose: str | None = None, **extra: Any) -> Any

Créer une clé de chiffrement. Crée une clé nommée avec sa première version ; la clé de données est générée et enveloppée par OpenBao Transit s'il est configuré, localement sinon. Le nom doit être en minuscules, chiffres, ., _ ou -, 63 caractères au plus (400 invalid_request) ; un nom déjà utilisé répond 409 conflict. Exige tenant_admin ou security_officer. Écrit l'événement d'audit encryption.key.create.

Route : /v1/encryption/keys (POST).

NomTypeDéfautRequisDescription
namestrouiNom unique : minuscules, chiffres, ., _ ou -, commençant par une lettre ou un chiffre, 63 caractères au plus.
purposestr | NoneNonenonLibellé libre de l'usage de la clé, data par défaut.
**extraAnynonChamps supplémentaires fusionnés dans le corps de la requête.

Retour : Any. Réponse JSON décodée de l'opération « Créer une clé de chiffrement ».

Erreurs levées : les erreurs typées du transport (Erreurs).

EncryptionClient.decrypt​

decrypt(ciphertext: str, aad: str | None = None, as_base64: bool | None = None, **extra: Any) -> Any

Déchiffrer un chiffré. Déchiffre un chiffré eaienc1 du tenant avec la version de clé qu'il désigne, en vérifiant la même aad qu'au chiffrement. Renvoie plaintext, ou plaintext_base64 avec as_base64 ou quand les données ne sont pas du texte UTF-8, et key_version. Les anciennes versions déchiffrent toujours après une rotation. Ouvert à tout membre du tenant. Écrit l'événement d'audit encryption.decrypt.

Route : /v1/encryption/decrypt (POST).

NomTypeDéfautRequisDescription
ciphertextstrouiChiffré renvoyé par le chiffrement, eaienc1:<key id>:<version>:....
aadstr | NoneNonenonDonnées associées fournies au chiffrement (vide par défaut).
as_base64bool | NoneNonenonSi vrai, renvoie les données dans plaintext_base64 (faux par défaut).
**extraAnynonChamps supplémentaires fusionnés dans le corps de la requête.

Retour : Any. Réponse JSON décodée de l'opération « Déchiffrer un chiffré ».

Erreurs levées : les erreurs typées du transport (Erreurs).

EncryptionClient.encrypt​

encrypt(plaintext: bytes | str, key: str, aad: str | None = None, **extra: Any) -> Any

Chiffrer des données avec une clé du tenant. Chiffre plaintext (texte UTF-8) ou plaintext_base64 (octets) avec la version courante de la clé, lié à aad. Renvoie ciphertext (eaienc1:...), key_id et key_version. L'une des deux entrées est obligatoire, et le base64 doit être valide (400 invalid_request) ; une clé inconnue répond 404 key_not_found. Ouvert à tout membre du tenant. Écrit l'événement d'audit encryption.encrypt (taille uniquement).

Route : /v1/encryption/encrypt (POST).

NomTypeDéfautRequisDescription
plaintextbytes | strouiTexte UTF-8 à chiffrer.
keystrouiClé à utiliser, par identifiant (UUID) ou par nom.
aadstr | NoneNonenonDonnées associées liées au chiffré ; la même valeur est exigée pour déchiffrer (vide par défaut).
**extraAnynonChamps supplémentaires fusionnés dans le corps de la requête.

Retour : Any. Réponse JSON décodée de l'opération « Chiffrer des données avec une clé du tenant ».

Erreurs levées : les erreurs typées du transport (Erreurs).

EncryptionClient.list_keys​

list_keys() -> Any

Lister les clés de chiffrement. Liste les clés de chiffrement du tenant triées par nom : identifiant, nom, moteur (openbao-transit ou local), usage, version courante et dates. Jamais le matériel de clé. Ouvert à tout membre du tenant.

Route : /v1/encryption/keys (GET).

Cet élément ne prend aucun paramètre.

Retour : Any. Réponse JSON décodée de l'opération « Lister les clés de chiffrement ».

Erreurs levées : les erreurs typées du transport (Erreurs).

EncryptionClient.plaintext_bytes​

plaintext_bytes(result: dict[str, Any]) -> bytes

Décode le champ plaintext_base64 (ou plaintext) d'une réponse de déchiffrement.

NomTypeDéfautRequisDescription
resultdict[str, Any]ouiRéponse de decrypt.

Retour : bytes. Les octets déchiffrés.

EncryptionClient.rotate_key​

rotate_key(key_id: str) -> Any

Faire tourner une clé de chiffrement. Ajoute une nouvelle version à la clé : les nouveaux chiffrements l'utilisent, les chiffrés plus anciens se déchiffrent toujours avec leur propre version. Exige tenant_admin ou security_officer. Répond 404 key_not_found. Écrit l'événement d'audit encryption.key.rotate.

Route : /v1/encryption/keys/{key_id}/rotate (POST).

NomTypeDéfautRequisDescription
key_idstrouiIdentifiant (UUID) ou nom de la clé.

Retour : Any. Réponse JSON décodée de l'opération « Faire tourner une clé de chiffrement ».

Erreurs levées : les erreurs typées du transport (Erreurs).

Fonctions​

b64​

b64(data: bytes | str) -> str

Encode en base64 des octets (ou un texte UTF-8).

NomTypeDéfautRequisDescription
databytes | strouiOctets, ou texte d'abord encodé en UTF-8.

Retour : str. Texte en base64.