ハードウェアセキュリティモジュール - AWS CloudHSM による暗号鍵の専有管理

AWS CloudHSM を使った暗号鍵の専有管理を解説。KMS との使い分け、FIPS 140-2 Level 3 準拠、TLS オフロード、Oracle TDE 統合など高度なユースケースを紹介します。

暗号鍵管理の要件と CloudHSM の位置づけ

暗号鍵の管理は情報セキュリティの根幹です。AWS KMS (Key Management Service) はほとんどのユースケースで十分な暗号鍵管理を提供しますが、一部の規制要件やセキュリティポリシーでは、暗号鍵を専有のハードウェアで管理し、AWS を含む第三者がアクセスできない状態を求められます。AWS CloudHSM は FIPS 140-2 Level 3 認証済みの専有 HSM (Hardware Security Module) をクラウド上で提供するサービスです。HSM はユーザーの VPC 内にデプロイされ、暗号鍵の生成・保存・使用がすべて HSM 内部で完結します。AWS は HSM のハードウェア管理 (プロビジョニング、パッチ適用、バックアップ) を担当しますが、HSM 内部の暗号鍵にはアクセスできません。鍵の管理権限はユーザーが完全に保持します。KMS もバックエンドで HSM を使用していますが、マルチテナントの共有 HSM であり、鍵の管理は AWS と共同で行う形です。コンプライアンス要件で「鍵の専有管理」が求められる場合に CloudHSM が必要になります。

この分野について体系的に学びたい方は、関連書籍 (Amazon) も参考になります。

クラスター構成と標準 API

CloudHSM はクラスター単位で管理します。クラスターは 1 つ以上の HSM で構成され、高可用性のために 2 つ以上の AZ に HSM を配置することが推奨されます。クラスター内の HSM 間で暗号鍵が自動的に同期されるため、1 台の HSM が障害を起こしても鍵へのアクセスが継続します。CloudHSM は業界標準の暗号 API をサポートします。PKCS#11 は C/C++ アプリケーションや OpenSSL との統合に使用します。JCE (Java Cryptography Extension) は Java アプリケーションとの統合に使用します。CNG/KSP (Cryptography API: Next Generation / Key Storage Provider) は Windows アプリケーションとの統合に使用します。これらの標準 API に対応しているため、既存のアプリケーションコードの変更は最小限で済みます。HSM クライアントソフトウェアを EC2 インスタンスにインストールし、VPC 内のプライベートネットワーク経由で HSM と通信します。

KMS との使い分け

CloudHSM と KMS の選択は、セキュリティ要件とコストのバランスで判断します。KMS を選ぶべきケースは、AWS サービス (S3、EBS、RDS、Lambda など) の暗号化、一般的なアプリケーションの暗号化、コストを抑えたい場合です。KMS は API 呼び出し 1 万件あたり 0.03 USD と低コストで、AWS サービスとのネイティブ統合が豊富です。CloudHSM を選ぶべきケースは、FIPS 140-2 Level 3 の認証が必要な場合 (KMS は Level 2)、暗号鍵の専有管理が規制で求められる場合、TLS/SSL オフロードで秘密鍵を HSM 内に保持したい場合、PKCS#11 や JCE などの標準暗号 API が必要な場合、Oracle TDE や Microsoft SQL Server の暗号化鍵を HSM で管理したい場合です。KMS のカスタムキーストア機能を使えば、CloudHSM クラスターを KMS のバックエンドとして使用でき、KMS の使いやすさと CloudHSM のセキュリティを両立できます。

TLS オフロードとデータベース暗号化

CloudHSM の代表的なユースケースが TLS/SSL オフロードです。Web サーバー (Nginx、Apache) の TLS 秘密鍵を CloudHSM 内に保持し、TLS ハンドシェイク時の秘密鍵操作を HSM 内で実行します。秘密鍵がサーバーのメモリやディスクに展開されないため、サーバーが侵害されても秘密鍵が漏洩するリスクを排除できます。OpenSSL エンジンとして CloudHSM を設定することで、Nginx や Apache の設定変更のみで TLS オフロードを実現できます。データベース暗号化では、Oracle TDE (Transparent Data Encryption) の暗号化マスターキーを CloudHSM で管理できます。Oracle Database の設定で PKCS#11 ライブラリとして CloudHSM クライアントを指定するだけで、データベースの暗号化鍵が HSM で保護されます。Microsoft SQL Server の EKM (Extensible Key Management) との統合も同様にサポートされています。料金は 1 HSM あたり 1.60 USD/時で、2 台構成の場合は月額約 2,336 USD です。

