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

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

复制认证源ID

并拼装IDaaS的挂接地址格式如下
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={认证源ID}
# 用户访问流程说明
用户登录进入到第三方平台后,访问IDaaS的挂接地址
IDaaS拼装client_id/client_secret/state等参数,并将请求转发给第三方平台的认证授权Url
第三方平台验证通过后,生成临时授权code,并调用IDaaS的回调地址,将code传递给IDaaS,state需原样传递回来
示例:https://{your_domain}/api/v1/oauth2/code?code=xxxx&state=xxxx
注意:缺失state参数会导致请求报错invalid_request
IDaaS携带code参数,并调用第三方平台的认证授权Token接口,第三方平台返回token信息给IDaaS
IDaaS携带token参数,并调用第三方平台UserInfo Url,第三方平台返回当前用户信息给IDaaS
IDaaS根据“关联源属性”解析并获取到当前用户的标识符,并和IDaaS系统中的“关联源属性”进行匹配,若匹配成功后生成会话,用户进行IDaaS企业中心/用户中心
# 第三方平台开发
请参考相关材料
