CryptographyClient Klasa

Wykonuje operacje kryptograficzne przy użyciu kluczy usługi Azure Key Vault.

Ten klient będzie wykonywać operacje lokalnie, gdy jest on intializowany przy użyciu niezbędnego materiału kluczowego lub jest w stanie pobrać ten materiał z Key Vault. Gdy wymagany materiał klucza jest niedostępny, operacje kryptograficzne są wykonywane przez usługę Key Vault.

Dziedziczenie
azure.keyvault.keys._shared.client_base.KeyVaultClientBase
CryptographyClient

Konstruktor

CryptographyClient(key: KeyVaultKey | str, credential: TokenCredential, **kwargs)

Parametry

key
KeyVaultKey
Wymagane

KeyVaultKey Wystąpienie zwracane przez get_keyelement lub ciąg. Jeśli ciąg, wartość musi być identyfikatorem klucza usługi Azure Key Vault. Zalecane jest uwzględnienie wersji.

credential
TokenCredential
Wymagane

Obiekt, który może zapewnić token dostępu dla magazynu, taki jak poświadczenie z identity

api_version
ApiVersion

Wersja interfejsu API usługi do użycia. Wartość domyślna to najnowsze.

verify_challenge_resource
bool

Czy zweryfikować zasób wyzwania uwierzytelniania jest zgodny z domeną Key Vault lub zarządzanym modułem HSM. Wartość domyślna to True.

Metody

close

Zamknij gniazda otwarte przez klienta.

Wywoływanie tej metody jest niepotrzebne w przypadku korzystania z klienta jako menedżera kontekstu.

decrypt

Odszyfruj pojedynczy blok zaszyfrowanych danych przy użyciu klucza klienta.

Wymaga uprawnień kluczy/odszyfrowywania. Ta metoda odszyfrowuje tylko jeden blok danych, którego rozmiar zależy od klucza i algorytmu szyfrowania.

encrypt

Szyfruj bajty przy użyciu klucza klienta.

Wymaga uprawnień do kluczy/szyfrowania. Ta metoda szyfruje tylko jeden blok danych, którego rozmiar zależy od klucza i algorytmu szyfrowania.

from_jwk

Tworzy klienta, który może wykonywać tylko operacje kryptograficzne lokalnie.

send_request

Uruchamia żądanie sieciowe przy użyciu istniejącego potoku klienta.

Adres URL żądania może być względny względem adresu URL magazynu. Wersja interfejsu API usługi używana dla żądania jest taka sama jak wersja klienta, chyba że określono inaczej. Ta metoda nie zgłasza się, jeśli odpowiedź jest błędem; aby zgłosić wyjątek, wywołaj metodę raise_for_status() dla zwróconego obiektu odpowiedzi. Aby uzyskać więcej informacji na temat wysyłania żądań niestandardowych za pomocą tej metody, zobacz https://aka.ms/azsdk/dpcodegen/python/send_request.

sign

Utwórz podpis na podstawie skrótu przy użyciu klucza klienta.

Wymaga uprawnień do podpisywania/kluczy.

unwrap_key

Odpakuj klucz wcześniej opakowany kluczem klienta.

Wymaga uprawnień klucze/unwrapKey.

verify

Zweryfikuj podpis przy użyciu klucza klienta.

Wymaga uprawnień klucze/weryfikacja.

wrap_key

Zawijaj klucz przy użyciu klucza klienta.

Wymaga uprawnień klucze/zawijanieklucz.

close

Zamknij gniazda otwarte przez klienta.

Wywoływanie tej metody jest niepotrzebne w przypadku korzystania z klienta jako menedżera kontekstu.

close() -> None

decrypt

Odszyfruj pojedynczy blok zaszyfrowanych danych przy użyciu klucza klienta.

Wymaga uprawnień kluczy/odszyfrowywania. Ta metoda odszyfrowuje tylko jeden blok danych, którego rozmiar zależy od klucza i algorytmu szyfrowania.

decrypt(algorithm: EncryptionAlgorithm, ciphertext: bytes, **kwargs) -> DecryptResult

Parametry

algorithm
EncryptionAlgorithm
Wymagane

Algorytm szyfrowania do użycia

ciphertext
bytes
Wymagane

Zaszyfrowane bajty do odszyfrowania. Firma Microsoft zaleca, aby nie używać CBC bez uprzedniego zapewnienia integralności tekstu szyfrowego przy użyciu, na przykład HMAC. Aby uzyskać więcej informacji, zobacz https://docs.microsoft.com/dotnet/standard/security/vulnerabilities-cbc-mode.

iv
bytes lub None

Wektor inicjowania używany podczas szyfrowania. Wymagane do odszyfrowywania AES.

authentication_tag
bytes lub None

Tag uwierzytelniania wygenerowany podczas szyfrowania. Wymagane tylko do odszyfrowywania AES-GCM.

additional_authenticated_data
bytes lub None

Opcjonalne dane, które są uwierzytelniane, ale nie są szyfrowane. Do użytku z odszyfrowywaniem AES-GCM.

Typ zwracany

Wyjątki

