本文為您介紹使用OpenAPI查詢指定密鑰的密鑰詳情的完整樣本。
查看OpenAPI文檔
通過閱讀API概覽得知,查詢指定密鑰的密鑰詳情的OpenAPI為DescribeKey。請您根據文檔,瞭解調用該介面需要準備的資料和許可權。
建立RAM使用者並授權
身份
您可以使用阿里雲帳號(主帳號)、RAM使用者、RAM角色調用該介面,有關各種身份的差異,請參見身份、憑據、授權。本樣本中,我們使用RAM使用者進行介面調用。
登入RAM存取控制,建立一個僅允許API調用的RAM使用者,並記錄AccessKey資訊。具體操作,請參見建立RAM使用者。
授權
訪問RAM使用者列表,單擊目標RAM使用者操作列的添加許可權。
在權限原則區塊中,搜尋並選擇AliyunKMSFullAccess策略。
說明KMS的系統權限原則如下:
AliyunKMSCryptoAdminAccess:本策略定義了在KMS中管理加密金鑰的許可權。
AliyunKMSCryptoUserAccess:本策略定義了使用KMS的密鑰進行密碼運算的許可權。
AliyunKMSFullAccess:本策略定義了管理Key Management Service(KMS)的許可權。
AliyunKMSReadOnlyAccess:本策略定義了唯讀存取金鑰管理服務(KMS)的許可權。
AliyunKMSSecretAdminAccess:本策略定義了在KMS中管理認證的許可權。
AliyunKMSSecretUserAccess:本策略定義了擷取KMS中的憑據的許可權。
關於如何建立自訂許可權,請參見Key Management Service自訂權限原則參考。
單擊確認新增授權,完成授權操作。
憑證
在建立RAM使用者時會預設產生一個AccessKey,可直接使用。您也可以進入到對應的RAM使用者詳情頁面,在認證管理頁簽,單擊建立AccessKey,建立一個新的AccessKey。具體操作,請參見建立AccessKey。
調用OpenAPI
本文以Python語言為例,為您介紹OpenAPI的調用方法。
準備Python環境
下載並安裝Python。
Python 3的下載地址,請參見Python 3。
查看Python版本。
Linux和macOS系統
開啟終端,輸入
python --version。Windows系統
在Python的安裝路徑下,雙擊python.exe。
開啟命令提示字元頁面。
通過鍵盤快速鍵Win+R開啟運行對話方塊,輸入命令python,單擊確定。
配置環境變數
為避免將AccessKey寫入程式碼到業務代碼中帶來的安全風險,本樣本採用配置環境變數的方法管理AccessKey。不同作業系統的環境變數配置方法不同,具體操作,請參見在Linux、macOS和Windows系統配置環境變數。
安裝依賴
建議您安裝最新版本的SDK,最新版本資訊,請參見KMS SDK。
pip install alibabacloud_credentials
pip install alibabacloud_kms20160120==xx.xx.xx
pip install alibabacloud_tea_console下載範例程式碼
在OpenAPI門戶,訪問DescribeKey介面的調用地址。
請求參數KeyId輸入key-hzz62f1cb66fa42qo****,直接單擊發起調用。
先單擊SDK樣本頁簽,再單擊Python頁簽。
擷取Python語言的SDK樣本。
單擊下載完整工程,下載範例程式碼包。
在本地解壓範例程式碼包,並進入alibabacloud_sample目錄。
運行代碼
執行以下命令:
python sample.py得到如下輸出結果:
{
"KeyMetadata": {
"CreationDate": "2022-08-09T02:50:14Z",
"Description": "",
"KeyId": "key-hzz62f1cb66fa42qo****",
"KeySpec": "Aliyun_AES_256",
"KeyState": "Enabled",
"KeyUsage": "ENCRYPT/DECRYPT",
"PrimaryKeyVersion": "key-hzz62f1cb66fa42qo****-nksr4****",
"DeleteDate": "",
"Creator": "119285303511****",
"Arn": "acs:kms:cn-hangzhou:119285303511****:key/key-hzz62f1cb66fa42qo****",
"Origin": "",
"MaterialExpireTime": "",
"ProtectionLevel": "SOFTWARE",
"LastRotationDate": "2023-08-02T08:36:53Z",
"AutomaticRotation": "Disabled",
"KeyStoreId": "kst-hzz62ee817bvyyr5x****",
"DeletionProtection": "Enabled",
"DKMSInstanceId": "kst-hzz62ee817bvyyr5x****"
},
"RequestId": "7b6c6946-97ca-4e03-a312-28f9e8873c21"
}