使用 OAuth 认证源登录 IDaaS
本文档描述第三方平台作为认证源头,用户仅需登录第三方平台后,可通过 OAuth 协议单点登录进入竹云 IDaaS 企业中心或用户中心,本文档供应用开发人员提供参考指导。
前提条件
- 拥有 IDaaS 企业中心平台的管理员权限。
- 第三方平台支持标准 OAuth 协议。
操作步骤
第三方平台创建 OAuth 应用
获取 OAuth 应用的 client_id 和 client_secret 参数
IDaaS 平台配置
创建 OAuth 认证源
具体流程参照配置 OAuth 认证源
若需 SSO 到企业中心
“企业中心”应用绑定 OAuth 认证源,并获取 IDaaS 的挂接地址
进入 IDaaS 企业中心,访问资源 -> 应用 -> 预集成应用,找到并点击“企业中心”应用,在应用配置中,点击“登录配置”,开启 OAuth 认证源
复制认证源 ID

并拼装 IDaaS 的挂接地址格式如下
TIP
https://{your_domain}/api/v1/saml2/idp/sso?sp=https://{your_domain}/api/ecb/saml2/sp&config_id=
若需 SSO 到用户中心
“用户中心”应用绑定 OAuth 认证源,并获取 IDaaS 的挂接地址
进入 IDaaS 企业中心,访问资源 -> 应用 -> 预集成应用,找到并点击“用户中心”应用,在应用配置中,点击“登录配置”,开启 OAuth 认证源
复制用户中心的 client_id

复制认证源 ID

并拼装 IDaaS 的挂接地址格式如下
TIP
https://{your_domain}/api/v1/oauth2/authorize?response_type=code&scope=openid&client_id={用户中心的 client_id}&redirect_uri=https%3A%2F%2F{your_domain}%2Fuser&config_id=
用户访问流程说明
用户登录进入到第三方平台后,访问 IDaaS 的挂接地址
IDaaS 拼装 client_id/client_secret/state 等参数,并将请求转发给第三方平台的认证授权 Url
第三方平台验证通过后,生成临时授权 code ,并调用 IDaaS 的回调地址,将 code 传递给 IDaaS , state 需原样传递回来
TIP
示例: https://{your_domain}/api/v1/oauth2/code?code=xxxx&state=xxxx
IDaaS 携带 code 参数,并调用第三方平台的认证授权 Token 接口,第三方平台返回 token 信息给 IDaaS
IDaaS 携带 token 参数,并调用第三方平台 UserInfo Url ,第三方平台返回当前用户信息给 IDaaS
IDaaS 根据“关联源属性”解析并获取到当前用户的标识符,并和 IDaaS 系统中的“关联源属性”进行匹配,若匹配成功后生成会话,用户进行 IDaaS 企业中心/用户中心
第三方平台开发
请参考相关材料