本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
分配和管理 EMR Studio 用户
创建 EMR Studio 后,您可以为其分配用户和群组。分配、更新和删除用户的方法取决于 Studio 身份验证模式。
-
使用IAM身份验证模式时,可以在身份提供商中IAM或与身份提供商一起配置 EMR Studio 用户分配IAM和权限。
-
在 I IAM dentity Center 身份验证模式下,您可以使用 Amazon EMR 管理控制台或 Amazon CLI 来管理用户。
要了解有关 Amazon EMR Studio 身份验证的更多信息,请参阅为 Amazon EMR Studio 选择一种身份验证模式。
将用户或群组分配给 EMR Studio
- IAM
-
使用时为 Amazon EMR Studio 设置IAM身份验证模式,您必须在用户的IAM权限策略中允许该
CreateStudioPresignedUrl
操作,并将用户限制在特定 Studio 中。您可以将CreateStudioPresignedUrl
包括在您的 IAM 身份验证模式的用户权限 中,或者使用单独的策略。要将用户限制到一个工作室(或一组工作室),您可以使用基于属性的访问控制 (ABAC) 或在权限策略的
Resource
元素中指定工作室的 Amazon 资源名称 (ARN)。例 使用工作室将用户分配到工作室 ARN
以下示例策略允许用户访问特定 EMR Studio,并在
Resource
元素中指定工作室的 Amazon 资源名称 (ARN)。CreateStudioPresignedUrl
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCreateStudioPresignedUrl", "Effect": "Allow", "Action": [ "elasticmapreduce:CreateStudioPresignedUrl" ], "Resource": "arn:aws:elasticmapreduce:
<region>
:<account-id>
:studio/<studio-id>
" } ] }例 将用户分配到ABAC用于IAM身份验证的 Studio
有多种方法可以为 Studio 配置基于属性的访问控制 (ABAC)。例如,您可以将一个或多个标签附加到 EMR Studio,然后创建一个IAM策略,将
CreateStudioPresignedUrl
操作限制在具有这些标签的特定工作室或一组工作室中。您可以在 Studio 创建期间或之后添加标签。要将标签添加到现有 Studio,您可以使用 Amazon CLI
emr add-tags
命令。以下示例将带有键值对的标签添加 Team = Data Analytics
到 Studio。EMRaws emr add-tags --resource-id
<example-studio-id>
--tags Team="Data Analytics"以下示例权限策略允许使用标签键值对的 EMR Studios
CreateStudioPresignedUrl
执行操作。Team = DataAnalytics
有关使用标签进行访问控制的更多信息,请参阅使用标签控制对 IAM 用户和角色的访问以及他们进行的访问或使用标签控制对 Amazon 资源的访问。{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCreateStudioPresignedUrl", "Effect": "Allow", "Action": [ "elasticmapreduce:CreateStudioPresignedUrl" ], "Resource": "arn:aws:elasticmapreduce:
<region>
:<account-id>
:studio/*", "Condition": { "StringEquals": { "elasticmapreduce:ResourceTag/Team": "Data Analytics" } } } ] }例 使用 aws: SourceIdentity 全局条件键将用户分配到 Studio
使用IAM联合身份验证时,您可以使用权限策略中的全局条件密钥
aws:SourceIdentity
在用户担任您的联合IAM角色时向他们授予 Studio 访问权限。您必须首先配置您的身份提供商 (IdP),使其在用户进行身份验证并担任您的联合IAM角色时返回标识字符串,例如电子邮件地址或用户名。 IAM将全局条件密钥设置
aws:SourceIdentity
为 IdP 返回的标识字符串。有关更多信息,请参阅 Amazon 安全博客中的如何将IAM角色活动与企业身份关联
博客文章和全局条件键参考中的 a ws: SourceIdentity 条目。 以下示例策略允许执行该
CreateStudioPresignedUrl
操作,并向用户提供与指定aws:SourceIdentity
的 EMR Studio<example-source-identity>
访问权限相匹配的用户<example-studio-arn>
。{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "elasticmapreduce:CreateStudioPresignedUrl", "Resource": "
<example-studio-arn>
", "Condition": { "StringLike": { "aws:SourceIdentity": "<example-source-identity>
" } } } ] } - IAM Identity Center
-
将用户或组分配给 EMR Studio 时,您可以指定会话策略,该策略为该用户或组定义了细粒度的权限,例如创建新EMR集群的能力。Amazon EMR 存储这些会话策略映射。您可以在分配后更新用户或组的会话策略。
注意
用户或组的最终权限是在您的 EMR Studio 用户角色中定义的权限与该用户或组的会话策略中定义的权限的交集。如果用户属于分配给 Studio 的多个群组,EMRStudio 会对该用户使用权限并集。
使用亚马逊EMR控制台将用户或群组分配给 EMR Studio
导航到新的 Amazon EMR 控制台,然后从侧面导航栏中选择 “切换到旧主机”。有关切换到旧控制台后预期情况的更多信息,请参阅 Using the old console。
-
从左侧导航栏中选择 EMRStudio。
-
从 Studios 列表选择您的 Studio 名称,或选择 Studio 后选择 View details (查看详细信息),以打开 Studio 详细信息页面。
-
选择 Add Users (添加用户) 以查看 Users (用户) 和 Groups (组) 搜索表。
-
选择 Users (用户) 选项卡或 Groups (组) 选项卡,然后在搜索栏中输入搜索词以查找用户或组。
-
从搜索结果列表中选择一个或多个用户或组。您可以在 Users (用户) 选项卡和 Groups (组) 选项卡之间来回切换。
-
选择要添加到 Studio 的用户和组后,选择 Add (添加)。您应该会看到 Studio users (Studio 用户) 列表中显示用户和组。列表可能需要几秒钟才能刷新。
-
按照更新分配给 Studio 的用户或组的权限中的说明优化用户或组的 Studio 权限。
使用 EMR Studio 将用户或群组分配给 Studio Amazon CLI
为以下
create-studio-session-mapping
参数插入您自己的值。有关create-studio-session-mapping
命令的更多信息,请参阅 Amazon CLI 命令参考。-
--studio-id
– 要将用户或组分配到 Studio 的 ID。有关如何检索 Studio ID 的说明,请参阅 查看 Studio 详细信息。 -
--identity-name
– Identity Store 中的用户或组的名称。有关更多信息,UserName请参阅 Ident ity Store API 参考中的用户和DisplayName群组信息。 -
--identity-type
– 使用USER
或GROUP
指定身份类型。 -
--session-policy-arn
— 您要与用户或群组关联的会话策略的 Amazon 资源名称 (ARN)。例如,arn:aws:iam::
。有关更多信息,请参阅 为 EMR Studio 用户创建权限策略。<aws-account-id>
:policy/EMRStudio_Advanced_User_Policy
aws emr create-studio-session-mapping \ --studio-id
<example-studio-id>
\ --identity-name<example-identity-name>
\ --identity-type<USER-or-GROUP>
\ --session-policy-arn<example-session-policy-arn>
注意
为了便于读取,包含 Linux 行继续符(\)。它们可以通过 Linux 命令删除或使用。对于 Windows,请将它们删除或替换为脱字号(^)。
使用
get-studio-session-mapping
命令验证新分配。<example-identity-name>
替换为您更新的用户或群组的IAM身份中心名称。aws emr get-studio-session-mapping \ --studio-id
<example-studio-id>
\ --identity-type<USER-or-GROUP>
\ --identity-name<user-or-group-name>
\
更新分配给 Studio 的用户或组的权限
- IAM
-
要在使用IAM身份验证模式时更新用户或群组IAM权限,请使用IAM更改附加到您的IAM身份(用户、群组或角色)的权限策略。
有关更多信息,请参阅 IAM 身份验证模式的用户权限。
- IAM Identity Center
-
使用控制台更新用户或群组的 EMR Studio 权限
导航到新的 Amazon EMR 控制台,然后从侧面导航栏中选择 “切换到旧主机”。有关切换到旧控制台后预期情况的更多信息,请参阅 Using the old console。
-
从左侧导航栏中选择 EMRStudio。
-
从 Studios 列表选择您的 Studio 名称,或选择 Studio 后选择 View details (查看详细信息),以打开 Studio 详细信息页面。
-
在 Studio 详细信息页面上的 Studio users (Studio 用户) 列表中,搜索要更新的用户或组。您可以按名称或身份类型进行搜索。
-
选择要更新的用户或组,然后选择 Assign policy (分配策略) 以打开 Session policy (会话策略) 对话框。
-
选择要应用于您在步骤 5 中选择的用户或组的策略,然后选择 Apply policy (应用策略)。Studio users (Studio 用户) 列表应在 Session policy (会话策略) 列中显示您更新的用户或组的策略名称。
要更新用户或群组的 EMR Studio 权限,请使用 Amazon CLI
为以下
update-studio-session-mappings
参数插入您自己的值。有关update-studio-session-mappings
命令的更多信息,请参阅 Amazon CLI 命令参考。aws emr update-studio-session-mapping \ --studio-id
<example-studio-id>
\ --identity-name<name-of-user-or-group-to-update>
\ --session-policy-arn<new-session-policy-arn-to-apply>
\ --identity-type<USER-or-GROUP>
\使用
get-studio-session-mapping
命令验证新的会话策略分配。<example-identity-name>
替换为您更新的用户或群组的IAM身份中心名称。aws emr get-studio-session-mapping \ --studio-id
<example-studio-id>
\ --identity-type<USER-or-GROUP>
\ --identity-name<user-or-group-name>
\
从 Studio 中删除用户或组
- IAM
-
要在使用IAM身份验证模式时从 EMR Studio 中移除用户或群组,必须通过重新配置用户的权限策略来撤消该用户对 Studio 的访问IAM权限。
在以下示例策略中,假设您有一个带有标签键值对的 EMR Studio。
Team = Quality Assurance
根据该策略,用户可以访问标有Team
键的 Studios,该键的值等于Data Analytics
或者Quality Assurance
。要从标记为Team = Quality Assurance
的 Studio 中删除用户,必须从标签值列表中删除Quality Assurance
。{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCreateStudioPresignedUrl", "Effect": "Allow", "Action": [ "elasticmapreduce:CreateStudioPresignedUrl" ], "Resource": "arn:aws:elasticmapreduce:
<region>
:<account-id>
:studio/*", "Condition": { "StringEquals": { "emr:ResourceTag/Team": [ "Data Analytics", "Quality Assurance" ] } } } ] } - IAM Identity Center
-
使用控制台从 EMR Studio 中移除用户或群组
导航到新的 Amazon EMR 控制台,然后从侧面导航栏中选择 “切换到旧主机”。有关切换到旧控制台后预期情况的更多信息,请参阅 Using the old console。
-
从左侧导航栏中选择 EMRStudio。
-
从 Studios 列表选择您的 Studio 名称,或选择 Studio 后选择 View details (查看详细信息),以打开 Studio 详细信息页面。
-
在 Studio 详细信息页面上的 Studio users (Studio 用户) 列表中,查找要从 Studio 中删除的用户或组。您可以按名称或身份类型进行搜索。
-
选择要删除的用户或组,选择 Delete (删除) 并确认。您删除的用户或组将从 Studio users (Studio 用户) 列表中消失。
要从 EMR Studio 中移除用户或群组,请使用 Amazon CLI
为以下
delete-studio-session-mapping
参数插入您自己的值。有关delete-studio-session-mapping
命令的更多信息,请参阅 Amazon CLI 命令参考。aws emr delete-studio-session-mapping \ --studio-id
<example-studio-id>
\ --identity-type<USER-or-GROUP>
\ --identity-name<name-of-user-or-group-to-delete>
\