企业在AWS Identity Center中维护了自己的多个员工身份,对应多个AWS用户,希望能够将其对应访问到火山引擎账号下的角色role1。本示例中,在AWS有用户user1,希望能够通过角色SSO单点登录配置,user1从AWS Identity Center门户直接跳转火山引擎登录页面以角色role1身份单点登录到火山引擎账号,行使角色对应的权限。
登录您火山引擎账号的访问控制(IAM)控制台。
在身份管理-身份提供商处上方提示条复制SAML服务商提供元数据URL。
打开复制的URL,将XML文件存储到本地。
AWS Identity Center作为身份提供商(IdP),需要以“应用”的形式感知服务提供商火山引擎,实现单点登录。为此需要在AWS Identity Center处创建对应火山引擎的应用,并完成SAML 互信配置。
使用管理员用户登录Amazon Web Services Sign-In控制台。
在左侧导航栏的应用程序分配 tab下,点击应用程序 ,在页面右上角点击添加应用程序创建一个新的应用程序。
在选择应用程序页面,勾选添加自定义应用程序,点击下一步。
在配置应用程序页面:
在配置应用程序窗口配置应用程序的基本信息,此示例中可以填写显示名称为“VolcineDemo”,该名称仅用作在IdP处展示;
在IAM Identity Center元数据窗口点击下载,下载AWS 的 IdP SAML元数据;
在应用程序元数据窗口勾选手动输入元数据值,将应用程序 ACS URL和应用程序 SAML 受众两个字段填写为:https://signin.volcengine.com/saml/sso。
点击提交后,应用程序创建完毕。
回到应用程序详情页后,在页面右上方点击操作>编辑属性映射,在这里进行AWS的用户登录的身份与火山引擎的角色身份的映射关系,同时需要配置单点登录后会话的显示名用于云上审计记录。
点击新增属性映射,配置应用程序中的用户属性为:https://www.volcengine.com/SAML/Attributes/Identity,将字段值配置为要登录的角色的trn,需要登录几个角色或用户就配置几条身份属性声明。本示例中,属性值需要配置为:trn:iam::2100036560:role/role1,trn:iam::2100036560:saml-provider/AWS_role,其中AWS_role为未来步骤四中创建的身份提供商名称。
点击新增属性映射,配置应用程序中的用户属性为:https://www.volcengine.com/SAML/Attributes/SessionName,该字段值自定义为常值即可,仅用作记录和展示。
配置完毕后点击保存更改。
此步骤定义在AWS Identity Center中,有权访问VolcineDemo应用的用户或用户组。
点击页面左侧导航用户,点击右上角添加用户。
配置用户user1基本信息和将用户添加到所需的用户组后,点击添加用户。
点击页面左侧导航应用程序,选择VolcineDemo应用,点击指定用户,选择user1,点击指定用户完成用户分配。
登录您火山引擎账号的访问控制(IAM)控制台。
在身份管理-身份提供商处,点击新建身份提供商,选择角色SSO,并填写身份提供商名称为AWS_role,并将步骤二中获取的IdP Metadata元数据文件上传,点击提交。
在访问控制,身份管理-角色中点击新建角色,新建火山引擎账号下的角色role1并配置相应权限。
选择信任身份为:身份提供商,身份提供商类型为SAML,并选择步骤四中建立的身份提供商AWS_role。
配置角色信息:输入角色名称、显示名和描述。请注意,此处会作为单点登录后登录身份的名称显示在官网身份栏,建议您按照实际工作的角色名称命名,如admin、ITservice等。本示例中以role1示意。
添加权限:您可以为角色添加IAM权限策略,同时指定权限策略的作用范围。
点击提交,创建完毕。
完成SSO登录配置后,您可以验证从AWS Identity Center发起单点登录。
以user1身份粘贴Identity Center 控制面板界面右侧显示的AWS访问门户URL后,直接进入门户在应用管理列表中中选择VolcineDemo。若能够跳转至火山引擎SSO登录页、登入对应账号的role1身份,则单点登录配置成功。