KeyClient 類別
用於管理保存庫金鑰的高階介面。
- 繼承
-
azure.keyvault.keys._shared.client_base.KeyVaultClientBaseKeyClient
建構函式
KeyClient(vault_url: str, credential: TokenCredential, **kwargs)
參數
- vault_url
- str
用戶端將存取之保存庫的 URL。 這也稱為保存庫的「DNS 名稱」。 您應該驗證此 URL 參考有效的金鑰保存庫或受控 HSM 資源。 如需詳細資訊,請參閱<https://aka.ms/azsdk/blog/vault-uri>。
- api_version
- ApiVersion
要使用的服務 API 版本。 預設為最新的 。
- verify_challenge_resource
- bool
是否要驗證驗證挑戰資源符合金鑰保存庫或受控 HSM 網域。 預設值為 True。
方法
backup_key |
以受保護的形式備份金鑰,僅供 Azure 金鑰保存庫使用。 需要金鑰/備份許可權。 這是為了允許將金鑰從一個保存庫複製到另一個保存庫。 這兩個保存庫都必須由相同的 Azure 訂用帳戶擁有。 此外,無法跨地理政治界限執行備份/還原。 例如,美國區域中保存庫的備份無法還原到歐盟區域中的保存庫。 |
begin_delete_key |
刪除金鑰及其密碼編譯資料的所有版本。 需要金鑰/刪除許可權。 當此方法傳回金鑰保存庫開始刪除金鑰時。 在已啟用虛刪除的保存庫中,刪除可能需要幾秒鐘的時間。 因此,此方法會傳回輪詢器,讓您等候刪除完成。 |
begin_recover_deleted_key |
將已刪除的金鑰復原至其最新版本。 只能在已啟用虛刪除的保存庫中進行。 需要金鑰/復原許可權。 當此方法傳回金鑰保存庫開始復原金鑰時。 復原可能需要幾秒鐘的時間。 因此,此方法會傳回輪詢器,讓您等候復原完成。 只有在您想要立即在另一個作業中使用復原的金鑰時,才需要等候。 |
close |
關閉用戶端所開啟的通訊端。 使用用戶端做為內容管理員時,不需要呼叫這個方法。 |
create_ec_key |
建立新的橢圓曲線索引鍵;如果 需要金鑰/建立權限。 |
create_key |
建立金鑰,或者,如果 需要金鑰/建立許可權。 |
create_oct_key |
建立新的八位序列 (對稱) 金鑰,如果 需要金鑰/建立權限。 |
create_rsa_key |
建立新的 RSA 金鑰;如果 需要金鑰/建立權限。 |
get_cryptography_client |
CryptographyClient取得指定索引鍵的 。 |
get_deleted_key |
取得已刪除的金鑰。 只能在已啟用虛刪除的保存庫中進行。 需要金鑰/取得許可權。 |
get_key |
取得金鑰的屬性,如果是非對稱金鑰,則為其公開資料。 需要金鑰/取得許可權。 |
get_key_rotation_policy |
取得金鑰保存庫金鑰的輪替原則。 |
get_random_bytes |
從受控 HSM 取得要求的隨機位元組數目。 |
import_key |
匯入外部建立的金鑰。 需要金鑰/匯入許可權。 如果 |
list_deleted_keys |
列出所有已刪除的金鑰,包括每個的公用部分。 只能在已啟用虛刪除的保存庫中進行。 需要金鑰/清單許可權。 |
list_properties_of_key_versions |
列出金鑰版本的識別碼和屬性。 需要金鑰/清單許可權。 |
list_properties_of_keys |
列出保存庫中所有金鑰的識別碼和屬性。 需要金鑰/清單許可權。 |
purge_deleted_key |
永久刪除已刪除的金鑰。 只有在已啟用虛刪除的保存庫中才可行。 執行無法復原的指定金鑰刪除,而無法復原。 如果 recovery_level 未指定 「可清除」,則無法使用此作業。 只有在清除索引 scheduled_purge_date 鍵之前,才需要這個方法。 需要金鑰/清除許可權。 |
release_key |
釋放金鑰。 發行金鑰作業適用于所有金鑰類型。 目標金鑰必須標示為可匯出。 此作業需要金鑰/發行許可權。 |
restore_key_backup |
將金鑰備份還原至保存庫。 需要金鑰/還原許可權。 這會匯入金鑰的所有版本,其中包含其名稱、屬性和存取控制原則。 如果金鑰的名稱已在使用中,還原它將會失敗。 此外,目標保存庫必須擁有與來源保存庫相同的 Microsoft Azure 訂用帳戶。 |
rotate_key |
藉由產生新版本的金鑰,根據金鑰原則輪替金鑰。 此作業需要金鑰/輪替許可權。 |
send_request |
使用用戶端的現有管線執行網路要求。 要求 URL 可以相對於保存庫 URL。 除非另有指定,否則用於要求的服務 API 版本與用戶端的版本相同。 如果回應為錯誤,則這個方法不會引發;若要引發例外狀況,請在傳回的回應物件上呼叫 raise_for_status () 。 如需如何使用此方法傳送自訂要求的詳細資訊,請參閱 https://aka.ms/azsdk/dpcodegen/python/send_request 。 |
update_key_properties |
變更金鑰的屬性, (不是其密碼編譯資料) 。 需要金鑰/更新許可權。 |
update_key_rotation_policy |
更新金鑰保存庫金鑰的輪替原則。 此作業需要金鑰/更新許可權。 |
backup_key
以受保護的形式備份金鑰,僅供 Azure 金鑰保存庫使用。
需要金鑰/備份許可權。
這是為了允許將金鑰從一個保存庫複製到另一個保存庫。 這兩個保存庫都必須由相同的 Azure 訂用帳戶擁有。 此外,無法跨地理政治界限執行備份/還原。 例如,美國區域中保存庫的備份無法還原到歐盟區域中的保存庫。
backup_key(name: str, **kwargs) -> bytes
參數
傳回類型
例外狀況
如果索引鍵不存在,則為
針對其他錯誤
begin_delete_key
刪除金鑰及其密碼編譯資料的所有版本。
需要金鑰/刪除許可權。 當此方法傳回金鑰保存庫開始刪除金鑰時。 在已啟用虛刪除的保存庫中,刪除可能需要幾秒鐘的時間。 因此,此方法會傳回輪詢器,讓您等候刪除完成。
begin_delete_key(name: str, **kwargs) -> LROPoller[DeletedKey]
參數
傳回
刪除金鑰作業的輪詢器。 輪詢器 的結果 方法會傳回 , DeletedKey 而不需要等候刪除完成。 如果保存庫已啟用虛刪除,而且您想要使用 purge_deleted_key 永久刪除金鑰,請先呼叫輪詢器的 wait 方法。 它會封鎖直到刪除完成為止。 wait方法需要金鑰/取得許可權。
傳回類型
例外狀況
如果索引鍵不存在,則為
針對其他錯誤
begin_recover_deleted_key
將已刪除的金鑰復原至其最新版本。 只能在已啟用虛刪除的保存庫中進行。
需要金鑰/復原許可權。
當此方法傳回金鑰保存庫開始復原金鑰時。 復原可能需要幾秒鐘的時間。 因此,此方法會傳回輪詢器,讓您等候復原完成。 只有在您想要立即在另一個作業中使用復原的金鑰時,才需要等候。
begin_recover_deleted_key(name: str, **kwargs) -> LROPoller[KeyVaultKey]
參數
傳回
復原作業的輪詢器。 輪詢器 的結果 方法會傳回已 KeyVaultKey 復原,而不需要等候復原完成。 如果您想要立即使用復原的金鑰,請呼叫輪詢器的 wait 方法,這會封鎖直到金鑰可供使用為止。 wait方法需要金鑰/取得許可權。
傳回類型
例外狀況
close
關閉用戶端所開啟的通訊端。
使用用戶端做為內容管理員時,不需要呼叫這個方法。
close() -> None
例外狀況
如果索引鍵不存在,則為
針對其他錯誤
create_ec_key
建立新的橢圓曲線索引鍵;如果 name
已在使用中,請建立新版的金鑰。
需要金鑰/建立權限。
create_ec_key(name: str, **kwargs) -> KeyVaultKey
參數
- curve
- KeyCurveName 或 str 或 None
橢圓曲線名稱。 預設為 NIST P-256 橢圓曲線。
- key_operations
- list[KeyOperation 或 str] 或 None
允許的金鑰作業
- release_policy
- KeyReleasePolicy 或 None
可匯出金鑰的原則規則。
傳回
已建立的金鑰
傳回類型
例外狀況
create_key
建立金鑰,或者,如果 name
已在使用中,請建立新版的金鑰。
需要金鑰/建立許可權。
create_key(name: str, key_type: str | KeyType, **kwargs) -> KeyVaultKey
參數
以位為單位的金鑰大小。 僅適用于 RSA 和對稱金鑰。 請考慮改用 create_rsa_key 或 create_oct_key 。
- curve
- KeyCurveName 或 str 或 None
橢圓曲線名稱。 僅適用于橢圓曲線索引鍵。 預設為 NIST P-256 橢圓曲線。 若要建立橢圓曲線索引鍵,請考慮改用 create_ec_key 。
- key_operations
- list[KeyOperation 或 str] 或 None
允許的金鑰作業
- release_policy
- KeyReleasePolicy 或 None
可匯出金鑰的原則規則。
傳回
已建立的金鑰
傳回類型
例外狀況
create_oct_key
建立新的八位序列 (對稱) 金鑰,如果 name
正在使用中,請建立新版本的金鑰。
需要金鑰/建立權限。
create_oct_key(name: str, **kwargs) -> KeyVaultKey
參數
- key_operations
- list[KeyOperation 或 str] 或 None
允許的金鑰作業。
- release_policy
- KeyReleasePolicy 或 None
可匯出金鑰的原則規則。
傳回
已建立的金鑰
傳回類型
例外狀況
create_rsa_key
建立新的 RSA 金鑰;如果 name
已在使用中,請建立新版的金鑰
需要金鑰/建立權限。
create_rsa_key(name: str, **kwargs) -> KeyVaultKey
參數
- key_operations
- list[KeyOperation 或 str] 或 None
允許的金鑰作業
- release_policy
- KeyReleasePolicy 或 None
可匯出金鑰的原則規則。
傳回
已建立的金鑰
傳回類型
例外狀況
get_cryptography_client
CryptographyClient取得指定索引鍵的 。
get_cryptography_client(key_name: str, **kwargs) -> CryptographyClient
參數
- key_version
- str
用來執行密碼編譯作業的選擇性金鑰版本。
傳回
, CryptographyClient 使用與這個 KeyClient 相同的選項、認證和 HTTP 用戶端。
傳回類型
例外狀況
如果索引鍵不存在,則為
針對其他錯誤
get_deleted_key
取得已刪除的金鑰。 只能在已啟用虛刪除的保存庫中進行。
需要金鑰/取得許可權。
get_deleted_key(name: str, **kwargs) -> DeletedKey
參數
傳回
已刪除的金鑰
傳回類型
例外狀況
如果索引鍵不存在,則為
針對其他錯誤
get_key
取得金鑰的屬性,如果是非對稱金鑰,則為其公開資料。
需要金鑰/取得許可權。
get_key(name: str, version: str | None = None, **kwargs) -> KeyVaultKey
參數
傳回類型
例外狀況
如果索引鍵不存在,則為
針對其他錯誤
get_key_rotation_policy
取得金鑰保存庫金鑰的輪替原則。
get_key_rotation_policy(key_name: str, **kwargs) -> KeyRotationPolicy
參數
傳回
金鑰輪替原則。
傳回類型
例外狀況
get_random_bytes
從受控 HSM 取得要求的隨機位元組數目。
get_random_bytes(count: int, **kwargs) -> bytes
參數
傳回
隨機位元組。
傳回類型
例外狀況
如果要求少於一個隨機位元組,則為
針對其他錯誤
import_key
匯入外部建立的金鑰。
需要金鑰/匯入許可權。 如果 name
已在使用中,金鑰將會匯入為新版本。
import_key(name: str, key: JsonWebKey, **kwargs) -> KeyVaultKey
參數
- release_policy
- KeyReleasePolicy 或 None
可匯出金鑰的原則規則。
傳回
匯入的金鑰
傳回類型
例外狀況
list_deleted_keys
列出所有已刪除的金鑰,包括每個的公用部分。 只能在已啟用虛刪除的保存庫中進行。
需要金鑰/清單許可權。
list_deleted_keys(**kwargs) -> ItemPaged[DeletedKey]
傳回
已刪除金鑰的反覆運算器
傳回類型
例外狀況
如果索引鍵不存在,則為
針對其他錯誤
list_properties_of_key_versions
列出金鑰版本的識別碼和屬性。
需要金鑰/清單許可權。
list_properties_of_key_versions(name: str, **kwargs) -> ItemPaged[KeyProperties]
參數
傳回
金鑰的反覆運算器,不含其密碼編譯資料
傳回類型
例外狀況
如果索引鍵不存在,則為
針對其他錯誤
list_properties_of_keys
列出保存庫中所有金鑰的識別碼和屬性。
需要金鑰/清單許可權。
list_properties_of_keys(**kwargs) -> ItemPaged[KeyProperties]
傳回
金鑰反覆運算器,不含其密碼編譯資料或版本資訊
傳回類型
例外狀況
如果索引鍵不存在,則為
針對其他錯誤
purge_deleted_key
永久刪除已刪除的金鑰。 只有在已啟用虛刪除的保存庫中才可行。
執行無法復原的指定金鑰刪除,而無法復原。 如果 recovery_level 未指定 「可清除」,則無法使用此作業。 只有在清除索引 scheduled_purge_date 鍵之前,才需要這個方法。
需要金鑰/清除許可權。
purge_deleted_key(name: str, **kwargs) -> None
參數
傳回
無
例外狀況
範例
# 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
釋放金鑰。
發行金鑰作業適用于所有金鑰類型。 目標金鑰必須標示為可匯出。 此作業需要金鑰/發行許可權。
release_key(name: str, target_attestation_token: str, **kwargs) -> ReleaseKeyResult
參數
- algorithm
- str 或 KeyExportEncryptionAlgorithm 或 None
用來保護已發行金鑰資料的加密演算法。
傳回
金鑰發行的結果。
傳回類型
例外狀況
restore_key_backup
將金鑰備份還原至保存庫。
需要金鑰/還原許可權。
這會匯入金鑰的所有版本,其中包含其名稱、屬性和存取控制原則。 如果金鑰的名稱已在使用中,還原它將會失敗。 此外,目標保存庫必須擁有與來源保存庫相同的 Microsoft Azure 訂用帳戶。
restore_key_backup(backup: bytes, **kwargs) -> KeyVaultKey
參數
傳回
還原的金鑰
傳回類型
例外狀況
如果備份金鑰的名稱已在使用中,則為
針對其他錯誤
rotate_key
藉由產生新版本的金鑰,根據金鑰原則輪替金鑰。
此作業需要金鑰/輪替許可權。
rotate_key(name: str, **kwargs) -> KeyVaultKey
參數
傳回
新版的輪替金鑰。
傳回類型
例外狀況
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。
傳回
網路呼叫的回應。 不會對回應執行錯誤處理。
傳回類型
例外狀況
如果索引鍵不存在,則為
針對其他錯誤
update_key_properties
變更金鑰的屬性, (不是其密碼編譯資料) 。
需要金鑰/更新許可權。
update_key_properties(name: str, version: str | None = None, **kwargs) -> KeyVaultKey
參數
- key_operations
- list[KeyOperation 或 str] 或 None
允許的金鑰作業
- release_policy
- KeyReleasePolicy 或 None
可匯出金鑰的原則規則。
傳回
更新的金鑰
傳回類型
例外狀況
如果索引鍵不存在,則為
針對其他錯誤
update_key_rotation_policy
更新金鑰保存庫金鑰的輪替原則。
此作業需要金鑰/更新許可權。
update_key_rotation_policy(key_name: str, policy: KeyRotationPolicy, **kwargs) -> KeyRotationPolicy
參數
- lifetime_actions
- list[KeyRotationLifetimeAction]
金鑰存留期期間金鑰保存庫執行的動作。 這會覆寫所提供 policy
的存留期動作。
- expires_in
- str
將在新金鑰版本上套用的原則到期時間,定義為 ISO 8601 持續時間。 例如:90 天是 「P90D」,3 個月是 「P3M」,而 48 小時是 「PT48H」。 如需 ISO 8601 持續時間的詳細資訊,請參閱 Wikipedia 。
這會覆寫所提供 policy
的到期時間。
傳回
更新的輪替原則。