IAM跨帐号角色的权限

本文列出了跨帐户IAM角色中的权限以及每个角色的用途。

根据VPC的配置方式不同,权限也不同。

数据库管理VPC的IAM权限

Databricks需要以下IAM权限列表来有效地操作和管理集群。属性的工作空间仅应用此配置default (database -managed) VPC.创建AWS跨帐号角色策略,用于默认的数据库管理VPC创建跨帐号IAM角色

下表列出了默认配置中的Databricks IAM跨帐户角色权限、这些权限控制的资源以及每个权限的用途。

AWS IAM权限

AWS资源

目的

ec2: AllocateAddress

弹性IP地址

分配一个弹性IP,该弹性IP与用于集群安全连接的NAT Gateway相关联

ec2: AssociateDhcpOptions

DHCP

为VPC关联DHCP选项(或不关联DHCP选项)。

ec2: AssociateIamInstanceProfile

InstanceProfile

将实例概要文件与正在运行的EC2实例关联。这允许Databricks池实例在池中的整个生命周期中被具有不同实例概要的集群使用。

ec2: AssociateRouteTable

RouteTable

关联子网和路由表。

ec2: AttachInternetGateway

InternetGateway

为VPC挂载Internet网关,实现Internet与VPC之间的网络连接。目前需要连接到S3桶并更新工人和spark容器的代码。

ec2: AttachVolume

EBS卷

为EBS自动缩放附加卷。

ec2: AuthorizeSecurityGroupEgress

SecurityGroup

根据需要向安全组添加出口规则。

ec2: AuthorizeSecurityGroupIngress

SecurityGroup

向安全组添加入口规则。

ec2: CancelSpotInstanceRequests

SpotInstance

取消现场实例。

ec2: CreateDhcpOptions

Dhcp

创建DHCP选项。

ec2: CreateInternetGateway

InternetGateway

创建Internet网关。

ec2: CreateNatGateway

NatGateway

创建NAT网关

ec2: CreateRoute

路线

在工作空间设置期间创建路由

ec2: CreateRouteTable

RouteTable

在工作空间设置期间创建路由

ec2: CreateServiceLinkedRole

ServiceLinkedRole

设置对现货实例的支持。

ec2: CreateSecurityGroup

SecurityGroup

在初始设置期间创建安全组

ec2: CreateSubnet

子网

在创建工作空间的过程中,为VPC创建子网。

ec2: CreateTags

标签

在Databricks资源上添加标签。

ec2: CreateVolume

EBS卷

创建卷。

ec2: CreateVpc

VPC

创建数据库管理VPC。

ec2: CreateVpcEndpoint

VPCEndpoint

创建VPC端点作为配置VPC的一部分。

ec2: DeleteDhcpOptions

DHCPOptions

删除DHCPOptions

ec2: DeleteInternetGateway

InternetGateway

删除工作区期间删除Internet网关。

ec2: DeleteNatGateway

NatGateway

根据需要删除NAT网关,以设置安全集群连接中继。

ec2: DeleteRoute

路线

删除航线。

ec2: DeleteRouteTable

RouteTable

删除路由表。

ec2: DeleteSecurityGroup

SecurityGroup

删除工作空间时删除安全组。

ec2: DeleteSubnet

子网

删除子网。

ec2: DeleteTags

标签

从集群资源中移除标记,以允许Databricks池实例被具有不同标记的集群重用。

ec2: DeleteVolume

EBS卷

删除用于EBS自动伸缩的卷。请看本页。

ec2: DeleteVpc

VPC

删除工作空间时,删除VPC。

ec2: DeleteVpcEndpoints

VPCEndpoints

删除工作空间时,删除VPC端点

ec2: DescribeAvailabilityZones

AvailabilityZones

获取区域中的可用分区列表,以便Databricks可以在该区域中部署资源。

ec2: DescribeIamInstanceProfileAssociations

InstanceProfile

检查在EC2实例上设置的当前实例概要,以便在Databricks池实例被集群重用之前在该实例上设置正确的概要。

ec2: DescribeInstanceStatus

实例

确认Databricks AWS实例正常运行。

ec2: DescribeInstances

实例

确认Databricks AWS实例正常运行。

ec2: DescribeInternetGateways

InternetGateway

描述InternetGateway以确认Databricks AWS实例具有到internet的路由。

ec2: DescribeNatGateways

NATGateway

描述用于确认Databricks AWS实例在安全集群连接架构中具有到internet的路由的NAT网关。

ec2: DescribePrefixLists

PrefixList

创建前缀列表ID,创建出站安全组规则,允许流量从VPC中通过网关VPC端点访问AWS服务。

ec2: DescribeReservedInstancesOfferings

实例

描述支持AWS现货实例定价的保留实例定价。

ec2: DescribeRouteTables

RouteTable

确认在纳管VPC中路由表是否正确建立。

ec2: DescribeSecurityGroups

SecurityGroup

确认AWS安全组已正确设置。

ec2: DescribeSpotInstanceRequests

实例

描述现场实例。

ec2: DescribeSpotPriceHistory

SpotInstance

描述现场实例。

ec2: DescribeSubnets

子网

确认在“数据库VPC”中已正确设置子网。

ec2: DescribeVolumes

体积

列出卷。

ec2: DescribeVpcs

VPC

确认工作空间的VPC已正确设置。

ec2: DetachInternetGateway

InternetGateway

在删除工作区期间分离创建的Internet网关的数据库。

ec2: DisassociateIamInstanceProfile

InstanceProfile

