前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >通过saml统一身份认证登录腾讯云控制台实战

通过saml统一身份认证登录腾讯云控制台实战

原创
作者头像
文达
修改2019-11-27 18:27:14
7.2K1
修改2019-11-27 18:27:14
举报
文章被收录于专栏:xuwd的专栏xuwd的专栏

一:什么是saml

saml全称:Security Assertion Markup Language,中文叫法是安全断言标记语言。首先,它是一种XML格式的语言;然后,它是用来安全地验证身份的。目前SAML有两标准:Saml 1.1和Saml 2.0。

二:常用场景

saml常用场景是用来作为单点登录的。如:用户在浏览器登录公司账号后,可直接跳转到腾讯云,不再需要输入腾讯云账号密码。即,saml为安全跳转登录提供了可能。

三:目标效果

用户在网站https://authing.cn(或者其它提供idp身份认证的网站)登录后,访问设置好的登录链接 https://cloud.tencent.com/login/forwardIdp/{UIN}/{IDP-Provider-name},可以直接跳转到腾讯云控制台:

四:为什么这么干

    直接暴露自己的用户名密码给第三方集成做单点登录是不安全也不现实的。在腾讯云的场景下,无法解决账号泄露乱买东西谁背锅的问题。有了公认的认证方法,账号是谁泄露的一目了然。当然,saml本身出现了问题,概率较小,暂不讨论。

五:SAML相关角色和登录流程

  • IDP(Identify Provider):身份提供商,上例中指的是Authing
  • SP(Service Provider):服务提供商,这里指腾讯云
  • UA(User Agent):用户

  一句话解释流程:用户登录本地账号后,访问腾讯云资源,重定向到身份提供商处验证身份,验证成功后登录腾讯云。具体流程如下: 

六:示例-idp配置步骤

  • 去Authing注册一个账号,登录后到控制台中第三方登录中创建idp

  • 配置基本的用户信息,给自己看的,随意填

  • UIN后面是自己要登录的腾讯云的UIN,rolename之后在腾讯云侧根据身份提供商创建的角色,saml-provider之后是在腾讯云上创建身份提供商的名字

代码语言:javascript
复制
{
    "https://cloud.tencent.com/SAML/Attributes/Role": "qcs::cam::uin/100008888888:roleName/jokeer,qcs::cam::uin/100008888888:saml-provider/Authing",
    "https://cloud.tencent.com/SAML/Attributes/RoleSessionName": "Test"
}
  • 选择合适的密钥,生成后导入,其它使用默认

  • 配置完成后,下载matadata,在腾讯云侧配置会用到

七:示例-腾讯云配置步骤

  • 访问管理中,新建身份提供商

  • 上传上一步中生成的xml文档,身份提供商名字和代码处配置一致,审阅并完成配置

  • 创建登录角色,最终用来映射成该角色登录

  • 选择刚创建的身份提供商

  • 配置策略并完成,其中角色名称和代码处一致

八:示例-验证是否能够跳转成功

根据身份提供商处给的URL,或者Authing最后给的URL,看是否能够跳转登录成功。

九:写在最后

    AD Windows、ldap均支持SAML2.0,理论上可以解决AD、ldap用户与腾讯云之间的单点登录问题,同时,业界还有很多其他厂商可以做saml联合身份认证,如:salesforce、Azure、onelogin等。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一:什么是saml
  • 二:常用场景
  • 三:目标效果
  • 四:为什么这么干
  • 五:SAML相关角色和登录流程
  • 六:示例-idp配置步骤
  • 七:示例-腾讯云配置步骤
  • 八:示例-验证是否能够跳转成功
  • 九:写在最后
相关产品与服务
访问管理
访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档