aws lakeformation注册s3位置的原因

embedded/2024/10/22 4:48:16/

参考资料

  • lakeformation底层数据的访问逻辑

向lakeformation注册s3位置的目的是让lakeformation控制对AWS S3 位置底层数据的访问(以下简称LF)

注册s3位置后可以进行两种授权

  • 数据访问授权(SELECTINSERTDELETE

  • 数据位置授权,在指定s3位置创建和修改元数据(在授权CREATE_TABLE或ALTER之后限制创建的位置)。

数据访问授权

当注册第一个 Amazon S3 路径时,将代表您创建服务相关角色和新的内联策略。Lake Formation 将第一个路径添加到内联策略,并将其附加到服务相关角色

注册位置时可以选择角色,授予该角色对该位置的读/写权限,LF在向集成 AWS 服务提供临时凭证时承担该角色(例如,AWSServiceRoleForLakeFormationDataAccess)

image.png

注册结果如下

image.png

一些例外情景

  • 如果手动删除s3桶,可能出现权限无法删除的问题,需要手动创建s3桶并注册资源,之后重新解注册

  • 由于AWSServiceRoleForLakeFormationDataAccess为服务角色,因此无法修改策略。只能通过api修改,相关api为

    aws lakeformation deregister-resource --resource-arn arn:aws-cn:s3:::lakefowmation
    

具体的策略如下所示

image.png

走lakeformation路径的数据访问者需要lakeformation:GetDataAccess权限

Amazon Athena 要求用户具有该 lakeformation:GetDataAccess 权限。其他集成服务需要其基础执行角色才能具有该 lakeformation:GetDataAccess 权限

如果要对现有的glue data catalog进行管理,需要进行额外配置。推荐开启混合模式同时兼容IAM授权和lakeformation

  • 开启混合访问模式避免现有工作流中断
  • 若要在混合访问模式下共享数据目录数据库和表,需要将跨帐户版本设置更新到版本 4

使用 Lake Formation GetEffectivePermissionsForPath API 操作,可以确定引用 Amazon S3 位置的数据目录资源,以及对这些资源具有权限的委托人。

$ aws lakeformation get-effective-permissions-for-path --resource-arn arn:aws-cn:s3:::zhaojiew-datalake
{"Permissions": [],"NextToken": "eyJoYXZlQ2F0YWxvZ0VudGl0aWVzRXhoYXVzdGVkIjp0cnVlfQ=="
}

如果iam没有lakeformation权限或者表没有schema会出现没有找到column的报错,https://repost.aws/questions/QUkhhW1dHXSc-1yGXt-TR_5A/column-cannot-be-resolved-querying-athena-through-lambda-and-boto3

The error "COLUMN_NOT_FOUND: line 1:8: SELECT * not allowed ..." typically occurs when (1) the user/role does not have sufficient permissions on the table in Lake Formation. (2) the table's classification is UNKNOWN or the table has no column definitions.

如果没有权限会出现s3的access denied报错

image.png

数据位置授权

数据位置权限使主体能够创建和更改指向指定已注册的 Amazon S3 位置的数据目录资源,例如alter和create table

image.png

数据位置授权之前,必须先注册数据位置到LF中。常见的错误包括glue crawler爬表出现lakeformation权限不足,表明没有权限在指定的s3位置创建表。


http://www.ppmy.cn/embedded/43129.html

相关文章

linux下宝塔负载100%解决方法

今天发现服务器宝塔面板负载居然是100% 但是cpu 和内存其实并不高 通过命令查看主机 uptime 中load average 居然高达18.23 看来负载是真的高了 通过vmstat 看看具体问题 procs: ​ r 表示运行和等待CPU时间片的进程数,这个值如果长期大于系统CPU个数…

一键开关机电路

大家好,我是记得诚。 球友问了一个问题,是这样的。 诚哥,请教一个问题。这个一键开关机有没有问题,或者有哪些改进的地方。 1、内部电源供电,可外接适配器。 2、VBAT接锂电池,VBUS接电源适配器。 3、BU…

web学习笔记(五十八)

目录 1. v-model 双向数据绑定 2. 事件修饰符 3. 路径别名 4. setup语法糖 4.1 语法糖的概念 4.2 setup语法糖 5. 配置代理服务器 1. v-model 双向数据绑定 v-model 双向数据绑定只能使用在表单标签; v-model双向数据绑定原理:采用 Object.de…

go升级后 编译的exe在win7上无法正常运行

D:/Go/src/runtime/sys_windows_amd64.s:65 x75 fpx22fca sp-0x22fc8日 升级到go 1.21后报一堆错误,要死了啊 原来是go 1.21不支持win7了,必须把go退回到1.20版本 谷歌发布编程语言 Go 1.21 版本:取消支持微软 Win7/8 及苹果 macOS 10.13/10…

Kubernetes 容器资源管理Resources和探针Probe

资源配额 Resources 在 Kubernetes 中,resources 配置用于设置容器的资源请求和限制,以确保集群中的资源(如 CPU 和内存)得到合理分配和使用。 在之前的pod中,不写 resources 字段。就意味着 Pod 对运行的资源要求“…

【openlayers系统学习】3.4波段数学计算(计算NDVI)

四、波段数学计算(计算NDVI) 我们已经看到了如何使用 ol/source/GeoTIFF​ 源代码来渲染真彩色和假彩色合成。我们通过将缩放的反射率值直接渲染到红色、绿色或蓝色显示通道中的一个来实现这一点。还可以对来自GeoTIFF(或其他数据瓦片源&…

基于SVm和随机森林算法模型的中国黄金价格预测分析与研究

摘要 本研究基于回归模型,运用支持向量机(SVM)、决策树和随机森林算法,对中国黄金价格进行预测分析。通过历史黄金价格数据的分析和特征工程,建立了相应的预测模型,并利用SVM、决策树和随机森林算法进行训…

211大学计算机专业不考408,新增的交叉专业却考408!南京农业大学计算机考研考情分析!

南京农业大学信息科技学院可追溯至1981年成立的计算中心和1985年筹建的农业图书情报专业。1987年设立了农业图书情报系,1993 年农业图书情报系更名为信息管理系,本科专业名称也于1999年更名为信息管理与信息系统专业。1994年计算中心开始招收计算机应用专…