CryptographyClient 類別
使用 Azure 金鑰保存庫金鑰執行密碼編譯作業。
當此用戶端使用必要的金鑰資料進行初始化,或能夠從金鑰保存庫取得該資料時,此用戶端會在本機執行作業。 當必要的金鑰資料無法使用時,金鑰保存庫服務會執行密碼編譯作業。
- 繼承
-
azure.keyvault.keys._shared.client_base.KeyVaultClientBaseCryptographyClient
建構函式
CryptographyClient(key: KeyVaultKey | str, credential: TokenCredential, **kwargs)
參數
- api_version
- ApiVersion
要使用的服務 API 版本。 預設為最新的 。
- verify_challenge_resource
- bool
是否要驗證驗證挑戰資源符合金鑰保存庫或受控 HSM 網域。 預設值為 True。
方法
close |
關閉用戶端開啟的通訊端。 使用用戶端作為內容管理員時,不需要呼叫這個方法。 |
decrypt |
使用用戶端的金鑰解密加密資料的單一區塊。 需要金鑰/解密權限。 這個方法只會解密單一資料區塊,其大小取決於金鑰和加密演算法。 |
encrypt |
使用用戶端的金鑰加密位元組。 需要金鑰/加密權限。 這個方法只會加密單一資料區塊,其大小取決於金鑰和加密演算法。 |
from_jwk |
建立只能在本機執行密碼編譯作業的用戶端。 |
send_request |
使用用戶端的現有管線執行網路要求。 要求 URL 可以相對於保存庫 URL。 除非另有指定,否則用於要求的服務 API 版本與用戶端的版本相同。 如果回應為錯誤,這個方法就不會引發;若要引發例外狀況,請在傳回的回應物件上呼叫 raise_for_status () 。 如需如何使用此方法傳送自訂要求的詳細資訊,請參閱 https://aka.ms/azsdk/dpcodegen/python/send_request 。 |
sign |
使用用戶端的金鑰,從摘要建立簽章。 需要金鑰/簽署權限。 |
unwrap_key |
解除包裝先前以用戶端金鑰包裝的金鑰。 需要 keys/unwrapKey 許可權。 |
verify |
使用用戶端的金鑰驗證簽章。 需要金鑰/驗證權限。 |
wrap_key |
使用用戶端的金鑰包裝金鑰。 需要金鑰/wrapKey 許可權。 |
close
關閉用戶端開啟的通訊端。
使用用戶端作為內容管理員時,不需要呼叫這個方法。
close() -> None
decrypt
使用用戶端的金鑰解密加密資料的單一區塊。
需要金鑰/解密權限。 這個方法只會解密單一資料區塊,其大小取決於金鑰和加密演算法。
decrypt(algorithm: EncryptionAlgorithm, ciphertext: bytes, **kwargs) -> DecryptResult
參數
- ciphertext
- bytes
要解密的加密位元組。 Microsoft 建議您不要先使用 CBC,而不需要先確保使用加密文字的完整性,例如 HMAC。 如需相關資訊,請參閱 https://docs.microsoft.com/dotnet/standard/security/vulnerabilities-cbc-mode 。
傳回類型
例外狀況
如果提供與指定演算法不相容的參數。
encrypt
使用用戶端的金鑰加密位元組。
需要金鑰/加密權限。 這個方法只會加密單一資料區塊,其大小取決於金鑰和加密演算法。
encrypt(algorithm: EncryptionAlgorithm, plaintext: bytes, **kwargs) -> EncryptResult
參數
初始化向量。 只有 AES-CBC (PAD) 加密的必要專案。 如果您傳遞自己的 IV,請確定您使用密碼編譯隨機的非重複 IV。 如果省略,將會嘗試透過os.urandom產生 IV 以進行本機密碼編譯;針對遠端密碼編譯,金鑰保存庫會產生 IV。
傳回類型
例外狀況
如果提供與指定演算法不相容的參數,或在目前平臺上產生 IV 失敗,則為 。
from_jwk
建立只能在本機執行密碼編譯作業的用戶端。
from_jwk(jwk: JsonWebKey | Dict[str, Any]) -> CryptographyClient
參數
傳回類型
send_request
使用用戶端的現有管線執行網路要求。
要求 URL 可以相對於保存庫 URL。 除非另有指定,否則用於要求的服務 API 版本與用戶端的版本相同。 如果回應為錯誤,這個方法就不會引發;若要引發例外狀況,請在傳回的回應物件上呼叫 raise_for_status () 。 如需如何使用此方法傳送自訂要求的詳細資訊,請參閱 https://aka.ms/azsdk/dpcodegen/python/send_request 。
send_request(request: HttpRequest, *, stream: bool = False, **kwargs) -> HttpResponse
參數
- stream
- bool
是否要串流回應承載。 預設為 False。
傳回
網路通話的回應。 不會在您的回應上處理錯誤。
傳回類型
sign
使用用戶端的金鑰,從摘要建立簽章。
需要金鑰/簽署權限。
sign(algorithm: SignatureAlgorithm, digest: bytes, **kwargs) -> SignResult
參數
傳回類型
unwrap_key
解除包裝先前以用戶端金鑰包裝的金鑰。
需要 keys/unwrapKey 許可權。
unwrap_key(algorithm: KeyWrapAlgorithm, encrypted_key: bytes, **kwargs) -> UnwrapResult
參數
傳回類型
verify
使用用戶端的金鑰驗證簽章。
需要金鑰/驗證權限。
verify(algorithm: SignatureAlgorithm, digest: bytes, signature: bytes, **kwargs) -> VerifyResult
參數
傳回類型
wrap_key
使用用戶端的金鑰包裝金鑰。
需要金鑰/wrapKey 許可權。
wrap_key(algorithm: KeyWrapAlgorithm, key: bytes, **kwargs) -> WrapResult
參數
傳回類型
屬性
key_id
vault_url
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應