停用及啟用根金鑰

您可以使用 IBM® Key Protect for IBM Cloud® 來停用或啟用 根金鑰,並暫時撤銷對該金鑰在 雲端相關資料的存取權限。

身為管理者,如果您懷疑資料可能暴露、危害或侵害安全,則可能需要暫時停用根金鑰。 當您停用根金鑰時,會暫停其加密及解密作業。 在確認安全風險不再處於作用中之後,您可以啟用已停用的根金鑰來還原對資料的存取權。

如果您使用與整合的「雲端服務」 Key Protect,您的資料可能無法 停用 root 金鑰後,您的資料可能無法存取。 判斷是否 整合服務 支援透過停用來撤銷對資料的存取權 Key Protect 根密钥,请参阅其服务 文件。

停用或啟用根金鑰

停用根金鑰

當您停用先前已啟用的根金鑰時,金鑰會從 作用中已暫停 金鑰狀態。 此動作表示金鑰無法再用來以加密方式保護資料。

如果您使用支援撤銷已停用之根金鑰的存取權的整合式雲端服務,則在撤銷對根金鑰相關聯資料的存取權之前,該服務最多可能需要 4 小時。

撤銷對相關聯資料的存取權之後,對應的 disable event 會顯示在 IBM Cloud Logs Web UI 中。 disable event 指出金鑰已撤銷 (現在已停用),且金鑰 不能 用於加密及解密作業。

啟用根金鑰

當您啟用先前已停用的根金鑰時,金鑰會從 已暫停作用中 金鑰狀態。 此動作會還原金鑰的加密及解密作業。

如果您使用的整合式雲端服務支援還原對已停用的根金鑰的存取權,則在還原對根金鑰相關聯資料的存取權之前,該服務最多可能需要 4 小時。

在還原對相關聯資料的存取權之後,對應的 enable event 會顯示在 IBM Cloud Logs Web UI 中。 enable event 指出金鑰已還原 (且現在已啟用),且金鑰可用於加密及解密作業。

在主控台中停用及啟用根金鑰

如果您偏好使用圖形介面來啟用或停用根金鑰,則可以使用 IBM Cloud 主控台。

在主控台中停用根金鑰

將金鑰建立或匯入本服務後, 請依照以下步驟停用該金鑰:

  1. 登入 IBM Cloud 主控台

  2. 請前往「選單」>「資源清單」以檢視您的資源清單。

  3. 從 IBM Cloud 資源清單,選取已佈建的 Key Protect 實例。

  4. 在應用程式詳細資訊頁面上,請使用「金鑰」表格瀏覽 您的 Key Protect 實例中的金鑰。

  5. 點擊 ⋯ 圖示,即可開啟您要 停用的鍵的選項清單。

  6. 在選項選單中,點選「停用」,並在更新後的「金鑰」表格中確認該金鑰已停用

在主控台中啟用根金鑰

在建立現有金鑰或將現有金鑰匯入至服務停用 根金鑰之後,請完成下列步驟來啟用金鑰:

  1. 登入 IBM Cloud 主控台

  2. 請前往「選單」>「資源清單」以檢視您的資源清單。

  3. 從 IBM Cloud 資源清單,選取已佈建的 Key Protect 實例。

  4. 在應用程式詳細資料頁面上使用金鑰表格,以瀏覽服務中的金鑰。

  5. 點擊 ⋯ 圖示,即可開啟您要 啟用的鍵的選項清單。

  6. 在選項選單中,點選「啟用」,並確認該金鑰已在更新後的「金鑰」表格中啟用。

金鑰在停用之後無法立即啟用。 如果因錯誤而停用金鑰,請至少等待 30 秒,然後再嘗試重新啟用它。

使用 API 停用及啟用根金鑰

使用 API 停用根金鑰

您可以建立 POST,以停用處於 作用中 金鑰狀態的根金鑰 呼叫下列端點。

https://<region>.kms.cloud.ibm.com/api/v2/keys/<keyID_or_alias>/actions/disable
  1. 擷取鑑別認證以使用服務中的金鑰

    若要停用根金鑰,您必須獲指派實例或金鑰的 管理員 服務存取角色。 瞭解 IAM 角色如何對映至 Key Protect 服務動作,查看 服務存取角色

  2. 取得您要停用的根金鑰的 ID。

    您可以建立 GET /v2/keys 來擷取指定金鑰的 ID 要求,或透過在 Key Protect 儀表板。

  3. 執行下列 curl 指令,以停用根金鑰並暫停其加密及解密作業。

    $ curl -X POST \
        "https://<region>.kms.cloud.ibm.com/api/v2/keys/<keyID_or_alias>/actions/disable" \
        -H "authorization: Bearer <IAM_token>" \
        -H "bluemix-instance: <instance_ID>" \
        -H "x-kms-key-ring: <key_ring_ID>"
    

    根據下表取代範例要求中的變數。

