单点登录认证源PC端设置
单点登录认证源需要先在PC端进行如下配置:
参数说明
参数 | 必填 | 说明 |
---|---|---|
应用ID | 系统生成 | 该参数由系统生成。如未生成,请联系管理员 |
应用名称 | 必填 | 应用名称 |
应用描述 | 可选 | 应用描述 |
Client Id | 系统生成 | 创建应用完成时自动填写SG的Client Id |
Client Secret | 系统生成 | 创建应用完成时自动填写SG的Client Secret |
Redirect URI | 必填 | 认证成功后跳转的地址 |
GrantType | 必填 | 目前仅支持 Authorization_Code |
Authorize URI | 系统生成 | 创建应用完成时自动生成的认证地址,第三方凭此地址接入 |
Access_Token有效期 | 可选 | Access_Token有效期,单位秒。 |
Refresh_Token有效期 | 可选 | Refresh_Token有效期,单位秒。 |
单点登录流程
单点登录认证源相关接口
生成环境域名:https://servicego.udesk.cn
获取授权码code
该接口认证成功后会跳转至配置的Redirect URI并拼接code参数和state参数(若有),否则跳转至认证界面。
接口URL: GET https://{domain}/oauth/oauth2/authorize?appId=APP_ID&responseType=code&redirectUrl=CALLBACK_URL&state=state
请求参数
参数 | 必填 | 说明 |
---|---|---|
appId | 必填 | 配置中的 Client Id |
responseType | 必填 | 固定为code |
redirectUrl | 必填 | 配置中的 Redirect URI |
state | 可选 | 对接方自己生成,该参数会原样返回,它既能防止CSRF、XSRF |
获取/刷新accessToken
该接口用于获取或刷新accessToken。
接口URL: GET https://{domain}/oauth/oauth2/token?appId=APP_ID&appSecret=APP_SECRET&grantType=authorization_code&code=AUTHORIZATION_CODE&redirectUrl=CALLBACK_URL&refreshToken=refresh_token
请求参数
参数 | 必填 | 说明 |
---|---|---|
appId | 必填 | 配置中的 Client Id |
appSecret | 必填 | 配置中的 Client Secret |
grantType | 必填 | 获取accessToken时为authorization_code,刷新时为 refresh_token |
code | 可选 | 从获取授权码code接口中获取到的code 获取accessToken时为必填,刷新时不需要 |
redirectUrl | 可选 | 配置中的 Redirect URI |
refreshToken | 可选 | 刷新accessToken时为必填 |
响应
```
{
"code": 200,
"message": "OK",
"visible": false,
"data": {
"accessToken":"ACCESS_TOKEN",
"expiresIn":2592000,
"refreshToken":"REFRESH_TOKEN",
"scope":"read"
}
}
```
获取用户信息
该接口用于获取用户信息。
接口URL: GET https://{domain}/oauth/oauth2/userInfo?accessToken=access_token
请求参数
参数 | 必填 | 说明 |
---|---|---|
accessToken | 必填 | 从获取/刷新accessToken接口中获取到的accessToken |
响应
```
{
"code": 200,
"message": "OK",
"visible": false,
"data": {
"userInfo": {
"email": "1@test.cn",
"realname": "zhangsan",
"jobNumber": "100",
"mobile": "18789998765"
}
}
}
````