解除实例概要文件与EC2实例的关联,以便具有不同实例概要文件的集群可以使用xDatabricks池实例。

ec2: DisassociateRouteTable

RouteTable

删除工作空间时分离Databricks创建的路由表。

ec2: ModifyVpcAttribute

VPCAttribute

配置数据库管理VPC。

ec2: PutRolePolicy

RolePolicy

配置Databricks使用现货实例。

ec2: ReleaseAddress

地址

在删除工作区期间分离Databricks创建的地址。

ec2: ReplaceIamInstanceProfileAssociation

InstanceProfile

将EC2实例上的一个实例概要交换为另一个实例概要,这样Databricks池实例可以被具有不同实例概要的集群使用。

ec2: RequestSpotInstances

SpotInstance

请求点实例。

ec2: RevokeSecurityGroupEgress

SecurityGroup

如果需要,更新databicks管理的安全组。

ec2: RevokeSecurityGroupIngress

SecurityGroup

更新安全组。

ec2: RunInstances

实例

启动AWS实例创建Spark集群。在扩大现有Spark集群时也可以利用。

ec2: TerminateInstances

实例

在集群缩减期间终止Spark EC2节点或终止给定的Spark集群。

客户管理VPC的IAM权限

如果你使用customer-managed VPC在美国,跨帐户IAM角色需要的权限较少。此功能需要高级或企业级。

如需创建AWS跨帐户角色策略,供客户管理VPC使用,请参见由客户管理的VPC,默认策略限制

如果需要,可以进一步缩小权限范围。若要创建AWS跨帐户角色策略,以便在客户管理的VPC中使用,并对资源进行其他自定义限制,请参见由客户管理的VPC,自定义策略限制

下表列出了客户管理的VPC中Databricks IAM跨帐户角色的权限、所控制的资源以及每个权限的用途。

AWS IAM权限

AWS资源

目的

ec2: AssociateIamInstanceProfile

InstanceProfile

将实例概要文件与正在运行的EC2实例关联,这样Databricks池实例在池中的整个生命周期中都可以被具有不同实例概要文件的集群使用。

ec2: AttachVolume

体积

附加卷。

ec2: AuthorizeSecurityGroupEgress

SecurityGroup

可根据需要,为安全组添加出口规则。

ec2: AuthorizeSecurityGroupIngress

SecurityGroup

向安全组添加入口规则。

ec2: CancelSpotInstanceRequests

SpotInstance

取消现场实例。

ec2: CreateTags

标签

在Databricks资源上添加标签。

ec2: CreateVolume

体积

创建卷。

ec2: DeleteTags

标签

从集群资源中删除标记,以便Databricks池实例可以被具有不同标记的集群重用。

ec2: DeleteVolume

体积

删除卷。

ec2: DescribeAvailabilityZones

AvailabilityZones

获取区域中的可用分区列表,以便Databricks可以在该区域中部署资源。

ec2: DescribeIamInstanceProfileAssociations

InstanceProfile

在集群重用Databricks池实例之前,检查在EC2实例上设置的当前实例概要,以确认在Databricks池实例上设置了正确的概要。

ec2: DescribeInstanceStatus

实例

确认Databricks AWS实例正常运行。

ec2: DescribeInstances

实例

确认Databricks AWS实例正常运行。

ec2: DescribeInternetGateways

InternetGateway

描述InternetGateway以确认Databricks AWS实例具有到internet的路由。

ec2: DescribeNatGateways

NATGateway

描述NATGateway,以确认Databricks AWS实例在安全集群连接架构中具有到internet的路由。

ec2: DescribeNetworkAcls

NetworkAcl

确认正确的网络ACL设置。

ec2: DescribePrefixLists

PrefixList

获取前缀列表id列表,用于创建出站安全组规则,允许VPC中的流量通过网关VPC端点访问AWS服务。

ec2: DescribeReservedInstancesOfferings

实例

获取保留实例定价作为AWS现货实例定价的起点。

ec2: DescribeRouteTables

RouteTable

确认VPC中路由表是否正确建立。

ec2: DescribeSecurityGroups

SecurityGroup

确认AWS安全组已正确设置。

ec2: DescribeSpotInstanceRequests

实例

描述现货实例。

ec2: DescribeSpotPriceHistory

SpotInstance

描述现场实例。

ec2: DescribeSubnets

子网

确认VPC中的子网已正确设置。

ec2: DescribeVolumes

体积

卷列表。

ec2: DescribeVpcAttribute

VPC

描述VPC属性,包括但不限于enableDnsHostnames

ec2: DescribeVpcs

VPC

确认已创建Databricks工作区VPC。

ec2: DetachVolume

体积

在集群关闭期间从EC2实例中分离EBS卷。

ec2: DisassociateIamInstanceProfile

InstanceProfile

将实例概要文件与EC2实例解除关联,以便具有不同实例概要文件的集群可以使用池实例。

ec2: ReplaceIamInstanceProfileAssociation

InstanceProfile

将EC2实例上的一个实例概要交换为另一个实例概要,以便具有不同实例概要的集群可以使用池实例。

ec2: RequestSpotInstances

SpotInstance

请求点实例。

ec2: RevokeSecurityGroupEgress

SecurityGroup

如果需要,更新databicks管理的安全组

ec2: RevokeSecurityGroupIngress

SecurityGroup

更新安全组。

ec2: RunInstances

实例

启动AWS实例创建Spark集群。也可用于扩展现有Spark集群。

ec2: TerminateInstances

实例

在集群缩减或终止Spark集群时,终止Spark EC2节点。