描述使用Key Protect API 停用根金鑰所需的變數。
變數 說明
區域 **必填。 代表您的 Key Protect 實例所在地理區域的區域縮寫,例如 us-southeu-gb

如需更多資訊,請參閱「區域服務端點」。
keyID_or_alias 必填。 您要停用的根金鑰的唯一識別碼或別名。
IAM_token 必填。 您的 IBM Cloud 存取記號。 請在 curl 請求中包含 IAM 憑證的完整內容,包括 Bearer 值。

如需更多資訊,請參閱「取得存取憑證」。
instance_id 必填。 分配給您的 Key Protect 服務實例的唯一識別碼。

如需更多資訊,請參閱「檢索實例 ID」。
key_ring_ID 選用。 金鑰所屬金鑰環的唯一 ID。 如果未指定,Key Protect 將在與指定實例相關聯的每個金鑰環中搜尋金鑰。 建議為更最佳化的要求指定金鑰環 ID。

附註: 在沒有 x-kms-key-ring 標頭的情況下建立之金鑰的金鑰環 ID 為: 預設值。

如需相關資訊,請參閱 分組索引鍵

成功的停用請求會傳回 HTTP 204 No Content 回應、該回應表示根金鑰已停用加密和解密 操作。

選用項目: 驗證金鑰停用

您可以發出取得金鑰 meta 資料要求來驗證已停用金鑰:

$ curl -X GET \
    "https://<region>.kms.cloud.ibm.com/api/v2/keys/<keyID_or_alias>/metadata" \
    -H "accept: application/vnd.ibm.kms.key+json" \
    -H "authorization: Bearer <IAM_token>" \
    -H "bluemix-instance: <instance_ID>"

其中 <keyID_or_alias> 是金鑰的 ID 或別名,<instance_ID> 是實例的名稱,而 <IAM_token> 是 IAM 記號。

檢閱回應內文中的 state 欄位,以驗證金鑰已轉移至 已暫停 金鑰狀態。 下列 JSON 輸出顯示已停用根金鑰的 meta 資料詳細資料。

已暫停 索引鍵狀態的整數對映是 2。 「主要狀態」是以 NIST SP 800-57 為基礎。

{
    "metadata": {
        "collectionType": "application/vnd.ibm.kms.key+json",
        "collectionTotal": 1
    },
    "resources": [
        {
            "type": "application/vnd.ibm.kms.key+json",
            "id": "02fd6835-6001-4482-a892-13bd2085f75d",
            "name": "...",
            "description": "...",
            "tags": [
                "..."
            ],
            "state": 2,
            "extractable": false,
            "crn": "crn:v1:bluemix:public:kms:us-south:a/f047b55a3362ac06afad8a3f2f5586ea:12e8c9c2-a162-472d-b7d6-8b9a86b815a6:key:02fd6835-6001-4482-a892-13bd2085f75d",
            "imported": true,
            "creationDate": "2020-03-10T20:41:27Z",
            "createdBy": "...",
            "algorithmType": "Deprecated",
            "algorithmMetadata": {
                "bitLength": "128",
                "mode": "Deprecated"
            },
            "algorithmBitSize": 128,
            "algorithmMode": "Deprecated",
            "lastUpdateDate": "2020-03-16T20:41:27Z",
            "keyVersion": {
                "id": "30372f20-d9f1-40b3-b486-a709e1932c9c",
                "creationDate": "2020-03-12T03:37:32Z"
            },
            "dualAuthDelete": {
                "enabled": false
            },
            "deleted": false
        }
    ]
}

使用 API 啟用已停用的根金鑰

您可以建立 POST,以啟用處於 已暫停 金鑰狀態的根金鑰 呼叫下列端點。

