权限示例场景 - Amazon Lake Formation
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

权限示例场景

以下场景有助于演示如何设置权限以保护对中的数据的访问Amazon Lake Formation。

雪莉是一名数据管理员。她想为她的公司建立一个数据湖, AnyCompany. 目前,所有数据都存储在 Amazon S3 中。John 是一名营销经理,需要对客户购买信息(包含在s3://customerPurchases)的写入权限。营销分析师迭戈今年夏天加入约翰。John 需要能够在不让 Shirley 参与的情况下授予 Diego 对数据执行查询的访问权限。

总结一下:

  • 雪莉是数据湖管理员。

  • John 需要CREATE_DATABASECREATE_TABLE权限才能在数据目录中创建新的数据库和表。

  • John 还需要SELECT对他创建的表具有INSERT、和DELETE权限。

  • Diego 需要表的SELECT权限才能运行查询。

的员工 AnyCompany 执行以下操作来设置权限。为清楚起见,此场景中显示的 API 操作显示了简化的语法。

  1. Shirley 向 Lake Formation 注册了包含客户购买信息的Amazon S3 路径。

    RegisterResource(ResourcePath("s3://customerPurchases"), false, Role_ARN )
  2. Shirley 授予Amazon S3 客户购买信息的权限。

    GrantPermissions(John, S3Location("s3://customerPurchases"), [DATA_LOCATION_ACCESS]) )
  3. 雪莉授予约翰创建数据库的权限。

    GrantPermissions(John, catalog, [CREATE_DATABASE])
  4. 约翰创建了数据库John_DB。John 自动拥有该数据库的CREATE_TABLE权限,因为他创建了该数据库。

    CreateDatabase(John_DB)
  5. 约翰创建了John_Table指向的桌子s3://customerPurchases。因为他创建了该表,所以他拥有该表的所有权限,并且可以对其授予权限。

    CreateTable(John_DB, John_Table)
  6. 约翰允许他的分析师迭戈访问这张桌子John_Table

    GrantPermissions(Diego, John_Table, [SELECT])