1,接入的第三方应用需要先做企业微信三方市场注册?? 不需要 直接绑定url即可
2,如果进行登录,怎么把企业微信中的UserId和现有系统中的注册用户进行绑定??
3,如果UserId和注册的用户无法绑定,那么以前创建的项目无法共享数据了。
2与3问题可以通过访问 用户的敏感信息得到 用户的手机号码 ,然后通过手机号码进行关联。
4,静默授权和手动授权
-
静默授权:用户点击链接后,页面直接302跳转至 redirect_uri?code=CODE&state=STATE
-
手动授权:用户点击链接后,会弹出一个中间页,让用户选择是否授权,用户确认授权后再302跳转至 redirect_uri?code=CODE&state=STATE
-
应用授权作用域。url的scope参数设置
-
snsapi_base:静默授权,可获取成员的基础信息(UserId与DeviceId);
-
snsapi_userinfo:静默授权,可获取成员的详细信息,但不包含手机、邮箱等敏感信息;
-
snsapi_privateinfo:手动授权,可获取成员的详细信息,包含手机、邮箱等敏感信息(已废弃)。
5,授权流程
调用流程为:
A) 用户访问第三方服务,第三方服务通过构造OAuth2链接(参数包括当前第三方服务的身份ID,以及重定向URI),将用户引 导到认证服务器的授权页
B) 用户选择是否同意授权
C) 若用户同意授权,则认证服务器将用户重向到第一步指定的重定向URI,同时附上一个授权码。
D) 第三方服务收到授权码,带上授权码来源的重定向URI,向认证服务器申请凭证。
E) 认证服务器检查授权码和重定向URI的有效性,通过后颁发AccessToken(调用凭证)
D)与E)的调用为后台调用,不通过浏览器进行
名词定义:
-
Third-party application:第三方应用程序,本文中又称“客户端(client)”,即上一节例子中的“云冲印”。 BIM项目
-
HTTP service: HTTP服务提供商,本文中简称“服务提供商”,即上一节例子中google。
-
Resource Owner:资源所有者,本文中又称"用户"(user)。
-
User Agent:用户代理,本文中就是指浏览器。
-
Authorization server:认证服务器,即服务提供商专门用来处理认证的服务器。
-
Resource server:资源服务器,即服务提供商存放用户生成的资源的服务器。它与认证服务器,可以是同一台服务器,也可以是不同的服务器。
来源:51CTO
作者:零零渣(java的渣)
链接:https://blog.csdn.net/weixin_42635759/article/details/100578220