https://<region>.kms.cloud.ibm.com/api/v2/keys/<keyID_or_alias>/actions/enable
  1. 擷取鑑別認證以使用服務中的金鑰

    若要啟用根金鑰,您必須獲指派實例或金鑰的 管理員 服務存取角色。 瞭解 IAM 角色如何對映至 Key Protect 服務動作,查看 服務存取角色

  2. 取得您要啟用的已停用根金鑰的 ID。

    您可以建立 GET /v2/keys 來擷取指定金鑰的 ID 要求,或透過在 Key Protect 儀表板。

  3. 執行下列 curl 指令,以啟用根金鑰並還原其加密及解密作業。

    在停用根金鑰之後,您必須等待 30 秒,才能再次啟用它。

    $ curl -X POST \
        "https://<region>.kms.cloud.ibm.com/api/v2/keys/<keyID_or_alias>/actions/enable" \
        -H "authorization: Bearer <IAM_token>" \
        -H "bluemix-instance: <instance_ID>" \
        -H "x-kms-key-ring: <key_ring_ID>"
    

根據下表取代範例要求中的變數。

描述使用Key Protect API 啟用根金鑰所需的變數。
變數 說明
區域 必填。 代表您的 Key Protect 實例所在地理區域的區域縮寫,例如 us-southeu-gb

如需更多資訊,請參閱「區域服務端點」。
keyID_or_alias 必填。 您要啟用的根金鑰的唯一識別碼或別名。
IAM_token 必填。 您的 IBM Cloud 存取記號。 請在 curl 請求中包含 IAM 憑證的完整內容,包括 Bearer 值。

如需更多資訊,請參閱「取得存取憑證」。
instance_id 必填。 分配給您的 Key Protect 服務實例的唯一識別碼。

如需更多資訊,請參閱「檢索實例 ID」。
key_ring_ID 選用。 金鑰所屬金鑰環的唯一 ID。 如果未指定,Key Protect 將在與指定實例相關聯的每個金鑰環中搜尋金鑰。 建議為更最佳化的要求指定金鑰環 ID。

附註: 在沒有 x-kms-key-ring 標頭的情況下建立之金鑰的金鑰環 ID 為: 預設值。

如需相關資訊,請參閱 分組索引鍵

啟用請求成功後,會傳回 HTTP 204 No Content 回應,表示已恢復根金鑰的加密和解密功能。表示根密鑰已恢復用於加密和解密 操作。

選用項目: 驗證金鑰啟用

您可以發出取得金鑰 meta 資料要求來驗證已啟用金鑰:

$ curl -X GET \
    "https://<region>.kms.cloud.ibm.com/api/v2/keys/<keyID_or_alias>/metadata" \
    -H "accept: application/vnd.ibm.kms.key+json" \
    -H "authorization: Bearer <IAM_token>" \
    -H "bluemix-instance: <instance_ID>"

其中 <keyID_or_alias> 是金鑰的 ID 或別名,<instance_ID> 是實例的名稱,而 <IAM_token> 是 IAM 記號。

檢閱回應內文中的 state 欄位,以驗證根金鑰已轉移至 作用中 金鑰狀態。 下列 JSON 輸出顯示作用中金鑰的 meta 資料詳細資料。

作用中 索引鍵狀態的整數對映是 1。 「主要狀態」是以 NIST SP 800-57 為基礎。

{
    "metadata": {
        "collectionType": "application/vnd.ibm.kms.key+json",
        "collectionTotal": 1
    },
    "resources": [
        {
            "type": "application/vnd.ibm.kms.key+json",
            "id": "02fd6835-6001-4482-a892-13bd2085f75d",
            "name": "...",
            "description": "...",
            "tags": [
                "..."
            ],
            "state": 1,
            "extractable": false,
            "crn": "crn:v1:bluemix:public:kms:us-south:a/f047b55a3362ac06afad8a3f2f5586ea:12e8c9c2-a162-472d-b7d6-8b9a86b815a6:key:02fd6835-6001-4482-a892-13bd2085f75d",
            "imported": true,
            "creationDate": "2020-03-10T20:41:27Z",
            "createdBy": "...",
            "algorithmType": "AES",
            "algorithmMetadata": {
                "bitLength": "128",
                "mode": "CBC_PAD"
            },
            "algorithmBitSize": 128,
            "algorithmMode": "CBC_PAD",
            "lastUpdateDate": "2020-03-16T20:41:27Z",
            "keyVersion": {
                "id": "30372f20-d9f1-40b3-b486-a709e1932c9c",
                "creationDate": "2020-03-12T03:37:32Z"
            },
            "dualAuthDelete": {
                "enabled": false
            },
            "deleted": false
        }
    ]
}