鍵のクラウド化
暗号鍵には、鍵の識別に役立つメタデータや、データの暗号化と暗号化解除に使用される_鍵素材_などの情報のサブセットが含まれています。
Key Protect を使用して鍵を作成すると、このサービスがユーザーに代わって、クラウド・ベースのハードウェア・セキュリティー・モジュール (HSM) に基づく暗号鍵素材を生成します。 ただし、ビジネス要件によっては、内部ソリューションから鍵素材を生成してから、以下に鍵をインポートしてオンプレミスの鍵管理インフラストラクチャーをクラウドに拡張する必要がある場合があります。 Key Protect.
メリット | 説明 |
---|---|
独自の鍵の取り込み (Bring Your Own Key (BYOK)) | 強い鍵をオンプレミスのハードウェア・セキュリティー・モジュール (HSM) から生成することによって、鍵管理手法を完全に制御し、強化する必要があるとします。 使用している内部鍵管理インフラストラクチャーから対称鍵をエクスポートすることを選択する場合、Key Protect を使用して、それらの鍵をクラウドにセキュアに取り込むことができます。 |
ルート鍵素材のセキュアなインポート | 鍵をクラウドにエクスポートするときには、鍵素材が送信中に確実に保護されることが望まれます。 インポート・トークンの使用によって中間者攻撃を防ぐことで、ルート鍵素材を Key Protect インスタンスにセキュアにインポートできます。 |
インポートした鍵には、自動ローテーションをスケジュールできません。 手動でローテートする必要があります。
鍵素材のインポートについての事前計画
ルート鍵素材をサービスにインポートする準備ができたら、以下の考慮事項に留意してください。
鍵素材の作成のオプションを検討する
セキュリティーのニーズに基づいて、256 ビット対称暗号鍵の作成のオプションを検討します。
例えば、FIPS で認定されたオンプレミスのハードウェア・セキュリティー・モジュール (HSM) に裏付けられた社内鍵管理システムを使用して、クラウドに鍵を持ち込む前に鍵素材を生成することが可能です。
プルーフ・オブ・コンセプトを構築する場合は、暗号化ツールキット を使用することもできます。 OpenSSL にインポートできる鍵素材を生成することもできます。 テストのニーズに対応する Key Protect にインポートできる主要な資料を生成することもできます。
Key Protect への鍵素材のインポートのオプションを選択する
環境またはワークロードで必要なセキュリティー・レベルに基づいて、ルート鍵のインポートの 2 つのオプションから選択します。
デフォルトでは、Key Protect は、Transport Layer Security (TLS) 1.2 および 1.3 プロトコルのサポートされる暗号を使用して、転送中の鍵素材を暗号化します。 これらの暗号について詳しくは、データ暗号化を参照してください。
PoC (概念検証) を構築する場合、またはサービスを初めて試す場合は、ルート鍵素材を以下の場所にインポートできます。 Key Protect (このデフォルト・オプションを使用)。
TLS を超えるセキュリティー・メカニズムを必要とするワークロードの場合は、インポート・トークンを使用して、ルート鍵素材の暗号化とサービスへのインポートを行うことも可能です。
鍵素材の暗号化について事前に計画を立てる
インポート・トークンを使用して鍵素材を暗号化することを選択した場合、鍵素材に対して RSA 暗号化を実行する方法を決定します。 以下を使用する必要があります。 以下によって指定される RSAES_OAEP_SHA_256
暗号化スキーム
PKCS #1 v2.1 RSA 暗号化の標準。
内部鍵管理システムまたはオンプレミス HSM の機能を検討してオプションを判別するか、または、例えば、セキュアなインポートについてのチュートリアルを参照してください。
nonce の暗号化について事前に計画を立てる
インポート・トークンを使用して鍵素材を暗号化することを選択した場合、Key Protect によって配布された nonce に対して AES-GCM 暗号化を実行する方法も決定する必要があります。
nonce は、悪意のある攻撃や不正な呼び出しから保護するために要求が元のものであることを検査するセッション・トークンとして機能します。
内部鍵管理システムまたはオンプレミス HSM の機能を検討してオプションを判別するか、または、例えば、セキュアなインポートについてのチュートリアルを参照してください。
インポートされた鍵素材のライフサイクルを管理する
鍵素材をサービスにインポートした後、鍵のライフサイクル全体を管理する責任があることに留意してください。 以下を使用します。 Key Protect API を使用すると、鍵をサービスにアップロードすることを決定したときに、鍵の有効期限を設定できます。
ただし、インポートされたルート鍵をローテートしたい場合は、既存の鍵を無効にして置き換えるために、新しい鍵素材を生成して提供する必要があります。
インポート・トークンの使用
鍵素材を Key Protect にインポートする前に暗号化する場合は、以下を使用して Key Protect インスタンスのインポート・トークンを作成できます。 Key Protect API。
インポート・トークンは、 Key Protect のリソース・タイプであり、Key Protect インスタンスへの鍵素材のセキュアなインポートを可能にします。 インポート・トークンの内容を使用して鍵素材をオンプレミスで暗号化することにより、 指定したポリシーに基づいて、ルート鍵が Key Protect 処理中に保護されます。 例えば、時間および使用回数に基づいて使用を制限するポリシーをインポート・トークンに対して設定できます。 a
仕組みについて
Key Protect インスタンスの場合はインポート・トークンを作成するとき、 Key Protect は、その HSM から 4096 ビットの RSA 鍵ペアを生成します。
インポート・トークンを取得すると、鍵を暗号化して Key Protect にアップロードするために使用できる公開鍵がサービスから提供されます。
インポート・トークンのワークフローを以下のリストで示します。
-
インポート・トークンを作成する要求を送信します。
-
Key Protect は、その HSM から RSA 鍵ペアを生成します。
-
公開鍵は、作成時に指定したポリシーに基づいて、取得できるようになります。
-
秘密鍵は、抽出不能になり、HSM から出ることはありません。
-
-
インポート・トークンを取得する要求を送信します。
-
インポート・トークンの内容を受け取ります。以下が含まれます。
-
サービスにインポートする鍵素材を暗号化するための公開鍵。
-
鍵インポート要求を検証するために使用される nonce 値。
-
-
-
サービスにインポートする鍵を準備します。
-
オンプレミス鍵管理メカニズムを使用して鍵素材を生成します。
-
環境に対応している AES-GCM 暗号化方式を使用して、鍵素材で nonce 値を暗号化します。
-
環境に対応している RSA 暗号化方式を使用して、公開鍵で鍵素材を暗号化します。
-
-
鍵をインポートする要求を送信します。
-
暗号化された鍵素材、暗号化された nonce、および、AES-GCM アルゴリズムによって生成された初期設定ベクトル (IV) を指定します。
-
Key Protect は、要求を検証し、 暗号化されたパケットを復号し、鍵素材を Key Protect インスタンスにルート鍵として保管します。
-
1 つの Key Protect インスタンスで一度に作成できるインポート・トークンは 1 つのみです。 インポートトークンの検索制限の詳細については、Key Protectを参照してください。APIリファレンスドキュメントを参照してください。
インポート・トークン機能を試すには、チュートリアル: 暗号鍵の作成とインポートを参照してください。
API メソッド
これらの作業の裏では、Key Protect API がインポート・トークンの作成処理を駆動します。
次の表に、以下のインポート・トークンをセットアップする API メソッドをリストします。 Key Protect インスタンス。
メソッド | 説明 |
---|---|
POST api/v2/import_token |
インポート・トークンを作成します。 |
GET api/v2/import_token |
インポート・トークンを取得する |
以下で鍵をプログラムで管理する方法について詳しくは (Key Protect)、以下を参照してください。 Key Protect API リファレンス資料。
次の作業
-
Key Protect インスタンス用のインポート・トークンを作成する方法については、 インポート・トークンの作成を 参照してください。
-
サービスへの鍵のインポートについて詳しくは、ルート鍵のインポートを参照してください。