enterprise_ai.encryption
Source : sdks/python/src/enterprise_ai/encryption/__init__.py. Retour à l'index de la référence du SDK Python.
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).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
name | str | oui | Nom unique : minuscules, chiffres, ., _ ou -, commençant par une lettre ou un chiffre, 63 caractères au plus. | |
purpose | str | None | None | non | Libellé libre de l'usage de la clé, data par défaut. |
**extra | Any | non | Champs 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).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
ciphertext | str | oui | Chiffré renvoyé par le chiffrement, eaienc1:<key id>:<version>:.... | |
aad | str | None | None | non | Données associées fournies au chiffrement (vide par défaut). |
as_base64 | bool | None | None | non | Si vrai, renvoie les données dans plaintext_base64 (faux par défaut). |
**extra | Any | non | Champs 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).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
plaintext | bytes | str | oui | Texte UTF-8 à chiffrer. | |
key | str | oui | Clé à utiliser, par identifiant (UUID) ou par nom. | |
aad | str | None | None | non | Données associées liées au chiffré ; la même valeur est exigée pour déchiffrer (vide par défaut). |
**extra | Any | non | Champs 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.
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
result | dict[str, Any] | oui | Ré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).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
key_id | str | oui | Identifiant (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).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
data | bytes | str | oui | Octets, ou texte d'abord encodé en UTF-8. |
Retour : str. Texte en base64.