开始开发
企业应用中的URL链接(包括自定义菜单或者消息中的链接),均可通过OAuth2.0验证接口来获取成员的UserId身份信息。
OAuth2简介
详细的协议介绍,开发者可以参考RFC 6749。
A) 用户访问第三方服务,第三方服务通过构造OAuth2链接(参数包括当前第三方服务的身份ID,以及重定向URI),将用户引导到认证服务器的授权页
B) 用户选择是否同意授权
C) 若用户同意授权,则认证服务器将用户重定向到第一步指定的重定向URI,同时附上一个授权码。
D) 第三方服务收到授权码,带上授权码来源的重定向URI,向认证服务器申请凭证。
E) 认证服务器检查授权码和重定向URI的有效性,通过后颁发AccessToken(调用凭证)
D)与E)的调用为后台调用,不通过浏览器进行
企业微信OAuth2接入流程
使用OAuth2前须知
关于网页授权的可信域名
要求配置的可信域名,必须与访问链接的域名完全一致。举个例子:
配置域名 | 是否正确 | 原因 |
---|---|---|
mail.qq.com:8080 | 配置域名与访问域名完全一致 | |
email.qq.com | 配置域名必须与访问域名完全一致 | |
support.mail.qq.com | 配置域名必须与访问域名完全一致 | |
*.qq.com | 不支持泛域名设置 | |
mail.qq.com | 配置域名必须与访问域名完全一致,包括端口号 |
访问链接 | 是否正确 | 原因 |
---|---|---|
https://mail.qq.com/cgi-bin/helloworld | 配置域名与访问域名完全一致 | |
http://mail.qq.com/cgi-bin/redirect | 配置域名与访问域名完全一致,与协议头/链接路径无关 | |
https://exmail.qq.com/cgi-bin/helloworld | 配置域名必须与访问域名完全一致 |
关于UserID机制
静默授权与手动授权
个人敏感信息授权管理
目前仅2022.6.20 20:00后新创建的的自建应用以及代开发应用或者所有的第三方应用,且用户曾经通过进入oauth2页面进行手动授权过才会出现该入口。