S3バケットポリシースクリプトの設定
注釈:本資料はAI技術を用いて翻訳されています。
概要
Data ConnectorサービスのS3バケットポリシーは、データがストリーミングされるAmazon S3バケットのセキュリティとアクセス制御を強化する上で重要な役割を果たします。適切に定義されたバケットポリシーを設定することで、S3バケットで許可されるアクションを制御および制限し、承認されたユーザーとシステムのみが必要なアクセス権を持つようにすることができます。
このドキュメントでは、Data ConnectorサービスのS3バケットポリシーを効果的に設定するプロセスをガイドし、ポリシーに含めるべき目標、前提条件、およびアクションについて説明します。
目標
ConnectorのS3バケットポリシーを設定する主な目標は次のとおりです。
- セキュリティ:
- データが保存されるS3バケットへのアクセスを、承認されたユーザーとシステムのみに制限する。
- 不正アクセスと潜在的なセキュリティ侵害を防止する。
- アクセス制御:
- S3バケットで許可または拒否される特定のアクションを定義する。
- Data Connectorサービスの要件に合わせてアクセス許可を細かく調整する。
- コンプライアンス: S3バケットに保存される機密データへのアクセスを制御するポリシーを実装することで、セキュリティとコンプライアンスの基準を満たす。
前提条件
Data ConnectorサービスのS3バケットポリシーを設定する前に、以下を確認してください。
- AGS Admin Portalへのアクセス権。
- Data Connectorサービスからストリーミングされたデータを保存するための既存のAmazon S3バケット。
- ポリシー、ロール、許可を含むAWS Identity and Access Management(IAM)の概念に関する理解。
S3アクション
以下のS3アクションは、Data ConnectorサービスのS3バケットポリシーを設定するために使用されるアクションです。これらのアクションは、S3バケット内のオブジェクトへのアクセスと操作のさまざまな側面を制御します。
s3:GetObject
- アクション: ConnectorがS3バケットからオブジェクト(ファイル)を取得(読み取り)できるようにします。
- 目的: この許可は、ストリーミングプロセス中にConnectorがS3バケットからデータファイルを取得するために必要です。
- 詳細: AWSドキュメント - s3:GetObject
s3:GetObjectVersion
- アクション: ConnectorがS3バケットからオブジェクト(ファイル)の特定のバージョンを取得できるようにします。
- 目的: この許可により、S3バケットでバージョニングが有効になっており、データオブジェクトに複数のバージョンがある場合に、Connectorがデータファイルの特定のバージョンにアクセスできるようになります。
- 詳細: AWSドキュメント - s3:GetObject
s3:PutObject
- アクション: ConnectorにS3バケットへのオブジェクト(ファイル)のアップロード(書き込み)許可を付与します。
- 目的: この許可は、ストリーミングプロセス中にConnectorがS3バケットにデータを保存するために不可欠です。
- 詳細: AWSドキュメント - s3:PutObject
s3:GetbucketLocation
- アクション: ConnectorがS3バケットの地理的リージョンを取得できるようにします。
- 目的: Connectorは、S3バケットが配置されている正しいAWSリージョンにアクセスするために、この許可が必要です。
- 詳細: AWSドキュメント - s3:GetBucketLocation
s3:ListBucket
- アクション: ConnectorがS3バケット内の最大1,000個のオブジェクト(ファイル)をリストできるようにします。
- 目的: この許可により、Connectorは指定されたS3バケット内に保存されているデータファイルを検出してアクセスできるようになります。
- 詳細: AWSドキュメント - s3:ListBucket
S3バケットポリシーの例
以下は、ConnectorのS3バケットに対して指定されたアクションへのアクセスを制限する方法を示すS3バケットポリシーの例です。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AccelByteAnalyticsConnector",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::<accelbyte-aws-account-id>:role/<analytics_connector_role_name>"
},
"Action": [
"s3:GetObject",
"s3:GetObjectVersion",
"s3:PutObject",
"s3:GetBucketLocation",
"s3:ListBucket"
],
"Resource": [
"arn:aws:s3:::<your-s3-bucket>",
"arn:aws:s3:::<your-s3-bucket>/*"
]
}
]
}
バケットポリシーの実装
ConnectorのS3バケットポリシーの実装は、Admin Portalから提供されたポリシーテンプレートをS3バケットのポリシー設定にコピー&ペーストする簡単なプロセスです。
以下の手順に従ってください。
-
Connectorを設定する際にAdmin Portalで提供されるポリシーテンプレートをコピーします。このテンプレートには、Connectorの適切なアクセス制御を確保するために必要なアクション、リソース、および条件が含まれています。
-
AWSマネジメントコンソールにログインします。
-
AWSマネジメントコンソールから、Amazon S3サービスに移動します。Servicesドロップダウンをクリックし、Storageを選択してから、S3をクリックします。
-
S3コンソールで、Connectorがストリーミングされたデータを保存するバケットを見つけて選択します。選択したバケットがS3バケットとして機能します。
-
選択したバケットのダッシュボード内で、Permissionsタブをクリックして、バケットの許可とポリシーを管理します。
-
Permissionsタブの下で、Bucket Policyセクションを見つけて、Editボタンをクリックしてバケットのポリシーを追加または変更します。
-
バケットポリシーエディターで、Admin Portalからコピーしたポリシーテンプレートを貼り付けます。ポリシーにバケット名、アクション、必要な特定の条件などの正しい情報が含まれていることを確認してください。
-
ポリシーテンプレートを貼り付けた後、セキュリティとアクセス制御のニーズに合致していることを確認し、Save Changesボタンをクリックしてポリシーをバケットに適用します。