Amazon DevOpsGuru でのデータ保護 - Amazon DevOps Guru

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon DevOpsGuru でのデータ保護

責任 AWS 共有モデル、Amazon DevOpsGuru でのデータ保護に適用されます。このモデルで説明されているように、 AWS はすべての を実行するグローバルインフラストラクチャを保護する責任があります AWS クラウド。お客様は、このインフラストラクチャでホストされているコンテンツに対する管理を維持する責任があります。また、使用する AWS サービス のセキュリティ設定と管理タスクもユーザーの責任となります。データプライバシーの詳細については、「データプライバシーのよくある質問」を参照してください。欧州でのデータ保護の詳細については、AWS セキュリティブログに投稿された記事「AWS 責任共有モデルおよび GDPR」を参照してください。

データ保護の目的で、認証情報を保護し AWS アカウント 、 AWS IAM Identity Center または AWS Identity and Access Management (IAM) を使用して個々のユーザーを設定することをお勧めします。この方法により、それぞれのジョブを遂行するために必要な権限のみが各ユーザーに付与されます。また、次の方法でデータを保護することもお勧めします:

  • 各アカウントで多要素認証 (MFA) を使用します。

  • SSL/TLS を使用して AWS リソースと通信します。TLS 1.2 は必須であり TLS 1.3 がお勧めです。

  • で API とユーザーアクティビティのログ記録を設定します AWS CloudTrail。

  • AWS 暗号化ソリューションと、 内のすべてのデフォルトのセキュリティコントロールを使用します AWS サービス。

  • Amazon Macie などの高度なマネージドセキュリティサービスを使用します。これらは、Amazon S3 に保存されている機密データの検出と保護を支援します。

  • コマンドラインインターフェイスまたは API AWS を介して にアクセスするときに FIPS 140-2 検証済みの暗号化モジュールが必要な場合は、FIPS エンドポイントを使用します。利用可能な FIPS エンドポイントの詳細については、「連邦情報処理規格 (FIPS) 140-2」を参照してください。

お客様の E メールアドレスなどの極秘または機密情報は、タグ、または名前フィールドなどの自由形式のテキストフィールドに配置しないことを強くお勧めします。これは、コンソール、API、または SDK を使用して DevOpsGuru AWS CLIまたは他の AWS サービス を使用する場合も同様です。 AWS SDKs 名前に使用する自由記述のテキストフィールドやタグに入力したデータは、課金や診断ログに使用される場合があります。外部サーバーへの URL を提供する場合は、そのサーバーへのリクエストを検証するための認証情報を URL に含めないように強くお勧めします。

DevOpsGuru でのデータ暗号化

暗号化は DevOpsGuru セキュリティの重要な部分です。一部の暗号化 (転送中のデータの暗号化など) はデフォルトで提供されるため、特に操作は必要ありません。その他の暗号化 (保管中のデータの暗号化など) については、プロジェクトまたはビルドの作成時に設定できます。

  • 転送中のデータの暗号化: 顧客と DevOpsGuru 間、および DevOpsGuru とそのダウンストリームの依存関係間のすべての通信は、TLS を使用して保護され、署名バージョン 4 の署名プロセスを使用して認証されます。すべての DevOpsGuru エンドポイントは、 によって管理される証明書を使用します AWS Private Certificate Authority。詳細については、「署名バージョン 4 の署名プロセス」および「ACM PCA とは」を参照してください。

  • 保管中のデータの暗号化: DevOpsGuru によって分析されたすべての AWS リソースについて、Amazon CloudWatch メトリクスとデータ、リソース IDs、および AWS CloudTrail イベントはAmazon S3、Amazon DynamoDB、および Amazon Kinesis を使用して保存されます。 AWS CloudFormation スタックを使用して分析されたリソースを定義する場合、スタックデータも収集されます。 DevOpsGuru は Amazon S3、DynamoDB、Kinesis のデータ保持ポリシーを使用します。Kinesis に保存されたデータは、設定されているポリシーに応じて、最大 1 年間保持できます。Amazon S3 および DynamoDB に保存されたデータは 1 年間保存されます。

    保存されたデータは、Amazon S3、DynamoDB、および Kinesis の data-at-rest 暗号化機能を使用して暗号化されます。

    カスタマーマネージドキー : DevOpsGuru は、カスタマーマネージドキーを使用して CloudWatch Logs から生成されたログ異常などのカスタマーコンテンツや機密メタデータの暗号化をサポートしています。この機能では、組織のコンプライアンスや規制要件を満たすのに役立つセルフマネージドのセキュリティレイヤーを追加することができます。 DevOpsGuru 設定でカスタマーマネージドキーを有効にする方法については、「」を参照してくださいDevOps Guru の暗号化設定を更新する

    この暗号化層はユーザーが完全に制御できるため、次のようなタスクを実行できます。

    • キーポリシーの策定と維持

    • IAM ポリシーとグラントの策定と維持

    • キーポリシーの有効化と無効化

    • 暗号化素材のローテーション

    • タグの追加

    • キーエイリアスの作成

    • 削除のためのキースケジューリング

    詳細については、「 AWS Key Management Service デベロッパーガイド」の「カスタマーマネージドキー」を参照してください。

    注記

    DevOpsGuru は、 AWS 所有キーを使用して保管時の暗号化を自動的に有効にし、機密性の高いメタデータを無料で保護します。ただし、カスタマーマネージドキーの使用には AWS KMS 料金が適用されます。料金の詳細については、「 の AWS Key Management Service 料金」を参照してください。

