Skip to content

使用 OAuth 认证源登录 IDaaS

本文档描述第三方平台作为认证源头,用户仅需登录第三方平台后,可通过 OAuth 协议单点登录进入竹云 IDaaS 企业中心或用户中心,本文档供应用开发人员提供参考指导。

前提条件

  • 拥有 IDaaS 企业中心平台的管理员权限。
  • 第三方平台支持标准 OAuth 协议。

操作步骤

第三方平台创建 OAuth 应用

获取 OAuth 应用的 client_id 和 client_secret 参数

IDaaS 平台配置

  1. 创建 OAuth 认证源

    具体流程参照配置 OAuth 认证源

  2. 若需 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=

  3. 若需 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=

用户访问流程说明

  1. 用户登录进入到第三方平台后,访问 IDaaS 的挂接地址

  2. IDaaS 拼装 client_id/client_secret/state 等参数,并将请求转发给第三方平台的认证授权 Url

  3. 第三方平台验证通过后,生成临时授权 code ,并调用 IDaaS 的回调地址,将 code 传递给 IDaaS , state 需原样传递回来

    TIP

    示例: https://{your_domain}/api/v1/oauth2/code?code=xxxx&state=xxxx

  4. IDaaS 携带 code 参数,并调用第三方平台的认证授权 Token 接口,第三方平台返回 token 信息给 IDaaS

  5. IDaaS 携带 token 参数,并调用第三方平台 UserInfo Url ,第三方平台返回当前用户信息给 IDaaS

  6. IDaaS 根据“关联源属性”解析并获取到当前用户的标识符,并和 IDaaS 系统中的“关联源属性”进行匹配,若匹配成功后生成会话,用户进行 IDaaS 企业中心/用户中心

第三方平台开发

请参考相关材料

竹云IDaaS开放平台