钉钉接入 NineData SSO
本文面向使用钉钉管理人员账户信息的企业,提供将钉钉接入单点登录(SSO)的最佳实践指南,以实现统一认证和授权管理。
背景信息
在企业使用 NineData 进行数据库管理、迁移和数据复制时,经常需要多名成员协作操作。为了避免为每个成员重复维护密码,推荐使用企业现有的统一身份认证系统(如钉钉)来接入 NineData,实现单点登录(SSO)。
通过配置钉钉 OAuth2.0 协议:
用户可直接使用钉钉账号登录 NineData 控制台,管理员无需单独为用户创建账号。
登录流程由钉钉负责,确保企业安全策略统一。
管理员可以更方便地管理 NineData 的访问权限,减少账号管理成本。
本文档详细介绍如何在钉钉开放平台创建企业内部应用、配置 OAuth2.0 参数,并在 NineData 控制台完成 SSO 集成,让企业用户能够使用钉钉一键登录 NineData。
前提条件
- 已创建或加入组织,并且该组织已开通,同时请确保您的包年包月订阅未过期。
- 当前账号已切换到目标组织。更多信息,请参见切换到组织。
- 您在 NineData 中的角色为。更多信息,请参见角色。
- 您在钉钉组织中需要拥有开发者权限。
步骤一:开启 NineData SSO 组织登录功能
登录 NineData 控制台,在左侧导航栏单击>。
单击 右侧的开关,打开窗口。先开启顶部的开关,在下方选择 OAuth2.0,然后在下方输入您的组织名称,同时记录 下方的。
保留该页面,进入下一个步骤。
步骤二:在钉钉开放平台创建应用并配置
登录 钉钉开放平台。
创建企业内部应用。更多信息,请参见钉钉官方文档创建应用。
进入应用详情页,单击左侧导航栏的基础信息 > 凭证与基础信息,并记录 Client ID 和 Client Secret。
单击左侧导航栏的开发配置 > 权限管理,找到并开通【个人手机号信息】权限和【通讯录个人信息读权限】。
单击左侧导航栏的开发配置 > 安全设置,在重定向URL(回调域名)的文本框中,输入步骤一中记录的回复 URL (断言使用者服务 URL),单击保存。
单击左侧导航栏的应用发布 > 版本管理与发布,发布当前应用。
步骤三:在 NineData 中接入 SSO 自建应用
回到步骤一的页面,根据下表配置区域的所有参数。
参数名 说明 client_id 填写步骤二中记录的 Client ID。 client_secret 填写步骤二中记录的 Client Secret。 scope 填写为 openid
,表示授权后可获得用户的 userid。更多信息,请参见钉钉官方文档:统一授权登录第三方网站。填写为 https://login.dingtalk.com/oauth2/auth
,钉钉官方提供的 OAuth 2.0 的授权接口,用于发起用户登录和授权流程。更多信息,请参见钉钉官方文档:统一授权登录第三方网站。填写为 https://api.dingtalk.com/v1.0/oauth2/userAccessToken
,钉钉 OAuth2.0 的 Token 获取接口,用来把上一步授权返回的 code 兑换成用户级别的 access_token。更多信息,请参见钉钉官方文档:获取用户token。填写 https://api.dingtalk.com/v1.0/contact/users/me
,钉钉开放平台的获取用户信息接口,用上一步获取的 access_token 来获取当前登录用户的详细信息(姓名、手机号、邮箱)。更多信息,请参见钉钉官方文档:获取用户通讯录个人信息。单击 右侧的
图标,并进行如下配置,然后单击。
:GET。
:选择 Params,并根据下表配置各字段。
平台字段 接口映射字段 类型 默认值 client_id client_id String 无 redirect_uri redirect_uri String 无 scope scope String 无 prompt prompt String consent response_type response_type String code
单击 右侧的
图标,并进行如下配置,然后单击。
:POST。
:选择 Body,编码方式选择 JSON,并根据下表配置各字段。
平台字段 接口映射字段 类型 默认值 client_id clientId String 无 client_secret clientSecret String 无 code code String 无 grant_type grantType String authorization_code - :请根据下表配置。
平台字段 接口映射字段 类型 默认值 access_token accessToken String 无
单击 右侧的
图标,并进行如下配置,然后单击。
:GET。
:选择 Header,并根据下表配置。
平台字段 接口映射字段 类型 默认值 access_token x-acs-dingtalk-access-token String 无 - :请根据下表配置各字段。
平台字段 接口映射字段 类型 默认值 name nick String 无 mobile mobile String 无 email email String 无
开启下方的开关,开启后用户在通过 SSO 方式登录 NineData 时,系统将自动添加该用户到 NineData,您无需再提前进行新建 SSO 用户操作。
- 开启后,指定自动加入的 SSO 用户默认绑定的角色,支持单选和多选。
开启下方的开关,保持如下默认配置,然后单击即可。至此钉钉 SSO 接入操作已完成,钉钉组织中的成员可以通过下方的 URL,使用钉钉账号登录 NineData。