ルート鍵の無効化
IBM Cloud® Hyper Protect Crypto Services を使用して、ルート鍵を無効化または有効化したり、鍵に関連付けられているクラウド上のデータへのアクセス権限を一時的に取り消したりできます。
管理者は、機密漏れ、暗号漏えい、データ漏えいの発生が疑われる場合に、 一時的にルート鍵を無効にする必要が ある場合があります。 ルート鍵を無効にすると、暗号化操作と復号操作が一時的に使用不可になります。 セキュリティー・リスクが なくなったことを確認したら、無効にしたルート鍵を有効にして、 データへのアクセスを復元できます。
Hyper Protect Crypto Services に統合されたクラウド・サービスを使用している場合は、ルート鍵を無効にすると、データにアクセスできなくなる可能性があります。 統合されたサービスで、Hyper Protect Crypto Services ルート鍵の無効化によるデータへのアクセスの取り消しがサポートされているかどうかを調べるには、そのサービスの資料を参照してください。
ルート鍵を無効にすると、鍵は以下のように移動します。 中断状態。データを暗号的に保護するために使用できなくなりました。
以前に無効にされたルート鍵を有効にすると、その鍵は「中断」状態から「アクティブ」状態に移行します。 このアクションによって、鍵の暗号化操作と復号操作が元に戻されます。
ルート鍵を再度有効にするには、ルート鍵を無効にしてから 30 秒待つ必要があります。
統合されたクラウド・サービスで、無効にされたルート鍵へのアクセスの取り消しがサポートされている場合に、そのサービスが、ルート鍵の関連データへのアクセスを取り消したり復元したりするまでに最大 4 時間かかる可能性があります。 関連データへのアクセス権限が取り消されるまたは復元されると、対応する有効化イベントが Activity Tracker Web UI に表示されます。
UI を使用したルート鍵の無効化および有効化
グラフィカル・インターフェースを使用してルート鍵を有効または無効にする場合は、UI を使用できます。
ルート鍵の無効化
既存の鍵を作成するか、既存の鍵をサービスにインポートした後、鍵を無効にするには、以下の手順を実行します。
- UI にログインします。
- 「メニュー」>**「リソース・リスト」**に移動し、リソースのリストを表示します。
- IBM Cloud リソース・リストで、Hyper Protect Crypto Services のプロビジョン済みインスタンスを選択します。
- **「KMS 鍵 (KMS keys)」ページで、「鍵」**テーブルを使用して、このサービス・インスタンの鍵を参照します。
- アクション・アイコン
をクリックして、使用不可にするキーのオプションのリストを開きます。
- オプション・メニューから、**「鍵の無効化 (Disable key)」をクリックし、無効にする鍵を確認するために鍵名を入力してから、「鍵の無効化 (Disable key)」**をクリックします。
鍵を無効にすると、**「鍵」**テーブルで、鍵のSuspended「状態」の表示がに変わります。
ルート鍵の有効化
無効 になっているルート鍵を再度有効にするには、以下の手順を実行します。
ルート鍵を再度有効にするには、ルート鍵を無効にしてから 30 秒待つ必要があります。
- UI にログインします。
- 「メニュー」>**「リソース・リスト」**に移動し、リソースのリストを表示します。
- IBM Cloud リソース・リストで、Hyper Protect Crypto Services のプロビジョン済みインスタンスを選択します。
- **「KMS 鍵 (KMS keys)」ページで、「鍵」**テーブルを使用して、このサービスの鍵を参照します。
- アクション・アイコン
をクリックして、使用可能にするキーのオプションのリストを開きます。
- オプション・メニューから、**「鍵の有効化 (Enable key)」**をクリックします。
キーが有効になると、キーの**「都道府県」が「キー」**テーブルの Active に転送されます。
API を使用したルート鍵の無効化および有効化
ルート鍵の無効化
ルート鍵を無効にすると、その鍵は 「中断状態」 に移行し、データの暗号化に使用できなくなります。
統合されたクラウド・サービスで、無効にされたルート鍵へのアクセスの取り消しがサポートされている場合に、そのサービスが、ルート鍵の関連データへのアクセスを取り消すまでに最大 4 時間かかる可能性があります。 関連データへのアクセス権限が取り消されると、対応する無効化イベントが Activity Tracker の Web UI に表示されます。
以下のエンドポイントに対して POST 呼び出しを行うことにより、アクティブ鍵状態のルート鍵を無効にすることができます。
https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/actions/disable
-
サービス内で鍵の処理を行うために、認証資格情報を取得します。
ルート・キーを無効にするには、インスタンスまたはキーに対する_「マネージャー」_サービス・アクセス権限ロールが割り当てられている必要があります。 IAM 役割と Hyper Protect Crypto Services サービスでのアクションの対応関係について詳しくは、サービス・アクセスの役割を参照してください。
-
キー管理サービス API エンドポイント URL をリトリーブします。
「概要」>「接続」>**「鍵管理エンドポイント URL」**によって、プロビジョンされたサービス・インスタンスのダッシュボードから API エンドポイントを取得できます。 あるいは、API 呼び出しを使用して動的に API エンドポイント URL を取得 することもできます。 必要に応じて、パブリックまたはプライベートの鍵管理エンドポイント URL を選択します。
-
無効にするルート鍵の ID を取得します。
指定した鍵の ID を取得するには、 鍵のリスト API 要求を行うか、UI で鍵を表示します。
-
次の API 呼び出しで、ルート鍵を無効にして暗号化操作と復号操作を一時的に停止不可にします。
curl -X POST \ "https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/actions/disable" \ -H "authorization: Bearer <IAM_token>" \ -H "bluemix-instance: <instance_ID>" \ -H "x-kms-key-ring: <key_ring_ID>"次の表に従って、例の要求内の変数を置き換えてください。
変数 説明 region必須。 Hyper Protect Crypto Services サービス・インスタンスが存在する地理的領域を表す地域の省略形 ( us-southやeu-deなど)。 詳細については、リージョナル・サービス・エンドポイントを参照してください。port必須。 API エンドポイントのポート番号。 key_ID必須。 無効にするルート鍵の 固有 ID。 ||
IAM_token| 必須。 IBM Cloud アクセス・トークン。 Bearer 値を含む、IAMトークンの全コンテンツを cURL 要求に組み込みます。 詳細については、アクセス・トークンのリトリーブを参照してください。 | |instance_ID| 必須。 Hyper Protect Crypto Services サービス・インスタンスに割り当てられた固有 ID。 詳細については、インスタンス ID のリトリーブを参照してください。 | |key_ring_ID| オプション。 鍵が属する鍵リングの固有 ID。 指定しないと、Hyper Protect Crypto Services は、指定されたインスタンスに関連付けられているすべての鍵リングで鍵を検索します。 このため、鍵リング ID を指定して、より最適化された要求を行うことをお勧めします。 \n \n 注:x-kms-key-ringヘッダーを指定せずに作成した鍵の鍵リング ID は「default」になります。 詳しくは、鍵リングの管理を参照してください。 |無効化要求が成功すると、HTTP
204 No Content応答が返されます。これは、ルート鍵が暗号化操作および暗号化解除操作について無効になっていることを示します。 -
オプション: 鍵に関する詳細を取得して、ルート鍵が無効になっていることを確認します。
curl -X GET \ https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_id>/metadata \ -H 'authorization: Bearer <IAM_token>' \ -H 'bluemix-instance: <instance_ID>' \ -H 'accept: application/vnd.ibm.kms.key+json'応答本体の
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:hs-crypto: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 } ] }
無効化されたルート鍵の有効化
以前に無効にされたルート鍵を有効にすると、その鍵は「中断」状態から「アクティブ」状態に移行します。 このアクションによって、鍵の暗号化操作と復号操作が元に戻されます。
統合されたクラウド・サービスで、無効にされたルート鍵へのアクセスの取り消しがサポートされている場合に、そのサービスが、ルート鍵の関連データへのアクセスを復元するまでに最大 4 時間かかる可能性があります。 関連データへのアクセス権限が復元されると、対応する有効化イベントが Activity Tracker Web UI に表示されます。
以下のエンドポイントに対して POST 呼び出しを行うことにより、鍵の中断状態にあるルート鍵を有効にすることができます。
https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/actions/enable
-
サービス内で鍵の処理を行うために、認証資格情報を取得します。
ルート・キーを無効にするには、インスタンスまたはキーに対する_「マネージャー」_サービス・アクセス権限ロールが割り当てられている必要があります。 IAM 役割と Hyper Protect Crypto Services サービスでのアクションの対応関係について詳しくは、サービス・アクセスの役割を参照してください。
-
キー管理サービス API エンドポイント URL をリトリーブします。
プロビジョンされたサービス・インスタンスのダッシュボードから、 「管理」 > 「鍵管理エンドポイント URL」 をクリックして API エンドポイントを取得することも、API 呼び出しを使用して動的に API エンドポイント URL を取得 することもできます。 必要に応じて、パブリックまたはプライベートの鍵管理エンドポイント URL を選択します。
-
有効にする無効化されたルート鍵の ID を取得します。
指定された鍵の ID を取得するには、 list keys API requestを実行するか、 Hyper Protect Crypto Services ダッシュボードで鍵を表示します。
-
次の API 呼び出しで、ルート鍵を有効にして暗号化操作と復号操作を復元します。
ルート鍵を再度有効にするには、ルート鍵を無効にしてから 30 秒待つ必要があります。
curl -X POST \ "https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/actions/enable" \ -H "authorization: Bearer <IAM_token>" \ -H "bluemix-instance: <instance_ID>" \ -H "x-kms-key-ring: <key_ring_ID>"次の表に従って、例の要求内の変数を置き換えてください。
変数 説明 region必須。 Hyper Protect Crypto Services サービス・インスタンスが存在する地理的領域を表す地域の省略形 ( us-southやeu-deなど)。 詳細については、リージョナル・サービス・エンドポイントを参照してください。port必須。 API エンドポイントのポート番号。 key_ID必須。 有効にするルート鍵の 固有 ID。 ||
IAM_token| 必須。 IBM Cloud アクセス・トークン。 Bearer 値を含む、IAMトークンの全コンテンツを cURL 要求に組み込みます。 詳細については、アクセス・トークンのリトリーブを参照してください。 | |instance_ID| 必須。 Hyper Protect Crypto Services サービス・インスタンスに割り当てられた固有 ID。 詳細については、インスタンス ID のリトリーブを参照してください。 | |key_ring_ID| オプション。 鍵が属する鍵リングの固有 ID。 指定しないと、Hyper Protect Crypto Services は、指定されたインスタンスに関連付けられているすべての鍵リングで鍵を検索します。 このため、鍵リング ID を指定して、より最適化された要求を行うことをお勧めします。 \n \n 注:x-kms-key-ringヘッダーを指定せずに作成した鍵の鍵リング ID は「default」になります。 詳しくは、鍵リングの管理を参照してください。 |有効化要求が成功すると、HTTP
204 No Content応答が返されます。これは、ルート鍵が暗号化操作および暗号化解除操作について元の状態に戻ったことを示します。 -
オプション: 鍵に関する詳細を取得して、ルート鍵が有効になっていることを確認します。
curl -X GET \ https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_id>/metadata \ -H 'authorization: Bearer <IAM_token>' \ -H 'bluemix-instance: <instance_ID>' \ -H 'accept: application/vnd.ibm.kms.key+json'応答本体の
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:hs-crypto: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 } ] }