ルート鍵の無効化と有効化

IBM® Key Protect for IBM Cloud® を使用して、ルート鍵を無効化または有効化したり、鍵に関連付けられているクラウド上のデータへのアクセス権限を一時的に取り消したりできます。

管理者は、機密漏れ、暗号漏えい、データ漏えいの発生が疑われる場合に、 一時的にルート鍵を無効にする必要が ある場合があります。 ルート鍵を無効にすると、その鍵の暗号化操作と復号操作が中断されます。 セキュリティー・リスクが なくなったことを確認したら、無効にしたルート鍵を有効化して、 データへのアクセスを復元できます。

以下と統合されているクラウド・サービスを使用している場合 (Key Protect)、ルート鍵を無効にした後、データにアクセスできない可能性があります。 統合サービスが 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. アプリケーションの詳細ページで、**「鍵 (Keys)」**テーブルを使用して、 Key Protect インスタンス内の鍵を表示します。

  5. 「⋯」アイコンをクリックして、 無効にする鍵に関するオプションのリストを開きます。

  6. オプションメニューから「無効にする」をクリックし、更新された「キー」テーブルで、そのキーが無効になったことを確認します

コンソールでのルート鍵の有効化

サービスに鍵を作成するか既存の鍵をインポートし、ルート鍵を無効化した後、鍵を有効にするには、以下の手順を実行します。

  1. IBM Cloud コンソールにログインしてください

  2. 「メニュー」>**「リソース・リスト」**に移動し、リソースのリストを表示します。

  3. IBM Cloud リソース・リストで、Key Protect のプロビジョン済みインスタンスを選択します。

  4. アプリケーションの詳細ページで、**「鍵 (Keys)」**テーブルを使用して、サービス内の鍵を参照します。

  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 を取得します。

    指定した鍵の ID を取得するには、 GET /v2/keys 要求、または以下の場所で鍵を表示することにより、 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 を使用してルートキーを無効にするために必要な変数について説明します。
変数 説明
リージョン **必須us-southeu-gb といった地域略称は、 Key Protect インスタンスが配置されている地理的エリアを表します。

詳細については、「 地域別サービスエンドポイント 」を参照してください。
keyID_or_alias 必須。 無効にするルート鍵の固有 ID または別名。
IAM_token 必須。 IBM Cloud アクセス・トークン。 Bearer 値を含む、IAM トークンの全コンテンツを cURL 要求に組み込みます。

詳細については、「 アクセストークンの取得 」を参照してください。
instance_ID 必須。 Key Protect サービス・インスタンスに割り当てられた固有 ID。

詳細については、「 インスタンス ID の取得 」を参照してください。
key_ring_ID オプション。 鍵が含まれている鍵リングの固有 ID。 指定しない場合は、Key Protect が、指定されたインスタンスに関連付けられているすべての鍵リングで鍵を検索します。 鍵リング ID を指定して、より最適化された要求を行うことをお勧めします。

注: x-kms-key-ring ヘッダーを指定せずに作成されたキーのキーリングIDは、「default」となります。

詳しくは、 グループ化キー を参照してください。

無効化要求が成功すると、HTTP 204 No Content 応答が返されます。これは、ルート鍵が暗号化操作および暗号化解除操作について無効になっていることを示します。

オプション: 鍵の無効化の確認

鍵メタデータの取得の要求を実行して、鍵が無効になったことを確認できます。

$ 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 出力は、無効にされたルート鍵のメタデータ詳細を示しています。

_「サスペンド」_キー状態の整数マッピングは 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 を使用した無効のルート鍵の有効化

Suspended 」状態にあるルートキーを有効にするには、次の操作を行います。 POST 以下のエンドポイントにリクエストを送信します。

https://<region>.kms.cloud.ibm.com/api/v2/keys/<keyID_or_alias>/actions/enable
  1. サービス内で鍵の処理を行うために、認証資格情報を取得します

    ルート・キーを無効にするには、インスタンスまたはキーに対する_「マネージャー」_サービス・アクセス権限ロールが割り当てられている必要があります。 IAM ロールがどのように Key Protect サービス・アクションにどのようにマップされるかについては、サービス・アクセス役割を確認してください。

  2. 有効にする無効化されたルート鍵の ID を取得します。

    指定した鍵の ID を取得するには、 GET /v2/keys 要求、または以下の場所で鍵を表示することにより、 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 を使用してルートキーを有効にするために必要な変数について説明します。
変数 説明
リージョン 必須us-southeu-gb といった地域略称は、 Key Protect インスタンスが配置されている地理的エリアを表します。

詳細については、「 地域別サービスエンドポイント 」を参照してください。
keyID_or_alias 必須。 有効にするルート鍵の固有 ID または別名。
IAM_token 必須。 IBM Cloud アクセス・トークン。 Bearer 値を含む、IAM トークンの全コンテンツを cURL 要求に組み込みます。

詳細については、「 アクセストークンの取得 」を参照してください。
instance_ID 必須。 Key Protect サービス・インスタンスに割り当てられた固有 ID。

詳細については、「 インスタンス ID の取得 」を参照してください。
key_ring_ID オプション。 鍵が含まれている鍵リングの固有 ID。 指定しない場合は、Key Protect が、指定されたインスタンスに関連付けられているすべての鍵リングで鍵を検索します。 鍵リング ID を指定して、より最適化された要求を行うことをお勧めします。

注: x-kms-key-ring ヘッダーを指定せずに作成されたキーのキーリングIDは、「default」となります。

詳しくは、 グループ化キー を参照してください。

有効化要求が成功すると、HTTP 204 No Content 応答が返されます。これは、ルート鍵が暗号化操作および暗号化解除操作について元の状態に戻ったことを示します。

オプション: 鍵の有効化の確認

鍵メタデータの取得の要求を実行して、鍵が有効になったことを確認できます。

$ 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 出力は、アクティブな鍵のメタデータ詳細を示しています。

「アクティブ」 キー状態の整数マッピングは 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
        }
    ]
}