檢視根金鑰或標準金鑰的清單
IBM Cloud® Hyper Protect Crypto Services 提供集中式系統來檢視、管理及審核加密金鑰。 請審核您的金鑰及對於金鑰的存取權限制,以確保資源安全。
定期審核您的金鑰配置:
- 檢查金鑰的建立時間,並決定是否應該輪替金鑰。
- 使用 Hyper Protect Crypto Services 監視 Activity Tracker 的 API 呼叫。
- 檢查哪些使用者可以存取金鑰,以及存取層次是否適當。
有關審核對資源的訪問的更多信息,請參閱 管理用戶訪問。
使用使用者介面檢視根金鑰或標準金鑰
如果您喜歡使用圖形介面檢查服務中的金鑰,則可以使用 UI。
在建立金鑰或將現有金鑰匯入到服務之後,請完成下列步驟來檢視金鑰。
-
去選單>資源清單查看您的資源清單。
-
從 IBM Cloud 資源清單,選取已佈建的 Hyper Protect Crypto Services 實例。
-
在 KMS 金鑰 頁面上,瀏覽 金鑰 表格中金鑰的一般性質:
表 1. 說明索引鍵的表格 直欄 說明 名稱 分配給您的密鑰的唯一的、人類可讀的名稱。 ID Hyper Protect Crypto Services 服務已指派給您金鑰的唯一金鑰 ID。 您可以使用 ID 值來呼叫服務 Hyper Protect Crypto Services金鑰管理服務API。 別名 建立金鑰時為了易於識別而指定的人類可讀別名。 金鑰環 ID 金鑰所屬的金鑰環。 類型 描述密鑰在服務中的指定用途的密鑰類型。 狀態 根據 NIST 特殊出版品 800-57 的金鑰管理建議的金鑰狀態。 這些狀態包括預先啟用、啟用、暫停、停用和銷毀。 原點 指出是否匯入金鑰。 Created指出由服務實例建立金鑰;Imported指出由使用者匯入金鑰。前次更新 上次更新密鑰的日期和時間。 當建立金鑰、旋轉金鑰或修改金鑰 meta 資料的任何部分時,會更新此欄位。 前次輪替時間 上次輪換密鑰的日期和時間。 已建立 建立密鑰的日期和時間。 已啟用雙重授權 金鑰上雙重授權原則的狀態。
True: 需要雙重授權才能刪除金鑰。False: 不需要任何先前授權即可刪除金鑰。
設定進行刪除 指出是否對金鑰發出刪除授權。
True: 第一個使用者發出刪除此金鑰的授權。 具有「管理員」存取原則的第二個使用者可以安全地刪除金鑰。False: 金鑰未設定為刪除。 不需執行進一步的動作。
刪除有效期限 金鑰的刪除授權到期日期。 如果此日期通過,則授權不再有效。 如果 False是索引鍵Dual authorization enabled或Set for deletion直欄的值,則Deletion expiration直欄會保留空白。依預設不會顯示所有索引鍵性質。 若要自訂如何呈現 索引鍵 表格,請按一下 設定圖示
,然後檢查要顯示的直欄。
看不到儲存在服務實例中的金鑰完整清單嗎? 請向管理者確認您已獲指派適用服務實例或個別金鑰的正確角色。 如需角色的相關資訊,請參閱角色及許可權。
您也可以使用搜尋列來搜尋特定索引鍵,或按一下 索引鍵 表格中的 過濾器 圖示
,根據您的需要來過濾索引鍵。
使用金鑰管理服務 API 檢視根金鑰或標準金鑰
您可以使用以下命令檢索密鑰的內容Hyper Protect Crypto Services密鑰管理服務API。
擷取根金鑰或標準金鑰的清單
對於進階視圖,您可以瀏覽在您配置的實例中管理的根密鑰或標準密鑰Hyper Protect Crypto Services透過製作一個 GET 調用以下端點。
https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys
-
執行下列 cURL 指令,以檢視金鑰的一般性質。
curl -X GET \ "https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys" \ -H 'accept: application/vnd.ibm.collection+json' \ -H 'authorization: Bearer <IAM_token>' \ -H 'bluemix-instance: <instance_ID>' \ -H 'x-kms-key-ring: <key_ring_ID>' \ -H 'correlation-id: <correlation_ID>' \根據下表取代範例要求中的變數。
表 2. 描述使用 API 查看金鑰所需的變量 變數 說明 region代表 Hyper Protect Crypto Services 服務實例所在地理區域的地區縮寫,例如 us-south或au-syd。 如需相關資訊,請參閱地區服務端點。port必要。 API 端點的埠號。 IAM_token您的 IBM Cloud 存取記號。 請在 cURL 要求中包含 IAM記號的完整內容,包括 Bearer 值。 有關更多信息,請參閱 檢索訪問令牌。instance_ID指派給您 Hyper Protect Crypto Services 服務實例的唯一 ID。 有關更多信息,請參閱 檢索實例 ID。 key_ring_ID選用。 金鑰所屬金鑰環的唯一 ID。 如果未指定,Hyper Protect Crypto Services 將在與指定實例相關聯的每個金鑰環中搜尋金鑰。 因此,建議為更最佳化的要求指定金鑰環 ID。 附註: 在沒有
x-kms-key-ring標頭的情況下建立之金鑰的金鑰環 ID 為: 預設值。 如需相關資訊,請參閱 管理金鑰環。correlation_ID選用。 用來追蹤及關聯交易的唯一 ID。 一個成功的
GET /v2/keys請求返回您的可用鍵的集合Hyper Protect Crypto Services實例。{ "metadata": { "collectionType": "application/vnd.ibm.kms.key+json", "collectionTotal": 2 }, "resources": [ { "id": "02fd6835-6001-4482-a892-13bd2085f75d", "type": "application/vnd.ibm.kms.key+json", "name": "Root-key", "state": 1, "crn": "crn:v1:bluemix:public:hs-crypto:us-south:a/f047b55a3362ac06afad8a3f2f5586ea:12e8c9c2-a162-472d-b7d6-8b9a86b815a6:key:02fd6835-6001-4482-a892-13bd2085f75d", "createdBy": "...", "creationDate": "2020-03-11T16:30:06Z", "lastUpdateDate": "2020-03-11T16:30:06Z", "algorithmMetadata": { "bitLength": "256", "mode": "CBC_PAD" }, "extractable": false, "imported": true, "algorithmMode": "CBC_PAD", "algorithmBitSize": 256, "dualAuthDelete": { "enabled": false } }, { "id": "2291e4ae-a14c-4af9-88f0-27c0cb2739e2", "type": "application/vnd.ibm.kms.key+json", "name": "Standard-key", "state": 1, "crn": "crn:v1:bluemix:public:hs-crypto:us-south:a/f047b55a3362ac06afad8a3f2f5586ea:30372f20-d9f1-40b3-b486-a709e1932c9c:key:2291e4ae-a14c-4af9-88f0-27c0cb2739e2", "createdBy": "...", "creationDate": "2020-03-12T03:50:12Z", "lastUpdateDate": "2020-03-12T03:50:12Z", "algorithmMetadata": { "bitLength": "256", "mode": "CBC_PAD" }, "extractable": true, "imported": false, "algorithmMode": "CBC_PAD", "algorithmBitSize": 256, "dualAuthDelete": { "enabled": false } } ] }預設情況下,
GET api/v2/keys返回您的前 200 個鍵,但您可以使用以下命令調整此限制limit查詢時的參數。 若要進一步瞭解limit及offset,請參閱擷取金鑰子集。看不到完整的金鑰清單嗎? 您可能需要使用
limit和offset或洽詢您的管理者,以確定您已獲指派對實例中金鑰的正確層次存取權。 若要進一步瞭解,請參閱 無法檢視或列出金鑰。
擷取金鑰子集
在查詢時間指定 limit 及 offset 參數,即可擷取金鑰子集,並從您指定的 offset 值開始。
例如,您的 Hyper Protect Crypto Services 服務實例中所儲存的金鑰可能共有 3000 個,但您在發出 GET /keys 要求時要擷取 200 - 300 個金鑰。
您可以使用下列範例要求來擷取一組不同的金鑰。
curl -X GET \
'https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys?offset=<offset>&limit=<limit>' \
-H 'accept: application/vnd.ibm.collection+json' \
-H 'authorization: Bearer <IAM_token>' \
-H 'bluemix-instance: <instance_ID>'
根據下表,取代要求中的 limit 及 offset 變數。
| 變數 | 說明 |
|---|---|
| offset | 要跳過的金鑰數目。 例如,如果您的實例中有 50 個鍵,並且您想要列出鍵 26 - 50,請使用 ../keys?offset=25。 您也可以配對 offset 和 limit 翻閱您可用的資源。 |
| 限制 | 要擷取的金鑰數目。 例如,如果您的實例中有 100 個鍵,並且您只想列出 10 個鍵,請使用 ../keys?limit=10。 最大值為 limit 是 5000。 |
如需使用注意事項,請參閱下列範例來設定 limit 及 offset 查詢參數。
| URL | 說明 |
|---|---|
.../keys |
列出您的所有可用資源,最多可列出前 2000 個金鑰。 |
.../keys?limit=10 |
列出前 10 個金鑰。 |
.../keys?offset=25&limit=50 |
列出金鑰 26 - 75。 |
.../keys?offset=3000&limit=50 |
列出金鑰 3001 - 3050。 |
偏移是資料集中特定金鑰的位置。 offset 值是以零起始,這表示資料集中的第 10 個加密金鑰位於偏移 9。
依狀態擷取金鑰
透過在查詢時指定 state 參數,您可以擷取處於指定狀態的索引鍵。
例如,您在服務實例中可能有處於作用中、已暫停及已毀損狀態的金鑰,但您只想要在發出 GET /keys 要求時擷取處於作用中狀態的金鑰。
狀態查詢參數採用整數 0-5 的清單,以逗點區隔,不含空格或尾端逗點。 有效狀態是根據 NIST SP 800-57。 如需金鑰狀態的相關資訊,請參閱 金鑰狀態及轉移。
您可以使用下列範例要求來擷取一組不同的金鑰。
curl -X GET \
'https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys?state=<state_integers>' \
-H 'accept: application/vnd.ibm.collection+json' \
-H 'authorization: Bearer <IAM_token>' \
-H 'bluemix-instance: <instance_ID>'
根據下表,取代要求中的 state 變數。
| 變數 | 說明 |
|---|---|
state |
要檢索的密鑰的狀態。 狀態是整數,且對應於前置作用中 = 0、作用中 = 1、已暫停 = 2、已停用 = 3 及已毀損 = 5 值。 例如,如果您只想列出服務實例中處於作用中狀態的金鑰,請使用 ../keys?state=1。 您也可以配對 state 和 offset 和 limit 翻閱您可用的資源。 |
有關使用說明,請查看以下範例以設定您的 state 查詢參數。
| URL | 說明 |
|---|---|
.../keys |
列出所有可用資源,最多前 200 個按鍵。 |
.../keys?state=5 |
列出處於已刪除狀態的金鑰。 |
.../keys?state=2,3 |
列出處於已暫停及已取消啟動狀態的金鑰。 |
依可擷取值擷取索引鍵
透過在查詢時指定 extractable 參數,您可以擷取其資料可以離開服務的金鑰。
例如,您在 Hyper Protect Crypto Services 實例中可能同時具有標準金鑰和根金鑰,但您只想要在提出 GET /keys 要求時擷取具有可擷取金鑰資料的金鑰。
可擷取的查詢參數採用布林。
您可以使用下列範例要求來擷取一組不同的金鑰。
$ curl -X GET \
"https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys?extractable=<extractable>" \
-H "accept: application/vnd.ibm.collection+json" \
-H "authorization: Bearer <IAM_token>" \
-H "bluemix-instance: <instance_ID>"
根據下表,取代要求中的 extractable 變數。
| 變數 | 說明 |
|---|---|
| 可擷取 | 要擷取的金鑰類型。 根據可擷取的內容來過濾索引鍵。 您可以使用此查詢參數來搜尋其資料可以離開服務的索引鍵。 如果您將參數設為 true,則會擷取標準索引鍵。 如果您將參數設為 false,則會擷取根金鑰。 如果省略此參數,則會同時擷取根金鑰和標準金鑰。 例如,如果您只想列出服務實例中具有可擷取資料的金鑰,請使用 ../keys?extractable=true。 您也可以將可萃取物與 offset,limit,和
state 翻閱您可用的資源。 |
有關使用說明,請查看以下範例以設定您的 extractable 查詢參數。
| URL | 說明 |
|---|---|
../keys |
列出所有可用資源,最多前 200 個按鍵。 |
../keys?extractable=true |
列出標準金鑰。 |
../keys?extractable=false |
列出根金鑰。 |
對鍵列表進行排序
在根據一個以上索引鍵內容傳回的查詢字串 排序金鑰清單 中使用 sort 參數。 若要以遞減順序對內容進行排序,請以 "-" 作為術語的字首。若要對多個索引鍵內容進行排序,請使用逗點來區隔每一個內容。 將在下一個之前評估逗點區隔清單中的第一個內容。
$ curl -X GET \
"https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys?sort=<sort-value>" \
-H "accept: application/vnd.ibm.collection+json" \
-H "authorization: Bearer <IAM_token>" \
-H "bluemix-instance: <instance_ID>"
| 變數 | 說明 |
|---|---|
| 排序值 |
用於排序的內容清單。 此時可以排序的關鍵內容為: -id
|