Local Zones のディレクトリバケットは、AWS Identity and Access Management (IAM) 認可とセッションベースの認可の両方をサポートしています。ディレクトリバケットの認証と認可についての詳細は、「リクエストの認証と承認」を参照してください。
リソース
ディレクトリバケットの Amazon リソースネーム (ARN) には、s3express
名前空間、AWS 親リージョン、AWS アカウント ID、および Zone ID を含むディレクトリバケット名が含まれます。ディレクトリバケットにアクセスしてアクションを実行するには、次の ARN 形式を使用する必要があります。
arn:aws:s3express:
region-code
:account-id
:bucket/bucket-base-name
--ZoneID
--x-s3
Local Zone のディレクトリバケットの場合、Zone ID は Local Zone の ID です。Local Zones 内のディレクトリバケットの詳細については、「Local Zones のディレクトリバケットの概念」を参照してください。ARN の詳細については「IAM ユーザーガイド」の「Amazon リソースネーム (ARN)」を参照してください。リソースの詳細については、「IAM ユーザーガイド」の「IAM JSON ポリシー要素: Resource」を参照してください。
Local Zones のディレクトリバケットの条件キー
Local Zones では、IAM ポリシーのすべての ディレクトリバケットの条件キー を使用できます。さらに、Local Zone のネットワーク境界グループの周囲にデータ境界を作成するには、条件キー s3express:AllAccessRestrictedToLocalZoneGroup
を使用して、グループ外からのすべてのリクエストを拒否できます。
次の条件キーを使用すると、IAM ポリシーステートメントが適用される条件をさらに絞り込むことができます。ディレクトリバケットでサポートされている API オペレーション、ポリシーアクション、および条件キーの完全なリストについては、「ディレクトリバケットのポリシーアクション」を参照してください。
注記
次の条件キーは Local Zones にのみ適用され、アベイラビリティーゾーンと AWS リージョンではサポートされていません。
API オペレーション | ポリシーアクション | 説明 | 条件キー | 説明 | [Type] (タイプ) |
---|---|---|---|---|---|
ゾーンエンドポイント API オペレーション |
s3express:CreateSession
|
セッショントークンを作成するアクセス許可を付与します。このセッショントークンは、 |
s3express:AllAccessRestrictedToLocalZoneGroup
|
この条件キーで指定された AWS Local Zone ネットワーク境界グループからリクエストが発信されていない限り、バケットへのすべてのアクセスをフィルタリングします。 値: Local Zone ネットワーク境界グループの値 |
String
|
ポリシーの例
定義したデータレジデンシー境界内 (具体的には、同じ AWS リージョンを親とする Local Zones のセットである Local Zone グループ) からのリクエストへのオブジェクトアクセスを制限するには、次のいずれかのポリシーを設定できます。
-
サービスコントロールポリシー (SCP)。SCP の詳細については、「AWS Organizations User Guide」の「Service control policies (SCPs)」を参照してください。
-
IAM ロールの IAM アイデンティティベースのポリシー。
-
VPC エンドポイントポリシー。VPC エンドポイントポリシーの詳細については、「AWS PrivateLink Guide」の「Control access to VPC endpoints using endpoint policies」を参照してください。
-
S3 バケットポリシー。
注記
条件キー s3express:AllAccessRestrictedToLocalZoneGroup
は、オンプレミス環境からのアクセスをサポートしていません。オンプレミス環境からのアクセスをサポートするには、ソース IP をポリシーに追加する必要があります。詳細については、「IAM ユーザーガイド」の「aws:SourceIp」を参照してください。
例 – SCP ポリシー
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Access-to-specific-LocalZones-only",
"Effect": "Deny",
"Action": [
"s3express:*",
],
"Resource": "*",
"Condition": {
"StringNotEqualsIfExists": {
"s3express:AllAccessRestrictedToLocalZoneGroup": [
"local-zone-network-border-group-value
"
]
}
}
}
]
}
例 – IAM アイデンティティベースのポリシー (IAM ロールにアタッチ)
{
"Version": "2012-10-17",
"Statement": {
"Effect": "Deny",
"Action": "s3express:CreateSession",
"Resource": "*",
"Condition": {
"StringNotEqualsIfExists": {
"s3express:AllAccessRestrictedToLocalZoneGroup": [
"local-zone-network-border-group-value
"
]
}
}
}
}
例 – VPC エンドポイントポリシー
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Access-to-specific-LocalZones-only",
"Principal": "*",
"Action": "s3express:CreateSession",
"Effect": "Deny",
"Resource": "*",
"Condition": {
"StringNotEqualsIfExists": {
"s3express:AllAccessRestrictedToLocalZoneGroup": [
"local-zone-network-border-group-value
"
]
}
}
}
]
}
例 - バケットポリシー
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Access-to-specific-LocalZones-only",
"Principal": "*",
"Action": "s3express:CreateSession",
"Effect": "Deny",
"Resource": "*",
"Condition": {
"StringNotEqualsIfExists": {
"s3express:AllAccessRestrictedToLocalZoneGroup": [
"local-zone-network-border-group-value
"
]
}
}
}
]
}