

# 目录存储桶的 IAM 基于身份的策略
<a name="s3-express-security-iam-identity-policies"></a>

在创建目录存储桶之前，您必须向 AWS Identity and Access Management（IAM）角色或用户授予必要的权限。此示例策略允许使用 `CreateSession` API 操作 [用于可用区端点（对象级）API 操作] 和所有区域端点（存储桶级）API 操作。此策略允许将 `CreateSession` API 操作用于所有目录存储桶，但仅允许将区域端点 API 操作用于指定的目录存储桶。要使用此示例策略，请将 `{{user input placeholders}}` 替换为您自己的信息。

**注意**  
作为最佳实践，仅授予执行任务所需的权限（最低权限）。从此策略中移除您的使用案例不需要的任何操作。有关 S3 Express One Zone 操作的列表，请参阅《服务授权参考》**中的 [S3 Express One Zone 的操作、资源和条件键](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazons3express.html)。

**Example ：适用于目录存储桶访问的基于身份的策略**  

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "AllowRegionalEndpointAPIs",
            "Effect": "Allow",
            "Action": [
                "s3express:CreateBucket",
                "s3express:DeleteBucket",
                "s3express:DeleteBucketPolicy",
                "s3express:GetBucketPolicy",
                "s3express:PutBucketPolicy",
                "s3express:GetEncryptionConfiguration",
                "s3express:PutEncryptionConfiguration",
                "s3express:GetLifecycleConfiguration",
                "s3express:PutLifecycleConfiguration",
                "s3express:GetInventoryConfiguration",
                "s3express:PutInventoryConfiguration",
                "s3express:GetMetricsConfiguration",
                "s3express:PutMetricsConfiguration"
            ],
            "Resource": "arn:aws:s3express:{{region}}:{{account-id}}:bucket/{{bucket-base-name--zone-id--x-s3}}"
        },
        {
            "Sid": "AllowListAndCreateSession",
            "Effect": "Allow",
            "Action": [
                "s3express:ListAllMyDirectoryBuckets",
                "s3express:CreateSession"
            ],
            "Resource": "*"
        }
    ]
}
```

此策略包含两条语句：
+ 第一条语句授予对特定目录存储桶执行区域端点（存储桶级别）API 操作的权限。您可以移除您的使用案例不需要的操作。
+ 第二条语句授予执行 `ListAllMyDirectoryBuckets` 和 `CreateSession` 的权限。这些操作不支持资源级权限，因此 `Resource` 为 `"*"`。`CreateSession` 权限启用所有区域端点（对象级）API 操作，例如 `PutObject`、`GetObject` 和 `DeleteObject`。