Jeśli podano parametry niezgodne z określonym algorytmem.

encrypt

Szyfruj bajty przy użyciu klucza klienta.

Wymaga uprawnień do kluczy/szyfrowania. Ta metoda szyfruje tylko jeden blok danych, którego rozmiar zależy od klucza i algorytmu szyfrowania.

encrypt(algorithm: EncryptionAlgorithm, plaintext: bytes, **kwargs) -> EncryptResult

Parametry

algorithm
EncryptionAlgorithm
Wymagane

Algorytm szyfrowania do użycia

plaintext
bytes
Wymagane

Bajty do zaszyfrowania

iv
bytes lub None

Wektor inicjowania. Wymagane tylko do szyfrowania AES-CBC(PAD). Jeśli przekażesz własny IV, upewnij się, że używasz kryptograficznie losowego, nie powtarzającego się IV. Jeśli pominięto, zostanie podjęta próba wygenerowania iv za pośrednictwem os.urandom dla lokalnej kryptografii; w przypadku kryptografii zdalnej Key Vault wygeneruje iv.

additional_authenticated_data
bytes lub None

Opcjonalne dane, które są uwierzytelniane, ale nie są szyfrowane. Do użytku z szyfrowaniem AES-GCM.

Typ zwracany

Wyjątki

jeśli podano parametry niezgodne z określonym algorytmem lub jeśli generowanie iv kończy się niepowodzeniem na bieżącej platformie.

from_jwk

Tworzy klienta, który może wykonywać tylko operacje kryptograficzne lokalnie.

from_jwk(jwk: JsonWebKey | Dict[str, Any]) -> CryptographyClient

Parametry

jwk
JsonWebKey lub Dict[str, Any]
Wymagane

materiał kryptograficzny klucza jako klucz JsonWebKey lub słownik.

Typ zwracany

send_request

Uruchamia żądanie sieciowe przy użyciu istniejącego potoku klienta.

Adres URL żądania może być względny względem adresu URL magazynu. Wersja interfejsu API usługi używana dla żądania jest taka sama jak wersja klienta, chyba że określono inaczej. Ta metoda nie zgłasza się, jeśli odpowiedź jest błędem; aby zgłosić wyjątek, wywołaj metodę raise_for_status() dla zwróconego obiektu odpowiedzi. Aby uzyskać więcej informacji na temat wysyłania żądań niestandardowych za pomocą tej metody, zobacz https://aka.ms/azsdk/dpcodegen/python/send_request.

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

Parametry

request
HttpRequest
Wymagane

Żądanie sieciowe, które chcesz utworzyć.

stream
bool

Określa, czy ładunek odpowiedzi będzie przesyłany strumieniowo. Wartość domyślna to False.

Zwraca

Odpowiedź połączenia sieciowego. Nie obsługuje błędów w odpowiedzi.

Typ zwracany

sign

Utwórz podpis na podstawie skrótu przy użyciu klucza klienta.

Wymaga uprawnień do podpisywania/kluczy.

sign(algorithm: SignatureAlgorithm, digest: bytes, **kwargs) -> SignResult

Parametry

algorithm
SignatureAlgorithm
Wymagane

algorytm podpisywania

digest
bytes
Wymagane

Skrót bajtów do podpisania

Typ zwracany

unwrap_key

Odpakuj klucz wcześniej opakowany kluczem klienta.

Wymaga uprawnień klucze/unwrapKey.

unwrap_key(algorithm: KeyWrapAlgorithm, encrypted_key: bytes, **kwargs) -> UnwrapResult

Parametry

algorithm
KeyWrapAlgorithm
Wymagane

opakowujące algorytm do użycia

encrypted_key
bytes
Wymagane

opakowany klucz

Typ zwracany

verify

Zweryfikuj podpis przy użyciu klucza klienta.

Wymaga uprawnień klucze/weryfikacja.

verify(algorithm: SignatureAlgorithm, digest: bytes, signature: bytes, **kwargs) -> VerifyResult

Parametry

algorithm
SignatureAlgorithm
Wymagane

algorytm weryfikacji

digest
bytes
Wymagane

Skrót wstępny odpowiadający podpisowi. Używany algorytm skrótu musi być zgodny z .algorithm

signature
bytes
Wymagane

podpis do zweryfikowania

Typ zwracany

wrap_key

Zawijaj klucz przy użyciu klucza klienta.

Wymaga uprawnień klucze/zawijanieklucz.

wrap_key(algorithm: KeyWrapAlgorithm, key: bytes, **kwargs) -> WrapResult

Parametry

algorithm
KeyWrapAlgorithm
Wymagane

opakowujące algorytm do użycia

key
bytes
Wymagane

klucz do zawijania

Typ zwracany

Atrybuty

key_id

Pełny identyfikator klucza klienta.

Ta właściwość może mieć wartość None, gdy klient jest skonstruowany za pomocą from_jwkpolecenia .

Typ zwracany

str,

vault_url

Podstawowy adres URL magazynu klucza klienta.

Ta właściwość może mieć wartość None, gdy klient jest skonstruowany za pomocą from_jwkpolecenia .

Typ zwracany

str,