安全性升级后的企微通讯录读写同步该如何做?
伴随着8月15日10点通讯录读写权限的灰度发布,各位做企业微信开发的同行们又迎来了新的开(需)发(求)任(变)务(更)!
先来一张网友总结的图,盘点下最近两个月针对数据安全对通讯录读写的权限管理调整!
重点关注:
1、6月20日前创建的自建应用可以读取敏感信息(当时我看到这个消息还给测试用的几个企业都先创建了个应用)
2、8月15日后通讯录应用不可调用读取基础信息接口(仅返回成员ID和部门ID)。注意不是把接口停用了,只是通讯录同步这个应用不能调用读接口,自建应用和三方应用调用是不受影响的,只是敏感信息不返回!
3、成员基本信息可通过应用调用成员读取接口获取,敏感信息需要管理员授权、员工oauth登录自主授权后可获取(自建和代开发应用);三方应用不可获取到手机号、邮箱、姓名和部门名称,姓名和部门名称可以通过通讯录展示组件显示。
那升级后自建和服务商怎么做通讯录读写呢?简单归为如下图
接下来重点说下「第三方通讯录编辑授权」,它也是在这次调整时出现的新产物,可参考连接
简单来说就是为了解决服务商要完成通讯录的同步(人事管理场景)功能才出现的;其实很早前也有类似的套件出现,最早叫第三方通讯录应用,现在放出来这个估计也是为了公平对待一些新的服务商。
扯远一点这个第三方通讯录应用大概是在21年初就不让创建了,我当时还用服务商帐号创建了一个,但手欠给删了,刚好就在那几天调整的不能再创建了。所以如果是在做服务商开发并且又找不到通讯录应用的,不要奇怪只能说明你进场有点晚了,早些的服务商像通讯录读写的功能都是具备的。
所以看到文档上的(权限说明:仅通讯录同步助手或第三方通讯录应用可调用。)这句话也不要觉得这是废话,这其实是写给资历老的服务商的。
再说回来第三方通讯录编辑授权,这个的开通需要满足如下条件:
- 服务商需完成认证
- 服务商需上线应用分类为“人力资源”的第三方应用或模板分类为“人力资源”的代开发模板
- 服务商历史未开通“第三方通讯录应用”
满足条件的在 服务商后台/应用管理/通讯录编辑授权 看到入口,直接申请开通就行,说是需要官方审核,但配置时发现直接一步步点击就完事!
完成后大概就是这个样子
看这配置信息是不是很熟悉?其实和三方应用或者代开发模板的配置是一样的,经过测试证明授权安装、应用回调等也是一样的逻辑!
企业要使用第三方通讯录编辑授权必须要满足如下条件:
- 当前企业未开启“企业管理后台 - 管理工具 - 通讯录同步”的api接口同步
- 当前企业未授权其他服务商通讯录编辑权限或第三方通讯录应用
- 当前企业已安装该服务商分类为“人力资源”的第三方应用或代开发应
我测试时的操作,直接进到企业后台,把通讯录的同步关掉,安装一个服务商名下的人力资源类型的代开发应用(建议服务商也都转到代开发上来,毕竟三方应用的权限越来越小),企业超级管理员通过企业微信客户端扫码授权。
大概流程步骤是这样
手机上操作步骤如下:
(图片来自于官方文档)
只要选择已阅读并同意授权须知,就可点击同意授权。
授权完成后效果如下图:
注意的点:
1、企业授权同意应用时,其实是调用的通讯录编辑授权的安装回调,需要和三方或代开发模板的回调处理一样,通过auth_code获取企业的永久授权码,并做好记录,这个在后续的成员创建时要用来获取access_token
2、通讯录编辑授权创建时返回内容如下,需要自己调用成员ID列表接口去比对添加的是哪个成员
{
"errcode": 0,
"errmsg": "created"
}
3、通讯录编辑授权 同样不能调用成员获取接口,需要使用人力类应用,或者是其它三方应用去读取成员信息!
最后为官方做下纠正
通讯录查询接口停用
生效时间:8月15日10点开始灰度,8月22日20点全量上线
影响的应用:“企业管理后台 - 管理工具 - 通讯录同步”
影响的范围:新的IP(过去90天通讯录同步助手未使用过的IP)
停用的接口列表:
这个是说只有"通讯录同步"应用不能调用这些接口,并不是接口不再被提供了,自建和三方应用还是可以继续使用这些接口的!
麻烦问一下,现在通讯录同步的这个地方的secret去调用部门接口是会报错的,api禁止联系助手。
所以现在好像只能使用应用的secret哎