亚马逊SageMaker Studio 是一个基于 Web 的机器学习 (ML) 集成开发环境 (IDE),可让您构建、训练、调试、部署和监控您的 ML 模型。 要在您的 AWS 账户和区域中配置 Studio,您首先需要创建一个 亚马逊SageMaker 域——封装您的 ML 环境的构造。 更具体地说,SageMaker 域由关联的 亚马逊弹性文件系统 (Amazon EFS) 卷、授权用户列表以及各种安全、应用程序、策略和 亚马逊虚拟私有云 (亚马逊 VPC)配置。
创建 SageMaker 域时,您可以选择使用 AWS IAM 身份中心 (AWS 单点登录的后继者)或 AWS身份和访问管理 (IAM) 用于用户身份验证方法。 两种身份验证方法都有自己的用例集; 在本文中,我们重点关注使用 IAM Identity Center 或单点登录 (SSO) 模式作为身份验证方法的 SageMaker 域。
使用 SSO 模式,您可以在 IAM Identity Center 中设置 SSO 用户和组,然后从 Studio 控制台向 SSO 组或用户授予访问权限。 目前,域中的所有 SSO 用户都继承域的执行角色。 这可能不适用于所有组织。 例如,管理员可能希望根据 Studio SSO 用户的 Active Directory (AD) 组成员身份为其设置 IAM 权限。 此外,由于管理员需要手动授予 SSO 用户对 Studio 的访问权限,因此该过程可能无法在数百名用户入职时扩展。
在这篇文章中,我们为基于 AD 组成员身份以最低权限将 SSO 用户配置到 Studio 的解决方案提供了说明性指导。 本指南使您能够快速扩展以将数百名用户加入 Studio,并实现安全性和合规性状况。
解决方案概述
下图说明了解决方案体系结构。
在 Studio 中配置 AD 用户的工作流程包括以下步骤:
- 设置一个 SSO 模式下的 Studio 域.
- 对于每个 AD 组:
- 使用适当的细粒度 IAM 策略设置您的 Studio 执行角色
- 在 AD 组角色映射中记录一个条目 Amazon DynamoDB 表。
或者,您可以采用基于 AD 组名称的 IAM 角色 ARN 命名标准,并派生 IAM 角色 ARN,而无需将映射存储在外部数据库中。
- 将您的 AD 用户和组以及成员身份同步到 AWS Identity Center:
- 如果您使用的是支持 SCIM 的身份提供商 (IdP),请使用 SCIM API 与 IAM Identity Center 集成。
- 如果您使用的是自我管理的 AD,则可以使用 AD Connector。
- 在您的公司 AD 中创建 AD 组时,请完成以下步骤:
- 在 IAM Identity Center 中创建相应的 SSO 组。
- 使用 SageMaker 控制台将 SSO 组关联到 Studio 域。
- 在您的公司 AD 中创建 AD 用户时,会在 IAM Identity Center 中创建相应的 SSO 用户。
- 当 AD 用户分配到 AD 组时,IAM Identity Center API (创建群组成员) 被调用,并创建 SSO 组成员身份。
- 前面的事件已登录 AWS 云跟踪 具有名称
AddMemberToGroup
. - An 亚马逊EventBridge 规则侦听 CloudTrail 事件并匹配
AddMemberToGroup
规则模式。 - EventBridge 规则触发目标 AWS Lambda 功能。
- 此 Lambda 函数将回调 IAM 身份中心 API,获取 SSO 用户和组信息,并执行以下步骤以创建 Studio 用户配置文件(创建用户档案) 对于 SSO 用户:
- 查找 DynamoDB 表以获取与 AD 组对应的 IAM 角色。
- 使用从查找表中获取的 SSO 用户和 IAM 角色创建用户配置文件。
- SSO 用户被授予对 Studio 的访问权限。
- SSO 用户通过 Studio 域 URL 重定向到 Studio IDE。
请注意,在撰写本文时,管理员需要在 SageMaker 域级别使用 SageMaker 控制台手动执行步骤 4b(将 SSO 组关联到 Studio 域)。
设置 Lambda 函数以创建用户配置文件
该解决方案使用 Lambda 函数创建 Studio 用户配置文件。 我们提供以下示例 Lambda 函数,您可以复制和修改这些函数以满足您对自动创建 Studio 用户配置文件的需求。 此函数执行以下操作:
- 接收 CloudTrail
AddMemberToGroup
来自 EventBridge 的事件。 - 取回工作室
DOMAIN_ID
来自环境变量(您也可以对域 ID 进行硬编码,或者如果您有多个域,也可以使用 DynamoDB 表)。 - 从虚拟标记表中读取以将 AD 用户与执行角色相匹配。 如果您使用的是表驱动方法,则可以将其更改为从 DynamoDB 表中获取。 如果您使用 DynamoDB,您的 Lambda 函数的执行角色也需要从表中读取的权限。
- 根据 CloudTrail 事件数据,从 IAM Identity Center 检索 SSO 用户和 AD 组成员信息。
- 为 SSO 用户创建一个 Studio 用户配置文件,其中包含 SSO 详细信息和匹配的执行角色。
请注意,默认情况下,Lambda 执行角色无权创建用户配置文件或列出 SSO 用户。 创建 Lambda 函数后,访问该函数在 IAM 上的执行角色,并在根据您的组织要求按需缩小范围后将以下策略附加为内联策略。
为 CloudTrail 事件设置 EventBridge 规则
EventBridge 是一种无服务器事件总线服务,可用于将应用程序与来自各种来源的数据连接起来。 在此解决方案中,我们创建了一个基于规则的触发器:EventBridge 侦听事件并根据提供的模式进行匹配,如果模式匹配成功则触发 Lambda 函数。 如解决方案概述中所述,我们听 AddMemberToGroup
事件。 要进行设置,请完成以下步骤:
- 在 EventBridge 控制台上,选择 规则 在导航窗格中。
- 建立规则.
- 提供规则名称,例如,
AddUserToADGroup
. - (可选)输入描述。
- 选择 默认 用于事件总线。
- 下 规则类型,选择 具有事件模式的规则,然后选择 下一页.
- 点击 构建事件模式 页面,选择 事件源 as AWS 活动或 EventBridge 合作伙伴活动.
- 下 事件模式, 选择 自定义模式(JSON 编辑器) 选项卡并输入以下模式:
- 下一页.
- 点击 选择目标 页面,选择 AWS 服务作为目标类型,Lambda 函数作为目标,以及您之前创建的函数,然后选择 下一页.
- 下一页 在 配置标签 页,然后选择 建立规则 在 查看并创建 页面上发布服务提醒。
设置 Lambda 函数和 EventBridge 规则后,您可以测试此解决方案。 为此,请打开您的 IdP,并将用户添加到映射了 Studio 执行角色的 AD 组之一。 添加用户后,您可以验证 Lambda 函数日志以检查事件,还可以查看自动配置的 Studio 用户。 此外,您可以使用 描述用户档案 API 调用以验证创建的用户是否具有适当的权限。
支持多个 Studio 帐户
要支持具有上述架构的多个 Studio 帐户,我们建议进行以下更改:
- 设置映射到每个 Studio 帐户级别的 AD 组。
- 在每个 Studio 帐户中设置组级 IAM 角色。
- 设置或派生组到 IAM 角色的映射。
- 设置要执行的 Lambda 函数 跨账户角色假设, 基于 IAM 角色映射 ARN 和创建的用户配置文件。
取消配置用户
当用户从他们的 AD 组中删除时,您也应该从 Studio 域中删除他们的访问权限。 借助 SSO,当删除用户时,如果 AD 与 IAM 身份中心同步到位,则该用户在 IAM 身份中心中会自动被禁用,并且他们的 Studio 应用程序访问权限会立即被撤销。
但是,Studio 上的用户配置文件仍然存在。 您可以使用 CloudTrail 和 Lambda 函数添加类似的工作流,以从 Studio 中删除用户配置文件。 EventBridge 触发器现在应该监听 删除组成员 事件。 在 Lambda 函数中,完成以下步骤:
- 从用户和组 ID 获取用户配置文件名称。
- 使用列出用户配置文件的所有正在运行的应用程序 列出应用程序 API调用,过滤
UserProfileNameEquals
范围。 确保检查分页响应,以列出用户的所有应用程序。 - 为用户删除所有正在运行的应用程序,并等待所有应用程序被删除。 您可以使用 描述应用 用于查看应用程序状态的 API。
- 当所有应用程序都在 删除 状态(或 失败), 删除用户配置文件。
有了这个解决方案,ML 平台管理员可以在一个中央位置维护组成员资格,并通过 EventBridge 和 Lambda 函数自动管理 Studio 用户配置文件。
以下代码显示了一个示例 CloudTrail 事件:
以下代码显示了一个示例 Studio 用户配置文件 API 请求:
结论
在这篇文章中,我们讨论了管理员如何根据 AD 组成员身份为数百名用户扩展 Studio 入职。 我们展示了一个端到端的解决方案架构,组织可以采用该架构来自动化和扩展他们的入职流程,以满足他们的敏捷性、安全性和合规性需求。 如果您正在寻找一种可扩展的解决方案来自动化您的用户入职,请尝试此解决方案,并在下方留下您的反馈! 有关加入 Studio 的更多信息,请参阅 加入 Amazon SageMaker 域.
关于作者
拉姆·维塔尔 是 AWS 的机器学习专家解决方案架构师。 他在架构和构建分布式、混合和云应用程序方面拥有 20 多年的经验。 他热衷于构建安全且可扩展的 AI/ML 和大数据解决方案,以帮助企业客户进行云采用和优化之旅,以改善他们的业务成果。 在空闲时间,他骑着摩托车和他 2 岁的小绵羊一起散步!
杜尔加苏里 是 Amazon SageMaker Service SA 团队的 ML 解决方案架构师。 她热衷于让每个人都能接触到机器学习。 在 AWS 的 4 年中,她帮助为企业客户建立了 AI/ML 平台。 当她不工作时,她喜欢骑摩托车、看推理小说,以及和她 5 岁的哈士奇一起徒步旅行。
- SEO 支持的内容和 PR 分发。 今天得到放大。
- EVM财务。 去中心化金融的统一接口。 访问这里。
- 量子传媒集团。 IR/PR 放大。 访问这里。
- 柏拉图爱流。 Web3 数据智能。 知识放大。 访问这里。
- Sumber: https://aws.amazon.com/blogs/machine-learning/onboard-users-to-amazon-sagemaker-studio-with-active-directory-group-specific-iam-roles/
- :具有
- :是
- :不是
- $UP
- 1
- 11
- 116
- 20
- 20 年
- 200
- 22
- 24
- 7
- 9
- a
- 关于
- 接受
- ACCESS
- 无障碍
- 账号管理
- 账户
- 操作
- 行动
- 要积极。
- Ad
- 加
- 添加
- 另外
- 管理员
- 管理员
- 采用
- 采用
- 后
- 驳
- AI / ML
- 所有类型
- 让
- 还
- Amazon
- 亚马逊SageMaker
- 亚马逊SageMaker Studio
- 亚马逊网络服务
- an
- 和
- API
- APIs
- 应用领域
- 应用领域
- 的途径
- 适当
- 应用
- 架构
- 保健
- AS
- 分配
- 律师
- 相关
- 假设
- At
- 连接
- 认证
- 授权
- 自动化
- 自动
- 自动化
- AWS
- 背部
- 基于
- BE
- 因为
- 很
- 大
- 大数据运用
- 身体
- 都
- 建立
- 建筑物
- 总线
- 商业
- by
- 呼叫
- CAN
- 例
- Center
- 中央
- 更改
- 更改
- 字符
- 查
- 客户
- 云端技术
- 云采用
- 码
- COM的
- 完成
- 符合
- 分享链接
- 由
- 安慰
- 建设
- 上下文
- 公司
- 相应
- 创建信息图
- 创建
- 创造
- 创建
- 目前
- 合作伙伴
- data
- 数据库
- 默认
- 证明
- 部署
- 描述
- 细节
- 详情
- 研发支持
- 禁用
- 讨论
- 分布
- do
- 不会
- 做
- 域
- 域名
- 别
- 向下
- 每
- 此前
- 编辑
- 效果
- 或
- 其他
- 邮箱地址
- 使
- 端至端
- 输入
- 企业
- 条目
- 环境
- 活动
- 事件
- 每个人
- 例子
- 执行
- 体验
- 解释
- 外部
- false
- 反馈
- 文件
- 过滤
- 姓氏:
- 专注焦点
- 以下
- 针对
- 止
- 功能
- 功能
- 此外
- 得到
- 授予
- 授予
- 团队
- 组的
- 指导
- 处理
- 有
- he
- 帮助
- 帮助
- 这里
- 他的
- 创新中心
- HTML
- HTTP
- HTTPS
- 数百
- 杂交种
- ID
- 身分
- if
- 说明
- 立即
- 进口
- 改善
- in
- 包括
- 信息
- 例
- 集成
- 积分
- 调用
- IT
- 旅程
- JSON
- 学习
- 最少
- 离开
- 让
- Level
- 清单
- 圖書分館的位置
- 记录
- 逻辑
- 寻找
- 查找
- 爱
- 机
- 机器学习
- 保持
- 使
- 制作
- 颠覆性技术
- 手动
- 制图
- 匹配
- 匹配
- 可能..
- 满足
- 会员
- 籍
- 会员资格
- 方法
- 方法
- ML
- 时尚
- 模型
- 修改
- 显示器
- 更多
- 摩托车
- 多
- 神秘
- 姓名
- 命名
- 旅游导航
- 需求
- 打印车票
- 需要
- 需要
- 没什么
- 现在
- 获得
- of
- 奥克塔
- on
- 板载
- 前期洽谈
- 一旦
- 一
- 打开
- 优化
- or
- 组织
- 组织
- OS
- 输出
- 结果
- 超过
- 简介
- 己
- 页
- 面包
- 参数
- 合伙人
- 多情
- 模式
- 模式
- 演出
- 执行
- 施行
- 权限
- 仍然存在
- 地方
- 平台
- 平台
- 柏拉图
- 柏拉图数据智能
- 柏拉图数据
- 政策
- 帖子
- 私立
- 特权
- 过程
- 本人简介
- 简介
- 提供
- 提供
- 提供者
- 规定
- 很快
- 阅读
- 建议
- 地区
- 去掉
- 去除
- 请求
- 必须
- 岗位要求
- 资源
- 响应
- 回报
- 角色
- 角色
- 第
- 运行
- s
- SA
- sagemaker
- 可扩展性
- 鳞片
- 作用域
- 安全
- 保安
- 看到
- 无服务器
- 服务
- 特色服务
- 集
- 她
- 应该
- 作品
- 类似
- 自
- 单
- So
- 方案,
- 解决方案
- 来源
- 来源
- 专家
- 标准
- 州/领地
- 个人陈述
- Status
- 步
- 步骤
- 仍
- 商店
- 工作室
- 成功
- SUPPORT
- 支持
- 表
- 目标
- 团队
- test
- 这
- 其
- 然后
- Free Introduction
- 通过
- 次
- 至
- 培训
- 触发
- true
- 尝试
- 类型
- 不明
- 直到
- 网址
- 使用
- 用户
- 用户
- 使用
- 运用
- 折扣值
- 各种
- 确认
- 版本
- 通过
- 查看
- 在线会议
- 体积
- 等待
- 想
- we
- 卷筒纸
- Web服务
- 基于网络的
- 井
- ,尤其是
- 将
- 也完全不需要
- 工作
- 工作流程
- 加工
- 写作
- 年
- 完全
- 您一站式解决方案
- 和风网