NAV Navbar
Language切换
shell node
  • 文档版本切换/单点登录(Single Sign On)
  • CAS单点登录
  • OAUTH2单点登录
  • 文档版本切换/单点登录(Single Sign On)

    Api接口v1版本

    Api接口v1版本是基础版本。也是我们的主要版本

    切换到v1版本

    Api接口v2版本

    Api接口v2版本是Api接口v1相关接口的升级,相对于v1版本,功能更丰富

    切换到Api接口v2版本

    单点登录接入指南(Single Sign On)

    单点登录,简称为 SSO,是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。

    切换到单点登录指南

    考试/测评、背调、视频面试接入指南 (platform)

    切换到考试/测评、背调、视频面试接入指南

    CAS单点登录

    CAS单点登录使用 CAS Protocol, 兼容 CAS protocol v2 和 CAS protocol v3

    a、流程图

    单点登录

    b、流程说明

    MOKA提供

    1. moka会提供一个登录url。
      1.1 cas单点登录url。
      1.2 例:https://app.mokahr.com/login_by/cas/orgId

    客户提供

    1. 客户首先需要搭建自己的cas服务器
    2. 客户需要提供自己的登录页面url。例:https://www.third.com/login
    3. 客户需要提供ticket校验url。例:https://www.third.com/ticket

    跳转流程

    1. 客户在自己的系统中配置moka提供的登录url
    2. 点击moka登录url时。由客户提供参数ticket、returnUrl、role
      2.1 不携带ticket参数跳转moka登录url时,moka会重定向到客户提供的登录页面url.客户登录之后需要重新重定向到moka提供的登录url并且必须携带ticket参数。
      2.2 携带着ticket参数跳转moka登录url时,moka会调用客户提供的ticket校验url获取用户信息
    3. 获取到用户信息之后,通过该用户信息判断
      3.1 如果该用户存在于moka系统中则进行登录。
      3.2 如果不存在则在moka系统内创建用户,创建成功后进行登录。
    4. 根绝role创建用户,如果不传该参数,默认为 recommender
      4.1 role=recommender,创建内推用户。
      4.2 role=interviewer,创建面试官。

    c、MOKA登录url说明

    跳转链接

    通过访问此接口,跳转到到MOKA

    HTTP 接口

    GET https://app.mokahr.com/login_by/cas/{orgId}

    请求Path参数

    字段 必填 类型 描述
    orgId string 每个公司客户对应的唯一id,联系实施或csm获取。

    请求Query

    字段 必填 描述
    ticket moka通过该参数来判断客户是否已经登录成功。
    不传ticket参数时,moka会重定向到客户提供的登录页面url。
    传ticket参数时,moka会调用客户提供的ticket校验url来获取用户信息
    returnUrl 登录成功后跳转的地址。如果设置,登录成功后会跳转到地址。如果不设置则默认跳转到对应角色的首页
    role 通过该链接创建的用户的角色。可选的值为 recommenderinterviewer,如果不设置则默认为 recommender

    d、客户登录url说明

    跳转链接

    不传ticket参数时,moka会重定向到该url,通过访问此接口,跳转到到客户的登录页面

    HTTP 接口

    GET https://www.third.com/login(客户提供的登录地址)

    请求Query

    字段 必填 描述
    service 回调地址URL。

    e、请求客户ticket校验url

    moka会请求该url来获取用户信息

    HTTP 接口

    GET https://www.third.com/ticket

    请求示例

    $ curl https://www.third.com/ticket?ticket=${ticket}&service=${service} \
       -X GET \
    

    返回样例

    <cas:serviceResponse xmlns:cas="https://www.third.com/login">
      <cas:authenticationSuccess>
      <cas:user>test@mokahr.com</cas:user>
      <cas:attributes>
        <cas:name>test</cas:name>
        <cas:email>test@mokahr.com</cas:email>
        <cas:phone>15045678910</cas:phone>
      </cas:attributes>
      </cas:authenticationSuccess>
    </cas:serviceResponse>
    

    请求Query

    字段 是否必填 描述
    ticket 客户登录成功后跳转moka登录url时携带的参数。
    service 回调地址URL。

    返回body(xml)

    字段 是否必填 描述
    user 用户信息的唯一标识。推荐使用邮箱
    name 用户的姓名。用户名为空,默认使用邮箱前缀作为用户名
    email 用户的邮箱
    phone 用户的电话

    OAUTH2单点登录

    开放授权的一个标准

    a、流程图

    单点登录

    b、流程说明

    MOKA提供

    1. moka会提供一个登录url。
      1.1 例:https://app.mokahr.com/login_by/oauth2/orgId
    2. moka会提供一个回调地址
      2.1 例:https://app.mokahr.com/login_by/oauth2/orgId/landing

    客户提供

    1. 客户需要提供自己的授权url。
      1.1 例:https://www.third.com/oauth/authorize
    2. 客户需要提供自己的获取token url。
      2.1 例:https://www.third.com/oauth/token
    3. 客户需要提供自己的获取用户信息 url。
      3.1 例:https://www.third.com/user

    跳转流程

    1. 客户在自己的系统中配置moka提供的登录url
    2. 点击moka登录url时。moka会重定向到客户的授权页面
    3. 客户在授权页面填写账号密码进行登录,登录成功后带着code跳转到moka的回调地址
    4. moka通过code调用客户的token接口获取token
    5. moka通过获取到的token调用客户的获取用户信息接口获取客户的用户信息
    6. 获取到客户的用户信息后进行登录

    c、MOKA登录url说明

    url说明

    通过访问此接口,跳转到到MOKA

    HTTP 接口

    GET https://app.mokahr.com/login_by/oauth2/{orgId}

    请求Path参数

    字段 必填 类型 描述
    orgId string 每个公司客户对应的唯一id,联系实施或csm获取。

    请求Query

    字段 必填 描述
    ifGoRecommendWeb moka通过该参数来判断客户是否跳转到内推页面。
    1、不传该参数时默认按照角色跳转。
    2、传固定值 '1' 时跳转内推官网。
    3、优先级高于returnUrl
    returnUrl 登录成功后跳转的地址。
    1、不传该参数时则默认跳转到对应角色的首页。
    2、传该参数时登录成功后会跳转到该地址。
    3、优先级低于ifGoRecommendWeb

    请求结果

    moka接收到请求后,会调用客户的授权url,跳转到客户的授权登录页面

    d、MOKA回调地址url说明

    url说明

    客户授权之后,需要带着code重定向到该地址。

    HTTP 接口

    GET https://app.mokahr.com/login_by/oauth2/{orgId}/landing

    请求Path参数

    字段 必填 类型 描述
    orgId string 每个公司客户对应的唯一id,联系实施或csm获取。

    请求Query

    字段 必填 描述
    code 客户授权码code
    state moka重定向到客户授权页面时携带的参数,授权成功后需要原封不动的传回来
    ifGoRecommendWeb moka通过该参数来判断客户是否跳转到内推页面。
    1、不传该参数时默认按照角色跳转。
    2、传固定值 '1' 时跳转内推官网。
    3、优先级高于returnUrl
    returnUrl 登录成功后跳转的地址。
    1、不传该参数时则默认跳转到对应角色的首页。
    2、传该参数时登录成功后会跳转到该地址。
    3、优先级低于ifGoRecommendWeb

    e、客户授权url说明

    url说明

    客户的授权url,客户需要在该页面填写账号密码进行登录

    HTTP 接口

    GET https://www.third.com/oauth/authorize (客户提供的登录地址)

    请求Path参数

    请求Query

    字段 必填 描述
    responseType 固定值 code
    clientId 应用id。
    1、该参数由客户提供
    redirectUri 回调地址。授权成功后的重定向地址。
    1、该参数由moka提供
    scope 授权范围。
    1、该参数由客户提供
    state 授权成功后,重定向到回调地址时需要携带该参数
    1、该参数由moka提供

    f、客户获取令牌url说明

    url说明

    客户的授权url,客户需要在该页面填写账号密码进行登录

    HTTP 接口

    GET https://www.third.com/oauth/token (客户提供的登录地址)

    请求Path参数

    请求Query

    字段 必填 描述
    clientId 应用id。
    1、该参数由客户提供
    clientSecret 应用secret。
    1、该参数由客户提供
    grantType 授权方式。固定值authorization_code。
    code 上一步授权后获取到的授权码code。
    redirectUri 令牌token颁发后的回调网址。
    1、该参数由moka提供

    返回结果

    字段 字段 必填 描述
    code number 接口状态码。0: 成功
    msg string 接口调用说明
    data object 返回值
    data.accessToken string 令牌token
    data.expiresIn string 令牌过期时间
    data.refreshToken string 令牌刷新token

    g、客户获取用户信息url说明

    url说明

    客户的获取用户信息接口url,可以通过该接口获取授权客户的用户信息

    HTTP 接口

    GET https://www.third.com/user (客户提供的登录地址)

    请求Path参数

    请求Query

    字段 必填 描述
    accessToken 令牌token。通过token接口获取

    返回结果

    字段 字段 必填 描述
    code number 接口状态码。0: 成功
    msg string 接口调用说明
    data object 返回值
    data.email string 客户邮箱