

# S3 Storage Lens 存储统计管理工具表的权限
<a name="storage-lens-s3-tables-permissions"></a>

要处理导出到 S3 表类数据存储服务的 S3 Storage Lens 存储统计管理工具数据，您需要相应的 Amazon Identity and Access Management（IAM）权限。本主题介绍导出指标和管理加密所需的权限。

## 将指标导出到 S3 表类数据存储服务的权限
<a name="storage-lens-s3-tables-permissions-export"></a>

要创建和使用 S3 Storage Lens 存储统计管理工具表和表存储桶，您必须具有某些 `s3tables` 权限。要将 S3 Storage Lens 存储统计管理工具配置为存储到 S3 表类数据存储服务中，您至少必须具有以下 `s3tables` 权限：
+  `s3tables:CreateTableBucket`：此权限可让您创建 Amazon 托管的表存储桶。您账户中的所有 S3 Storage Lens 存储统计管理工具指标都存储在名为 `aws-s3` 的单个 Amazon 托管的表存储桶中。
+  `s3tables:PutTableBucketPolicy`：S3 Storage Lens 存储统计管理工具使用此权限设置表存储桶策略，来允许 `systemtables.s3.amazonaws.com` 访问存储桶以便传输日志。

**重要**  
如果您删除服务主体 `systemtables.s3.amazonaws.com` 的权限，则 S3 Storage Lens 存储统计管理工具将无法根据您的配置，使用数据更新 S3 表。除了已提供的策略外，我们建议您添加其他访问控制策略，而不是编辑在设置表存储桶时添加的标准策略。

**注意**  
对于每个 Storage Lens 存储统计管理工具配置，都会为每种类型的指标导出创建单独的 S3 表。如果您在区域中有多个 Storage Lens 存储统计管理工具配置，则会为额外的配置创建单独的表。例如，S3 表存储桶有三种类型的表可用。

## Amazon KMS 加密表的权限
<a name="storage-lens-s3-tables-permissions-kms"></a>

S3 表中的所有数据（包括 S3 Storage Lens 存储统计管理工具指标）均默认使用 SSE-S3 加密。您可以选择使用 Amazon KMS 密钥（SSE-KMS）加密 Storage Lens 存储统计管理工具指标报告。如果您选择使用 KMS 密钥加密 S3 Storage Lens 存储统计管理工具指标报告，则必须拥有额外的权限。

