根據輪替原則來輪替根金鑰

您可以使用以下命令為根密鑰設定自動輪換策略IBM Cloud®Hyper Protect Crypto Services。

當您為根金鑰設定自動替換原則時,會定期縮短金鑰的生命期限,並且會限制該金鑰所保護的資訊量。

您只能為 Hyper Protect Crypto Services 中產生的根金鑰建立替換原則。 如果您一開始匯入根金鑰,則必須提供新的 base64 編碼金鑰資料才能替換金鑰。 如需相關資訊,請參閱 隨需應變替換根金鑰

想要進一步瞭解 Hyper Protect Crypto Services 中的金鑰替換選項嗎? 請參閱比較金鑰替換選項,以取得更多資訊。

在使用者介面中管理替換原則

如果您喜歡使用圖形介面管理根密鑰的策略,則可以使用 UI。

  1. 登入使用者介面

  2. 選單>資源列表查看您的資源清單。

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

  4. KMS 金鑰頁面,使用按鍵表來瀏覽您服務中的金鑰。

  5. 按一下 動作 圖示 「動作」圖示,以開啟特定按鍵的選項清單。

  6. 從選項選單中,按一下編輯密鑰輪換策略管理密鑰的輪換策略。

  7. 金鑰旋轉 切換至 開啟,並移動調節器來選取旋轉頻率 (以月為單位)。

    如果您的金鑰具有現有替換原則,則介面會顯示金鑰的現有替換期間。

  8. 點選保存政策設定密鑰的策略。

當要根據您指定的替換間隔來替換金鑰時,Hyper Protect Crypto Services 會自動將根金鑰取代為新的金鑰資料。

使用 API 管理替換原則

檢視替換原則

對於進階視圖,您可以透過建立一個來瀏覽與根金鑰關聯的輪換策略 GET 調用以下端點。

https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/policies
  1. 擷取服務和鑑別認證

  2. 執行下列 cURL 指令,以擷取指定金鑰的替換原則。

    curl -X GET \
      https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/policies \
      -H 'authorization: Bearer <IAM_token>' \
      -H 'bluemix-instance: <instance_ID>' \
      -H 'correlation-id: <correlation_ID>' \
      -H 'content-type: application/vnd.ibm.kms.policy+json'
    

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

    表 1. 說明使用 API 建立旋轉原則所需的變數
    變數 說明
    region 必要。 地區縮寫,例如 us-south 或者 eu-de,代表您所在的地理區域Hyper Protect Crypto Services服務實例駐留。 如需相關資訊,請參閱地區服務端點
    port 必要。 API 端點的埠號。
    key_ID 必要。 具有現有替換原則的根金鑰的唯一 ID。
    IAM_token 必要。 您的 IBM Cloud 存取記號。 請在 cURL 要求中包含 IAM 記號的完整內容,包括 Bearer 值。 有關更多信息,請參閱 檢索訪問令牌
    instance_ID 必要。 指派給您 Hyper Protect Crypto Services 服務實例的唯一 ID。 有關更多信息,請參閱 檢索實例 ID
    correlation_ID 用來追蹤及關聯交易的唯一 ID。

    成功的 GET api/v2/keys/{id}/policies 回應會傳回與您的金鑰相關聯的原則詳細資料。 下列 JSON 物件顯示具有現有替換原則的根金鑰的範例回應。

    {
        "metadata": {
            "collectionTotal": 1,
            "collectionType": "application/vnd.ibm.kms.policy+json"
        },
        "resources": [
        {
            "id": "a1769941-9805-4593-b6e6-290e42dd1cb5",
            "rotation": {
                "interval_month": 1
            },
            "createdby": "IBMid-503CKNRHR7",
            "createdat": "2019-03-06T16:31:05Z",
            "updatedby": "IBMid-503CKNRHR7",
            "updatedat": "2019-03-06T16:31:05Z"
        }
      ]
    }
    

    interval_month 值指出金鑰替換頻率(以月為單位)。

建立替換原則

對下列端點發出 PUT 呼叫來建立根金鑰的替換原則。

