统一授权套件SDK
更新于 2024-01-11本文介绍了如何使用钉钉统一授权套件SDK。
预期效果
个人授权

组织授权
授权企业管理员授权

授权企业非管理员需要选择管理员授权

版本要求
钉钉统一授权套件SDK要求,钉钉版本需要在6.3.35及以上。低版本需提示用户升级客户端,你可以通过以下方式判断钉钉版本。
一、安装授权套件SDK
执行以下命令,下载安装SDK(dingtalk-design-libs需要版本在0.1.0及以上)。
Loading...下载完成后,直接在代码中导入即可。
Loading...
二、应用授权接入
可以通过以下步骤使用钉钉统一授权套件引导用户授权相关信息。
引入钉钉统一授权套件SDK。
Loading...在需要用户授权时直接调用openAuth即可,请求示例如下:
Loading...
请求参数
参数 | 类型 | 是否必须 | 示例值 | 描述 |
clientId | string | 是 | f1dLkxxx | 应用ID: |
corpId | string | 是 | ding123xxxx | 当前组织的corpId。
|
rpcScope | string | 否 | Contact.User.Read | 接口scope列表。 说明
|
fieldScope | string | 否 | Contact.User.mobile | 字段scope列表。 说明 多个scope使用英文逗号分隔。 rpcScope与fieldScope至少传一项。 |
type | string | 是 | 0 | 授权类型:
|
from | string | 否 | alicloud | 请求来源。 说明 由调用方设置的位置标识,可自定义。 |
三、响应信息
返回示例如下:
授权完成
Loading...拒绝授权
Loading...向管理员发送了授权申请,等待授权(只在组织授权场景下出现)
Loading...授权异常
Loading...
返回参数
字段名 | 类型 | 示例值 | 描述 |
status | string | ok | 授权结果:
|
result | Object | 返回结果。 | |
result.authCode | string | mrtjjwdmxxx | 个人临时授权码。 说明 当type=0时,授权成功会返回。 |
错误码
参数错误
错误码code | 错误原因 |
400001 | 空请求。 |
400006 | clientId参数必填。 |
400007 | corpId参数必填。 |
400008 | uid为空,请联系钉钉。 |
权限点相关错误
错误码code | 错误原因 |
500201 | 权限点code错误。 |
500202 | rpcScope参数需要填写rpc类型的权限点。 |
500203 | fieldScope参数需要填写field类型的权限点。 |
500204 | 组织授权需要填写组织类型的权限点。 |
500205 | 个人授权需要填写个人类型的权限点 |
应用相关错误
错误码code | 错误原因 |
500101 | 应用不存在。 |
500102 | 应用未添加任何权限点。 |
500103 | 获取应用信息失败。 |
500104 | 应用未添加该权限点,请在开发者后台添加。 |
500105 | 获取应用供应商组织信息失败。 |
授权相关错误
错误码code | 错误原因 |
500401 | 获取授权人角色失败。 |
500402 | 非当前组织管理员。 |
500403 | 企业未开通授权此应用。 |
500404 | 更新授权记录失败。 |
授权有效期
一旦用户明确同意过授权,其授权关系会记录在后台,直到用户主动取消授权。