钉钉
公司用钉钉的话,可以把钉钉接成登录方式:同事用钉钉账号登录,一次接入,组织里所有应用都跟着走——包括接入之前就已经发布的那些。
接入
需要贵司钉钉管理员(或者有应用开发权限的同事)在钉钉开发者后台建一个企业内部应用,再把凭证填到控制台。整个过程十分钟左右,只做一次。控制台里是三步:左边组织设置 → 企业账号与通知卡片 → 接入钉钉,第一步就是下面这份清单(回调地址和服务器出口 IP 都印在清单里),第二步粘贴凭证,第三步你自己先登录一次。
钉钉那边(钉钉开发者后台 open-dev.dingtalk.com):
- 应用开发 → 企业内部应用 → 钉钉应用 → 创建应用。名字随意,比如「观思动登录」。
- 开发配置 → 权限管理:搜索并申请
Contact.User.Read(通讯录个人信息读权限)和Contact.User.mobile(个人手机号信息)。这两项必须开——有了手机号,已经在组织里的同事会自动对上原来的账号。再申请成员信息读权限,并把通讯录里的「企业员工手机号信息」「邮箱」一起勾上:有了它们,同事在控制台里显示的是通讯录里的真名而不是钉钉昵称,企业邮箱也能对上原来的账号,应用里选人也能按真名搜。不是管理员的话,申请权限要等管理员审批。 - 开发配置 → 安全设置:重定向URL(回调域名)填接入向导第一步里显示的回调地址;服务器出口IP 填同一步里显示的服务器出口 IP。
- 应用发布 → 版本管理与发布:创建新版本,应用可见范围选全员,直接发布。不是管理员的话,发布也要审批。
- 凭证与基础信息:复制 Client ID 和 Client Secret;同一页上的 AgentId 也记下来——应用要给同事发通知的话要填它(只登录不推送可以先不填,之后在卡片「消息推送」一行补)。
控制台这边:向导第二步粘贴 Client ID、Client Secret(和 AgentId),保存。第三步点「我先登录一次」——用你自己的钉钉账号走一遍登录:能进来,就说明钉钉那边的回调域名、可见范围和版本都对了;配错了你会当场看到原因,不用等同事来报。这一步会把你的钉钉账号绑到你现在的控制台账号上,回来仍在组织设置这一页。
接好之后卡片是一张就绪清单:凭证、首次登录、消息推送、姓名来源、新同事,每行一个状态,差哪一步写在那一行上。
卡片上有两个开关,默认都开着。首次登录自动加入组织——没在组织里的同事第一次用钉钉登录就自动成为成员;关掉的话,只有管理员先邀请过(填了对方的手机号或企业邮箱)的人才进得来。每次登录时更新姓名——用钉钉通讯录里的姓名,同事在通讯录里改了名,控制台跟着变。新同事默认是开发者档——能登录用应用,也能自己建应用;只想让他们用、不建的话,在卡片上改成使用成员。档位以后照旧在控制台权限页调,见成员、角色与负责人。
一个组织只接一种登录方式:接了钉钉就不能再接飞书,要换的话先移除再接入。
消息推送
接了钉钉之后,应用还能给同事推通知:同事在钉钉的「工作通知」里收到应用发的卡片,带深链、可以带按钮。钉钉的工作通知按钮只能打开链接,所以点「通过」「退回」会先打开一个观思动的确认页(在钉钉里直接开、两秒钟),结果同样回到应用里。这个不需要在控制台配置,在对话里直接提需求就行,详见通知与定时任务。钉钉那边只多一件事:卡片「消息推送」一行填 AgentId(第 5 步记下的那串数字)。建议再开通根据手机号获取成员基本信息权限,这样还没用钉钉登录过的同事也能收到第一条通知。
卡片上的消息推送一行会写明当前通不通、差哪一步;「给我发一条测试消息」发给你自己,立刻能看到效果。钉钉对同一个人一天只投递一次相同内容的消息,平台已经在正文里附了通知编号避开它,但「每来一单推一条」的高频场景还是应该合并。
同事的入口
接好之后,同事打开任何一个应用都会直接跳到钉钉的登录页——已经登录着钉钉的浏览器里几乎无感,没登录的扫个码或输账号密码。第一次登录会多一个钉钉的授权确认页,点同意就好,以后不再问。也可以把卡片上的登录地址放进钉钉工作台,同事从工作台点进控制台。
已经用手机验证码或邮箱登录过的同事不用重新加:钉钉里的手机号或企业邮箱能对上,就还是原来那个账号,档位和权限都不变。
卡片上「姓名来源」一行会写明原因:多半是第 2 步的成员信息读权限没开、或第 3 步的服务器出口IP 没填。补上以后,同事下次登录就换成通讯录里的真名,不用重新接入。
钉钉给每个应用发的成员身份是按应用算的。把应用删了重建,同事的身份都会换——能靠钉钉的 unionId 自动对回来,但没必要冒这个险。改名、改权限、换 Secret 都不需要重建。
外包、顾问这类不在贵司钉钉里的人,仍然可以用手机验证码登录控制台,登录之后再打开应用即可。