网站首页 >  技术服务  >  邮箱知识广场  >  广东阿里企业邮箱-使用Shibboleth进行用户SSO的示例  


广东阿里企业邮箱-使用Shibboleth进行用户SSO的示例

发布时间:2025-11-03

  本文提供一个以Shibboleth与阿里云进行用户SSO的示例,帮助您理解企业IdP与阿里云进行SSO的端到端配置流程。


准备工作

1.安装Shibboleth、Tomcat和LDAP Server。

2.配置LDAP Server。

 1)在LDAP中添加一个管理员账号,DN为uid=admin,ou=system,密码为secret。

 2)在LDAP中添加一个测试账号,DN为cn=Test User,ou=users,dc=wimpi,dc=net,密码为secret

3.配置Shibboleth连接LDAP Server。


步骤一:在阿里云获取SAML服务提供商元数据

1.使用RAM管理员登录RAM控制台。

2.在左侧导航栏,选择集成管理 > SSO管理。

3.单击用户SSO页签,在SAML 服务提供商元数据区域,复制当前阿里云账号的元数据URL。

4.在新的浏览器窗口中打开复制的链接,将元数据XML文件另存到/opt/shibboleth-idp/metadata/aliyun-ram-user-metadata.xml。


步骤二:将阿里云注册到Shibboleth

配置/opt/shibboleth-idp/conf/metadata-providers.xml,指定步骤一:在阿里云获取SAML服务提供商元数据获取的元数据文件,将阿里云注册到Shibboleth。


步骤三:配置Shibboleth返回的用户属性

1.修改/opt/shibboleth/conf/services.xml。

原版使用的是attribute-resolver.xml配置文件,包含的配置信息不够,需要启动完整版的配置,将其替换为attribute-resolver-full.xml。

2.修改/opt/shibboleth/conf/attribute-resolver-full.xml。

 1)在该文件中配置用户信息中返回的属性。本示例中选择mail字段作为返回属性。

 2)在该文件中读取/opt/shibboleth/conf/ldap.properties中配置的信息,进行IDAP连接的创建。

3.修改/opt/shibboleth/conf/attribute-filter.xml,添加属性过滤器。

将PolicyRequirementRule标签中的value属性替换为步骤一:在阿里云获取SAML服务提供商元数据中的阿里云entityID。


步骤四:配置SAML响应的NameID

1.修改/opt/shibboleth/conf/relying-party.xml,为阿里云建立NameID的配置。

将bean标签中的relyingPartyIds属性替换为步骤一:在阿里云获取SAML服务提供商元数据中的阿里云entityID。

2.修改/opt/shibboleth/conf/saml-nameid.xml,配置NameID的生成方式。

3.修改/opt/shibboleth/conf/saml-nameid.properties,配置NameID的相关属性。


步骤五:在Shibboleth获取SAML IdP元数据

1.重启Tomcat,使前面的配置生效。

2.访问https:///<您的服务器地址>/idp/shibboleth,将元数据文件保存到本地。


步骤六:在阿里云开启用户SSO

1.在RAM控制台的左侧导航栏,选择集成管理 > SSO管理。

2.单击用户SSO页签,在SSO功能状态区域,单击开启。

3.在元数据文档区域,单击上传元数据,上传从步骤五:在Shibboleth获取SAML IdP元数据中获取的IdP元数据文件。

4.在辅助域名区域,单击编辑,然后开启辅助域名并配置辅助域名为Shibboleth中的用户名Email后缀。

在本示例中为testdomain.alicloud.com。


步骤七:在阿里云创建RAM用户

1.在RAM控制台的左侧导航栏,选择身份管理 > 用户。

2.在用户页面,单击创建用户。

3.在创建用户页面,输入登录名称和显示名称。

4.在访问方式区域,选择控制台访问,并设置登录密码等参数。

5.单击确定。


验证结果

  完成上述配置后,您可以从阿里云或Shibboleth发起SSO登录。

1.从阿里云侧发起登录

 1)在RAM控制台的概览页,复制RAM用户的登录地址。

 2)将鼠标悬停在右上角头像的位置,单击退出登录或使用新的浏览器打开复制的RAM用户登录地址。

 3)单击使用企业账号登录,系统会自动跳转到Shibboleth的登录页面。

 4)在Shibboleth的登录界面,输入用户名(testUser)和密码,单击登录。

 系统将自动SSO登录并重定向到阿里云控制台首页。

2.从Shibboleth侧发起登录

 1)访问https://<您的服务器地址>/idp/profile/SAML2/Unsolicited/SSO?providerId=<entityID>。

 该链接中的<entityID>为步骤一:在阿里云获取SAML服务提供商元数据中的阿里云entityID。

 2)在Shibboleth的登录界面,输入用户名(testUser)和密码,单击登录。

 系统将自动SSO登录并重定向到阿里云控制台首页。


电话: 4009009360
订购邮箱:kf@exmail-aliyun.com
地址:上海市浦东新区周康路28号周浦国际中心1301室
阿里邮箱企业版|阿里邮箱登录|企业邮箱注册
微信咨询
微信咨询
钉钉咨询
钉钉咨询