シークレットのセキュアなストレージ

AWS Secrets Manager は保管中のシークレットをお客様の所有する暗号化キーで暗号化し、AWS Key Management Service (AWS KMS) に保管します。 

  • シークレットを取得すると、Secrets Manager はシークレットを復号し、これを安全に TLS 上でお客様のローカル環境に送信します。
  • Secrets Manager は AWS Identity and Access Management (IAM) と統合して、きめ細かい IAM ポリシーとリソースベースのポリシーを使用してシークレットへのアクセスを制御します。

アプリケーションに影響を与えずにシークレットを自動更新

AWS Secrets Manager では、Secrets Manager コンソール、AWS SDK、または AWS CLI を用いてスケジュールに従い、またはオンデマンドでシークレットを更新できます。 

  • Secrets Manager は、Amazon RDS と Amazon DocumentDB でホストされているデータベース、および Amazon Redshift でホストされているクラスターの各認証情報のローテーションをネイティブにサポートします。
  • サンプル Lambda 関数を変更することで、Secrets Manager を拡張して、他の AWS または 3P サービスで使用されるシークレットをローテーションできます。

複数の AWS リージョンへのシークレットの自動レプリケーション

AWS Secrets Manager を使用すると、シークレットを複数の AWS リージョンに自動的にレプリケートして、独自のディザスタリカバリとリージョン間の冗長性の要件を満たすことができます。シークレットをレプリケートする必要がある AWS リージョンを指定すると、Secrets Manager はリージョンレベルのリードレプリカを安全に作成するため、この機能のために複雑なソリューションを維持する必要がなくなります。マルチリージョンアプリケーションに、必要なリージョンにあるレプリケートされたシークレットへのアクセス権を付与し、Secrets Manager を使用してレプリカをプライマリシークレットと同期させることができます。

プログラムでのシークレットの取得

シークレットのセキュリティを最優先事項として、アプリケーションを構築します。

  • Secrets Manager は、一般的なプログラミング言語から Secrets Manager API を呼び出すためのコードサンプルを提供します。シークレットを取得する API には、次の 2 種類があります。
    • 名前または ARN で 1 つのシークレットを取得します。
    • 名前または ARN のリスト、またはタグなどのフィルター条件を指定して、シークレットのグループを取得します。
  • Amazon Virtual Private Cloud (VPC) エンドポイントを、お使いの VPC と AWS ネットワーク内の Secrets Manager との間のトラフィックを維持するように設定します。
  • Secrets Manager のクライアント側のキャッシュライブラリを使用して、可用性を向上させ、シークレットの取得中のレイテンシーを短縮することもできます。

シークレットの使用状況の監査と監視

AWS Secrets Manager では、AWS ログ記録、モニタリング、通知サービスへの統合を通じて、シークレットを監査およびモニタリングできます。例えば、ある AWS リージョンに対して AWS CloudTrail を有効にした後、シークレットがいつ作成またはローテーションされたのかは AWS CloudTrail ログを確認することによって監査できます。同様に、Amazon CloudWatch の設定によって、一定期間シークレットが使われない場合に Amazon Simple Notification Service を使って E メールのメッセージを受け取るように、または Amazon CloudWatch Events の設定によって Secrets Manager がシークレットを更新したときにプッシュ通知を受け取るようにできます。

コンプライアンス

AWS Secrets Manager を使用して、コンプライアンス要件を満たすことができます。

  • AWS Config ルールを使用すると、組織のセキュリティとコンプライアンスの要件に従ってシークレットが設定されていることを検証するのに役立ちます。
  • 米国国防総省クラウドコンピューティングセキュリティ要件ガイド (DoD CC SRG IL2、DoD CC SRG IL4、および DoD CC SRG IL5)、Federal Risk and Authorization Management Program (FedRAMP)、米国の医療保険の相互運用性と説明責任に関する法律 (HIPAA)、Information Security Registered Assessors Program (IRAP)、Outsourced Service Provider’s Audit Report (OSPAR)、ISO/IEC 27001、ISO/IEC 27017、ISO/IEC 27018、ISO 9001、Payment Card Industry Data Security Standard (PCI-DSS)、System and Organization Control (SOC) の対象となるワークロードのシークレットを管理します。
  • AWS のコンプライアンスプログラムとレポートの詳細については、「AWS Artifact」をご覧ください。

Secrets Manager の統合

AWS のサービスは Secrets Manager と統合して、認証情報を安全に管理します。これらの統合は、さまざまな AWS のサービスと認証情報を安全にやり取りするのに役立ちます。Secrets Manager に保存されている認証情報は、AWS マネージド KMS キーまたはカスタマーマネージドキーを使用して暗号化されます。Secrets Manager は、セキュリティの水準を高く保つためにシークレットを定期的にローテーションします。シークレットが Secrets Manager で保存されると、プレーンテキストの認証情報の代わりにシークレットの ARN を AWS サービスに提供できるようになります。

統合サービス

Alexa for Business
AWS App2Container
Amazon AppFlow
AWS AppSync
Amazon Athena
AWS CodeBuild
AWS Direct Connect
AWS Directory Service
Amazon DocumentDB (MongoDB 互換)
AWS Elemental MediaLive
AWS Elemental MediaConnect
AWS Elemental MediaConvert
Amazon CodeGuru Reviewer
AWS Elemental MediaPackage
AWS Elemental MediaTailor
Amazon EMR
Amazon EventBridge
Amazon FSx
AWS Glue DataBrew
AWS Glue Studio
AWS IoT SiteWise
Amazon Kendra
AWS Launch Wizard
Amazon Lookout for Metrics
Amazon Managed Streaming for Apache Kafka (Amazon MSK)
Amazon Managed Workflows for Apache Airflow (Amazon MWAA)
AWS Migration Hub
AWS OpsWorks for Chef Automate
Amazon Relational Database Service (Amazon RDS)
Amazon Redshift
Amazon Redshift クエリエディタ v2
Amazon SageMaker
AWS Toolkit for JetBrains
AWS Transfer Family