1. 用户或 IAM 角色需要以下权限。您可以使用 IAM 控制台来授予这些权限：[https://console.aws.amazon.com/iam/](https://console.amazonaws.cn/iam/)。
   +  `kms:DescribeKey`（对于所使用的 Amazon KMS 密钥）

1. 在 Amazon KMS 密钥的密钥策略中，您需要以下权限。您可以使用 Amazon KMS 控制台来授予这些权限：[https://console.aws.amazon.com/kms](https://console.amazonaws.cn/kms)。要使用此策略，请将 ` {{user input placeholders}} ` 替换为您自己的信息。

   ```
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "EnableSystemTablesKeyUsage",
               "Effect": "Allow",
               "Principal": {
                   "Service": "systemtables.s3.amazonaws.com"
               },
               "Action": [
                   "kms:DescribeKey",
                   "kms:GenerateDataKey",
                   "kms:Decrypt"
               ],
               "Resource": "arn:aws:kms:{{us-east-1}}:{{111122223333}}:key/{{key-id}}",
               "Condition": {
                   "StringEquals": {
                       "aws:SourceAccount": "{{111122223333}}"
                   }
               }
           },
           {
               "Sid": "EnableKeyUsage",
               "Effect": "Allow",
               "Principal": {
                   "Service": "maintenance.s3tables.amazonaws.com"
               },
               "Action": [
                   "kms:GenerateDataKey",
                   "kms:Decrypt"
               ],
               "Resource": "arn:aws:kms:{{us-east-1}}:{{111122223333}}:key/{{key-id}}",
               "Condition": {
                   "StringLike": {
                       "kms:EncryptionContext:aws:s3:arn": "{{<table-bucket-arn>}}/*"
                   }
               }
           }
       ]
   }
   ```

## S3 Storage Lens 存储统计管理工具的服务相关角色
<a name="storage-lens-s3-tables-permissions-slr"></a>

S3 Storage Lens 存储统计管理工具使用服务相关角色将指标写入 S3 表类数据存储服务。当您在账户中首次启用 S3 表类数据存储服务导出时，系统会自动创建此角色。此服务相关角色具有以下权限：
+  `s3tables:CreateTable`：在 `aws-s3` 表存储桶中创建表
+  `s3tables:PutTableData`：将指标数据写入表
+  `s3tables:GetTable`：检索表元数据

您无需手动创建或管理该服务相关角色。有关服务相关角色的更多信息，请参见 *IAM 用户指南*中的[使用服务相关角色](https://docs.amazonaws.cn/IAM/latest/UserGuide/using-service-linked-roles.html)。

## 权限的最佳实践
<a name="storage-lens-s3-tables-permissions-best-practices"></a>

为 S3 Storage Lens 存储统计管理工具表配置权限时，请遵循以下最佳实践：
+  **使用最低权限**：仅授予特定任务所需的权限。例如，如果用户只需要查询数据，则不要授予修改 Storage Lens 存储统计管理工具配置的权限。
+  **使用 IAM 角色**：对于访问 S3 Storage Lens 存储统计管理工具表的应用程序和服务，使用 IAM 角色而非长期访问密钥。
+  **启用 Amazon CloudTrail**：启用 CloudTrail 日志记录，以监控对 S3 Storage Lens 存储统计管理工具表的访问并跟踪权限更改。
+  **使用基于资源的策略**：尽可能使用基于资源的策略来控制对特定表或命名空间的访问。
+  **定期审核权限**：定期审核和审计 IAM 策略和 Lake Formation 权限，以确保它们遵循最低权限原则。

## 排除权限故障
<a name="storage-lens-s3-tables-permissions-troubleshooting"></a>

### 启用 S3 表类数据存储服务导出时访问被拒绝
<a name="storage-lens-s3-tables-permissions-troubleshooting-export"></a>

 **问题：**尝试启用 S3 表类数据存储服务导出时收到“访问被拒绝”错误。

 **解决方案：**验证您的 IAM 用户或角色是否具有 `s3:PutStorageLensConfiguration` 权限和必要的 S3 表类数据存储服务权限。

### 查询表时访问被拒绝
<a name="storage-lens-s3-tables-permissions-troubleshooting-query"></a>

 **问题：**在 Amazon Athena 中查询 S3 Storage Lens 存储统计管理工具表时收到“访问被拒绝”错误。

 **解决方案：**验证以下内容：
+ 在 `aws-s3` 表存储桶上启用了分析集成
+ Lake Formation 权限配置正确
+ 您的 IAM 用户或角色拥有必要的 Amazon Athena 权限

### KMS 加密错误
<a name="storage-lens-s3-tables-permissions-troubleshooting-kms"></a>

 **问题：**访问加密表时收到与 KMS 相关的错误。

 **解决方案：**验证以下内容：
+ 您的 IAM 策略包括所需的 KMS 权限
+ KMS 密钥策略向 S3 Storage Lens 存储统计管理工具服务主体授予权限
+ KMS 密钥与您的 Storage Lens 存储统计管理工具配置位于同一区域

## 后续步骤
<a name="storage-lens-s3-tables-permissions-next-steps"></a>
+ 了解 [设置 Amazon S3 Storage Lens 存储统计管理工具权限](storage_lens_iam_permissions.md) 
+ 了解 [使用分析工具查询 S3 Storage Lens 存储统计管理工具数据](storage-lens-s3-tables-querying.md) 
+ 了解 [将 AI 助手与 S3 Storage Lens 存储统计管理工具表结合使用](storage-lens-s3-tables-ai-tools.md) 