証明書管理と HTTPS 化 - AWS Certificate Manager による TLS 証明書の自動運用

AWS Certificate Manager (ACM) を使った TLS/SSL 証明書の発行・自動更新・デプロイを解説。CloudFront・ALB・API Gateway との統合、DNS 検証、プライベート CA の活用まで紹介します。

TLS 証明書管理の課題と ACM の役割

Web サイトや API の HTTPS 化には TLS/SSL 証明書が不可欠ですが、従来の証明書管理には多くの運用負荷が伴います。認証局 (CA) への申請、ドメイン所有権の検証、証明書のインストール、そして最も厄介なのが有効期限切れ前の更新作業です。証明書の更新忘れによるサービス停止は、実際に多くの企業で発生しているインシデントです。AWS Certificate Manager (ACM) はこれらの課題を根本的に解決します。パブリック TLS 証明書を無料で発行し、DNS 検証を設定すれば更新を完全に自動化します。ACM が発行する証明書の有効期間は 13 か月で、有効期限の 60 日前から自動更新が試行されます。DNS 検証用の CNAME レコードが正しく設定されていれば、人手を介さずに証明書が更新され続けます。ACM は CloudFront、ALB、NLB、API Gateway、App Runner など AWS の主要なエッジ/ロードバランサーサービスに幅広く対応しています。

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

証明書の発行と検証方法

ACM での証明書発行は、ドメイン名の指定と検証方法の選択だけで完了します。検証方法は DNS 検証とメール検証の 2 種類があり、DNS 検証が推奨されます。DNS 検証では、ACM が指定する CNAME レコードを DNS に追加することでドメイン所有権を証明します。Route 53 を使用している場合、マネジメントコンソールからワンクリックで CNAME レコードを作成できます。 ```yaml # SAM テンプレートでの ACM 証明書定義 Resources: Certificate: Type: AWS::CertificateManager::Certificate Properties: DomainName: example.com SubjectAlternativeNames: - '*.example.com' ValidationMethod: DNS DomainValidationOptions: - DomainName: example.com HostedZoneId: !Ref HostedZone ``` ワイルドカード証明書 (*.example.com) を発行すれば、api.example.com、www.example.com、app.example.com など任意のサブドメインを 1 枚の証明書でカバーできます。Subject Alternative Names (SAN) で複数のドメイン名を 1 枚の証明書に含めることも可能です。CloudFront で使用する証明書は us-east-1 リージョンで発行する必要がある点に注意してください。ALB や API Gateway で使用する証明書は、リソースと同じリージョンで発行します。

AWS サービスとの統合

ACM 証明書は、AWS の各サービスに直接関連付けて使用します。CloudFront ディストリビューションでは、カスタムドメインの HTTPS 化に ACM 証明書を指定します。ALB (Application Load Balancer) では、HTTPS リスナーに ACM 証明書を設定し、TLS 終端をロードバランサーで行います。SNI (Server Name Indication) により、1 つの ALB で複数のドメインの証明書を使い分けることも可能です。API Gateway のカスタムドメインでも ACM 証明書を使用し、api.example.com のような独自ドメインで API を公開できます。App Runner も ACM 証明書によるカスタムドメインの HTTPS 化に対応しています。いずれのサービスでも、証明書の秘密鍵はユーザーに公開されず、AWS が安全に管理します。証明書の自動更新時も、関連付けられたサービスに自動的に反映されるため、ダウンタイムは発生しません。

Private CA と高度なユースケース

ACM Private CA (Private Certificate Authority) は、組織内部で使用するプライベート証明書を発行するためのマネージド CA サービスです。社内システム間の mTLS (相互 TLS) 認証、IoT デバイスの証明書管理、VPN 接続の認証などに使用します。Private CA の料金は月額 400 USD と高額ですが、自前で CA を構築・運用するコスト (HSM、運用人員、監査対応) と比較すれば合理的です。短期証明書モードでは、有効期間 7 日以下の証明書を発行でき、月額料金が不要になります (証明書あたりの従量課金のみ)。証明書の透明性 (Certificate Transparency) ログへの登録もオプションで設定でき、パブリック証明書と同等の監査性を確保できます。ACM はインポート証明書にも対応しており、他の CA (Let's Encrypt、DigiCert など) で発行した証明書を ACM にインポートして ALB や CloudFront で使用できます。ただし、インポート証明書は自動更新の対象外となるため、ACM で直接発行する方が運用負荷は低くなります。

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

まとめ - ACM の活用指針

AWS Certificate Manager は、TLS 証明書の発行・更新・デプロイを完全に自動化するサービスです。パブリック証明書は無料で発行でき、DNS 検証による自動更新で証明書切れのリスクを排除します。CloudFront・ALB・API Gateway・App Runner など主要サービスとの統合により、HTTPS 化のハードルを大幅に下げます。ワイルドカード証明書と SAN により、複数ドメインを効率的に管理できます。Private CA は社内システムや IoT デバイスの証明書管理に対応し、エンタープライズのセキュリティ要件を満たします。Web サイトや API を公開する際は、ACM による証明書管理を標準プラクティスとして採用することを推奨します。

AWS の優位点

  • パブリック TLS 証明書を無料で発行でき、CloudFront・ALB・API Gateway・App Runner などに数クリックで関連付け可能
  • DNS 検証 (CNAME レコード) を設定すれば証明書の更新が完全自動化され、手動での更新作業や証明書切れのリスクを排除
  • ワイルドカード証明書 (*.example.com) に対応し、サブドメインの追加時に新たな証明書発行が不要
  • ACM Private CA でプライベート証明書を発行でき、社内システムや IoT デバイスの mTLS 認証に活用可能
  • CloudFormation / SAM テンプレートで証明書の発行とリソースへの関連付けを IaC で管理できる
  • 証明書の発行・更新・管理に追加料金は不要 (Private CA は月額 400 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 等) に基づく自動評価、エビデンスの一元管理、監査レポートの生成を紹介します。 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 との統合によるインシデント対応を解説します。 ハードウェアセキュリティモジュール - AWS CloudHSM による暗号鍵の専有管理 AWS CloudHSM を使った暗号鍵の専有管理を解説。KMS との使い分け、FIPS 140-2 Level 3 準拠、TLS オフロード、Oracle TDE 統合など高度なユースケースを紹介します。 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 との比較を紹介します。