さらに詳しく知りたい方は、関連書籍 (Amazon) で理解を深められます。

まとめ - CloudHSM の活用指針

AWS CloudHSM は、暗号鍵の専有管理が求められるエンタープライズ向けのサービスです。FIPS 140-2 Level 3 認証、標準暗号 API (PKCS#11、JCE、CNG)、TLS オフロード、データベース暗号化統合が主な強みです。ほとんどのユースケースでは KMS で十分ですが、規制要件で鍵の専有管理が求められる場合や、TLS 秘密鍵を HSM 内に保持したい場合に CloudHSM を検討してください。月額約 2,336 USD〜のコストが発生するため、要件を慎重に評価した上で導入を判断することを推奨します。

AWS の優位点

  • FIPS 140-2 Level 3 認証済みの専有 HSM (Hardware Security Module) をクラウド上で利用でき、暗号鍵を自分だけが管理
  • KMS がマルチテナントの共有 HSM を使用するのに対し、CloudHSM はシングルテナントの専有 HSM で鍵の完全な制御権を保持
  • PKCS#11、JCE (Java)、CNG/KSP (Windows) の標準 API に対応し、既存のアプリケーションコードの変更が最小限
  • TLS/SSL オフロードで Web サーバーの秘密鍵を HSM 内に保持し、鍵がサーバーのメモリに展開されるリスクを排除
  • Oracle TDE (Transparent Data Encryption) や Microsoft SQL Server の暗号化と統合し、データベースの暗号鍵を HSM で管理
  • クラスター構成 (2 AZ 以上) で高可用性を確保し、HSM 間で鍵が自動同期される
  • 1 HSM あたり 1.60 USD/時 (約 1,168 USD/月) で、最低 2 台のクラスター構成が推奨されるため月額約 2,336 USD〜

同じテーマの記事

IAM Access Analyzer で検出する過剰なアクセス権限 - 外部アクセスと未使用権限の分析 Access Analyzer による外部アクセスの検出、未使用権限の分析、ポリシー生成の活用を解説します。 AWS Certificate Manager で自動化する SSL/TLS 証明書管理 - 発行からローテーションまで ACM によるパブリック証明書の無料発行、DNS 検証、自動更新、ALB・CloudFront へのデプロイを解説します。 AWS Artifact でコンプライアンスレポートを取得 - 監査対応と契約管理 Artifact による SOC、PCI DSS、ISO レポートの取得、BAA や NDA の締結手順を解説します。 監査の自動化 - AWS Audit Manager でコンプライアンス証跡を継続的に収集する AWS Audit Manager を使った監査証跡の自動収集を解説。フレームワーク (SOC 2、PCI DSS、GDPR 等) に基づく自動評価、エビデンスの一元管理、監査レポートの生成を紹介します。 証明書管理と HTTPS 化 - AWS Certificate Manager による TLS 証明書の自動運用 AWS Certificate Manager (ACM) を使った TLS/SSL 証明書の発行・自動更新・デプロイを解説。CloudFront・ALB・API Gateway との統合、DNS 検証、プライベート CA の活用まで紹介します。 AWS CloudHSM で実現する専用鍵管理 - FIPS 140-2 Level 3 準拠の暗号化 CloudHSM による専用 HSM クラスタの構築、KMS との使い分け、コンプライアンス要件への対応を解説します。 Amazon Cognito で実装するユーザー認証 - User Pool と Identity Pool の設計 Cognito User Pool によるユーザー認証、Identity Pool による AWS リソースアクセス、ソーシャルログインの統合を解説します。 機密コンピューティング - AWS Nitro Enclaves で処理中のデータを隔離保護する AWS Nitro Enclaves を使った機密データの隔離処理を解説。暗号化アテステーション、KMS 統合、PII 処理・暗号鍵管理のユースケースを紹介します。 データプライバシー保護 - Amazon Macie と GuardDuty で実現する機密データの自動検出と脅威防御 Amazon Macie による S3 内の機密データ自動検出と、Amazon GuardDuty による脅威インテリジェンスを組み合わせたデータプライバシー保護の実践手法を解説します。個人情報の特定からリアルタイムの脅威検知まで、包括的なセキュリティ対策を紹介します。 DDoS 対策 - AWS Shield による多層防御の設計と運用 AWS Shield Standard と Shield Advanced による DDoS 防御を解説。CloudFront・Route 53・ALB との統合、WAF との組み合わせ、コスト保護機能まで実践的に紹介します。 Amazon Detective でセキュリティインシデントを調査 - グラフ分析による根本原因の特定 Detective による GuardDuty 検出結果の調査、エンティティプロファイル、行動グラフの活用を解説します。 Active Directory 連携 - AWS Directory Service でオンプレミス ID 基盤をクラウドに拡張する AWS Directory Service を使った Active Directory のクラウド統合を解説。AWS Managed Microsoft AD、AD Connector、Simple AD の使い分けと、WorkSpaces・RDS・FSx との連携を紹介します。 AWS Directory Service で構築するマネージド Active Directory - ハイブリッド環境の ID 管理 AWS Managed Microsoft AD の構築、オンプレミス AD との信頼関係、AWS サービスとの統合を解説します。 AWS Firewall Manager で一元管理するセキュリティルール - WAF と Security Group の組織展開 Firewall Manager による WAF ルール、Security Group、Network Firewall ポリシーの組織全体への展開を解説します。 Amazon GuardDuty で実現する脅威検出 - ML ベースの異常検知とインシデント対応 GuardDuty による脅威検出の仕組み、検出結果の分類、Security Hub との統合によるインシデント対応を解説します。 ID とアクセス管理の設計 - IAM によるゼロトラストセキュリティの実現 AWS IAM を活用したアクセス管理の設計手法を解説し、最小権限の原則、ポリシー設計、Cognito との連携によるゼロトラストセキュリティの実現方法を紹介します。 AWS IAM Identity Center で実現するシングルサインオン - マルチアカウントアクセス管理 IAM Identity Center によるマルチアカウント SSO、権限セットの設計、外部 IdP との統合を解説します。 Amazon Inspector で脆弱性を自動スキャン - EC2、Lambda、ECR の継続的セキュリティ評価 Inspector による脆弱性スキャンの自動化、CVE 検出、リスクスコアリング、修復の優先順位付けを解説します。 Amazon Macie による機密データの自動検出 - S3 バケットの PII スキャンとデータ保護 Amazon Macie による S3 バケット内の機密データ (PII、金融情報、認証情報) の自動検出と、検出結果に基づくデータ保護戦略を解説します。 Amazon Macie で S3 の機密データを自動検出 - PII 検出とデータセキュリティ態勢の管理 Macie による S3 バケットの機密データ検出、カスタムデータ識別子、Security Hub 統合を解説します。 AWS Network Firewall による VPC トラフィック制御 - ステートフルルールとドメインフィルタリング Network Firewall のステートフル/ステートレスルール設計、ドメインフィルタリング、Suricata 互換ルールの活用法を解説します。 ネットワークトラフィックフィルタリング - AWS Network Firewall で実現する高度なネットワーク防御 AWS Network Firewall によるステートフルなネットワークトラフィックフィルタリングと、AWS WAF との組み合わせによる多層防御の構築方法を解説します。VPC レベルのトラフィック制御と脅威防御の実践手法を紹介します。 AWS Nitro Enclaves で実現する機密データ処理 - 隔離環境での暗号化と認証 Nitro Enclaves による隔離環境の構築、KMS との統合、機密データの安全な処理を解説します。 AWS Payment Cryptography で実現するクラウド決済処理 - 暗号鍵管理と PIN 検証 Payment Cryptography による決済用暗号鍵の管理、PIN ブロックの暗号化・復号、PCI DSS 準拠を解説します。 AWS Private CA で構築するプライベート PKI - 証明書の自動発行とローテーション Private CA によるプライベート証明書の発行、ACM との統合、短期証明書による mTLS の実装を解説します。 AWS Secrets Manager のマルチリージョン戦略 - レプリケーションとクロスアカウント共有 Secrets Manager のマルチリージョンレプリケーション、クロスアカウントアクセス、Parameter Store との統合パターンを解説します。 AWS Secrets Manager によるシークレット管理 - 自動ローテーションとアプリケーション統合 Secrets Manager によるデータベースパスワードや API キーの安全な管理、自動ローテーションの設定、アプリケーションからの取得パターンを解説します。 AWS Security Hub で一元管理するセキュリティ態勢 - 検出結果の集約と自動対応 Security Hub による検出結果の集約、セキュリティ標準の自動評価、自動対応ワークフローの構築を解説します。 セキュリティ調査と脅威分析 - Amazon Detective で実現するインシデント対応の効率化 Amazon Detective を活用したセキュリティインシデントの調査と脅威分析の手法を解説します。GuardDuty との連携による検出から調査までのワークフローと、グラフベースの分析による根本原因の特定方法を紹介します。 Amazon Security Lake で構築するセキュリティデータレイク - OCSF 形式での統合分析 Security Lake による CloudTrail、VPC フローログ、Route 53 ログの自動集約、OCSF 正規化、サブスクライバーとの統合を解説します。 セキュリティポスチャー管理 - AWS Security Hub で実現する統合セキュリティ監視基盤 AWS Security Hub による統合セキュリティ監視と、GuardDuty との連携による脅威検知の自動化を解説します。セキュリティベストプラクティスへの準拠状況の可視化とマルチアカウント環境のセキュリティガバナンスを紹介します。 AWS Shield で DDoS 攻撃から防御 - Standard と Advanced の使い分け Shield Standard と Advanced の違い、DDoS 対応チーム (SRT) の活用、コスト保護を解説します。 AWS Signer で実現するコード署名 - Lambda 関数とコンテナイメージの信頼性保証 AWS Signer による Lambda 関数のコード署名、コンテナイメージの署名、署名検証ポリシーの設定を解説します。 SSO とアイデンティティ管理 - AWS IAM Identity Center による一元認証 AWS IAM Identity Center (旧 AWS SSO) を使ったシングルサインオンとマルチアカウントアクセス管理を解説。外部 IdP 連携、権限セット設計、Cognito との使い分けまで紹介します。 ユーザー認証の実装 - Cognito によるセキュアな認証基盤の構築 Amazon Cognito を活用したユーザー認証基盤の設計と実装を解説し、ユーザープール、ID プール、外部 ID プロバイダー連携による認証フローの構築方法を紹介します。 AWS Verified Access で実現するゼロトラストアクセス - VPN 不要のアプリケーション接続 Verified Access による VPN レスのアプリケーションアクセス、信頼プロバイダーの設定、ポリシー設計を解説します。 Amazon Verified Permissions で実装するきめ細かい認可 - Cedar ポリシーによるアクセス制御 Verified Permissions による Cedar ポリシーの設計、ポリシーストアの構築、Cognito との統合を解説します。 脆弱性評価と脅威検知 - Amazon Inspector と GuardDuty で実現する継続的セキュリティ監視 Amazon Inspector と Amazon GuardDuty を活用した脆弱性評価と脅威検知の設計・運用方法を解説します。 AWS WAF の Bot Control と不正防止 - ボット対策とアカウント乗っ取り防止の実装 AWS WAF の Bot Control マネージドルール、Account Takeover Prevention、Fraud Control の設定と運用を解説します。 ゼロトラストネットワークアクセス - AWS Verified Access で VPN なしのセキュアアクセスを実現する AWS Verified Access を使った VPN レスのゼロトラストアクセスを解説。ID プロバイダー統合、デバイストラスト、ポリシーベースのアクセス制御、従来の VPN との比較を紹介します。