https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/policies
  1. 擷取服務和鑑別認證

  2. 執行下列 cURL 指令,為指定的金鑰建立替換原則。

    curl -X PUT \
      https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/policies \
      -H 'authorization: Bearer <IAM_token>' \
      -H 'bluemix-instance: <instance_ID>' \
      -H 'correlation-id: <correlation_ID>' \
      -H 'content-type: application/vnd.ibm.kms.policy+json' \
      -d '{
     "metadata": {
       "collectionType": "application/vnd.ibm.kms.policy+json",
       "collectionTotal": 1
     },
     "resources": [
       {
       "type": "application/vnd.ibm.kms.policy+json",
       "rotation": {
         "interval_month": <rotation_interval>
        }
       }
      ]
    }'
    

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

    表 2. 說明使用 API 建立旋轉原則所需的變數
    變數 說明
    region 必要。 地區縮寫,例如 us-south 或者 eu-de,代表您所在的地理區域Hyper Protect Crypto Services服務實例駐留。 如需相關資訊,請參閱地區服務端點
    port 必要。 API 端點的埠號。
    key_ID 必要。 您要為其建立替換原則的根金鑰的唯一 ID。
    IAM_token 必要。 您的 IBM Cloud 存取記號。 請在 cURL 要求中包含 IAM 記號的完整內容,包括 Bearer 值。 有關更多信息,請參閱 檢索訪問令牌
    instance_ID 必要。 指派給您 Hyper Protect Crypto Services 服務實例的唯一 ID。 有關更多信息,請參閱 檢索實例 ID
    correlation_ID 用來追蹤及關聯交易的唯一 ID。
    rotation_interval 必要。 這是一個整數值,用於判定金鑰替換間隔時間(以月為單位)。 最小值是 1 最大值是 12

    成功的 PUT api/v2/keys/{id}/policies 回應會傳回與您的金鑰相關聯的原則詳細資料。 下列 JSON 物件顯示具有現有替換原則的根金鑰的範例回應。

    {
        "metadata": {
            "collectionTotal": 1,
            "collectionType": "application/vnd.ibm.kms.policy+json"
        },
        "resources": [
        {
            "id": "a1769941-9805-4593-b6e6-290e42dd1cb5",
            "rotation": {
                "interval_month": 1
            },
            "createdby": "IBMid-503CKNRHR7",
            "createdat": "2019-03-06T16:31:05Z",
            "updatedby": "IBMid-503CKNRHR7",
            "updatedat": "2019-03-06T16:31:05Z"
        }
      ]
    }
    

更新替換原則

對下列端點發出 PUT 呼叫來更新根金鑰的現有原則。

https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/policies
  1. 擷取服務和鑑別認證

  2. 執行下列 cURL 指令,以取代指定金鑰的替換原則。

    curl -X PUT \
      https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/policies \
      -H 'authorization: Bearer <IAM_token>' \
      -H 'bluemix-instance: <instance_ID>' \
      -H 'correlation-id: <correlation_ID>' \
      -H 'content-type: application/vnd.ibm.kms.policy+json' \
      -d '{
     "metadata": {
       "collectionType": "application/vnd.ibm.kms.policy+json",
       "collectionTotal": 1
     },
     "resources": [
       {
       "type": "application/vnd.ibm.kms.policy+json",
       "rotation": {
         "interval_month": <new_rotation_interval>
        }
       }
      ]
    }'
    

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

    表 3. 說明使用 API 建立旋轉原則所需的變數
    變數 說明
    region 必要。 地區縮寫,例如 us-south 或者 eu-de,代表您所在的地理區域Hyper Protect Crypto Services服務實例駐留。 如需相關資訊,請參閱地區服務端點
    port 必要。 API 端點的埠號。
    key_ID 必要。 您要取代其替換原則的根金鑰的唯一 ID。
    IAM_token 必要。 您的 IBM Cloud 存取記號。 請在 cURL 要求中包含 IAM 記號的完整內容,包括 Bearer 值。 有關更多信息,請參閱 檢索訪問令牌
    instance_ID 必要。 指派給您 Hyper Protect Crypto Services 服務實例的唯一 ID。 有關更多信息,請參閱 檢索實例 ID
    correlation_ID 用來追蹤及關聯交易的唯一 ID。
    new_rotation_interval 必要。 這是一個整數值,用於判定金鑰替換間隔時間(以月為單位)。 最小值是 1 最大值是 12

    成功的 PUT api/v2/keys/{id}/policies 回應會傳回與您的金鑰相關聯的更新原則詳細資料。 下列 JSON 物件顯示具有已更新替換原則的根金鑰的範例回應。

    {
        "metadata": {
            "collectionTotal": 1,
            "collectionType": "application/vnd.ibm.kms.policy+json"
        },
        "resources": [
        {
            "id": "a1769941-9805-4593-b6e6-290e42dd1cb5",
            "rotation": {
                "interval_month": 2
            },
            "createdby": "IBMid-503CKNRHR7",
            "createdat": "2019-03-06T16:31:05Z",
            "updatedby": "IBMid-820DPWINC2",
            "updatedat": "2019-03-10T12:24:22Z"
        }
      ]
    }
    

    在金鑰的原則詳細資料中會更新 interval_monthupdatedat 值。 如果其他使用者更新您最初建立之金鑰的原則,則 updatedby 值也會變更,以顯示傳送要求的人員 ID。

下一步