DevOpsGuru が で許可を使用する方法 AWS KMS

DevOpsGuru では、カスタマーマネージドキーを使用するには許可が必要です。

カスタマーマネージドキーによる暗号化を有効にすると、 DevOpsGuru は に CreateGrant リクエストを送信してユーザーに代わって許可を作成します AWS KMS。の許可 AWS KMS は、Gru DevOpsに顧客アカウントの AWS KMS キーへのアクセスを許可するために使用されます。

DevOpsGuru では、以下の内部オペレーションにカスタマーマネージドキーを使用する権限が必要です。

  • トラッカーまたはジオフェンスコレクションの作成時に入力された対称カスタマーマネージド KMS キー ID が有効であることを確認する DescribeKey リクエストを AWS KMS に送信します。

  • カスタマーマネージドキーで暗号化されたデータキーを生成する AWS KMS には、 に GenerateDataKey リクエストを送信します。

  • Decrypt リクエストを AWS KMS に送信して、暗号化されたデータキーを復号し、データの暗号化に使用できます。

任意のタイミングで、許可に対するアクセス権を取り消したり、カスタマーマネージドキーに対するサービスからのアクセス権を削除したりできます。これを行うと、 DevOpsGuru はカスタマーマネージドキーによって暗号化されたデータにアクセスできなくなり、そのデータに依存するオペレーションに影響します。例えば、 DevOpsGru がアクセスできない暗号化されたログの異常情報を取得しようとすると、オペレーションは AccessDeniedException エラーを返します。

DevOpsGuru での暗号化キーのモニタリング

DevOpsGuru リソースで AWS KMS カスタマーマネージドキーを使用する場合、 AWS CloudTrail または CloudWatch ログを使用して、 DevOpsGru が に送信するリクエストを追跡できます AWS KMS。

カスタマーマネージドキーを作成する

対称カスタマーマネージドキーを作成するには、 AWS Management Console または AWS KMS APIsを使用します。

対称型のカスタマーマネージドキーを作成するには、「対称暗号化 KMS キーの作成」を参照してください。

キーポリシー

キーポリシーは、カスタマーマネージドキーへのアクセスを制御します。すべてのカスタマーマネージドキーには、キーポリシーが 1 つだけ必要です。このポリシーには、そのキーを使用できるユーザーとその使用方法を決定するステートメントが含まれています。カスタマーマネージドキーを作成する際に、キーポリシーを指定することができます。詳細については、「 AWS Key Management Service デベロッパーガイド」の「 の認証とアクセスコントロール AWS KMS」を参照してください。

DevOpsGuru リソースでカスタマーマネージドキーを使用するには、キーポリシーで次の API オペレーションを許可する必要があります。

  • kms:CreateGrant - カスタマーマネージドキーに許可を追加します。指定された AWS KMS キーへのアクセスを制御する権限を付与します。これにより、DevOpsGuru が必要とする許可オペレーションへのアクセスを許可します。権限の使用の詳細については、「 AWS Key Management Service デベロッパーガイド」を参照してください。

これにより、 DevOpsGru は以下を実行できます。

  • を呼び出し GenerateDataKey て暗号化されたデータキーを生成し、保存します。データキーはすぐに暗号化に使用されるわけではないためです。

  • Decrypt を呼び出すと、保存されている暗号化データキーを使用して暗号化されたデータにアクセスできます。

  • サービスの使用停止プリンシパルを設定して、 へのサービスを許可します RetireGrant。

  • kms: DescribeKey を使用してカスタマーマネージドキーの詳細を指定し、 DevOpsGuru がキーを検証できるようにします。

次のステートメントには、 DevOpsGru に追加できるポリシーステートメントの例が含まれています。

"Statement" : [ { "Sid" : "Allow access to principals authorized to use DevOps Guru", "Effect" : "Allow", "Principal" : { "AWS" : "*" }, "Action" : [ "kms:DescribeKey", "kms:CreateGrant" ], "Resource" : "*", "Condition" : { "StringEquals" : { "kms:ViaService" : "devops-guru.Region.amazonaws.com", "kms:CallerAccount" : "111122223333" } }, { "Sid": "Allow access for key administrators", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action" : [ "kms:*" ], "Resource": "arn:aws:kms:region:111122223333:key/key_ID" }, { "Sid" : "Allow read-only access to key metadata to the account", "Effect" : "Allow", "Principal" : { "AWS" : "arn:aws:iam::111122223333:root" }, "Action" : [ "kms:Describe*", "kms:Get*", "kms:List*" ], "Resource" : "*" } ]

トラフィックのプライバシー

インターフェイス VPC エンドポイントを使用するように DevOpsGuru を設定することで、リソース分析とインサイト生成のセキュリティを向上させることができます。これを行う場合、インターネットゲートウェイ、NAT デバイス、または仮想プライベートゲートウェイは必要ありません。また、 を設定する必要はありませんが PrivateLink、推奨されます。詳細については、「DevOpsGuru とインターフェイス VPC エンドポイント (AWS PrivateLink)」を参照してください。PrivateLink および VPC エンドポイントの詳細については、AWS PrivateLink「」および「 を介した AWS サービスへのアクセス PrivateLink」を参照してください。