企业号管理员授权流程

来自企业号开发者接口文档
跳转至: 导航搜索

企业号管理员授权流程


企业号的系统管理员可以授权安装第三方应用,授权可以有两种发起方式:


1. 企业号第三方官网(http://qy.weixin.qq.com/app) 发起(授权完成跳转到服务商网站)

2. 服务商网站发起(授权完成跳转到服务商网站)


以上两种授权发起方式并不冲突,服务商可以同时支持。同时,为了保证授权体验的一致性,企业号也提供了统一的授权按钮样式,开发者可在(设计资源下载)中找到。


从企业号的第三方官网发起

如果使用应用套件的活跃用户达到推荐的门槛,应用套件会在第三方应用官网推荐,授权方式为‘线上自助注册授权使用’的套件,系统管理员直接完成授权,而不必跳转服务商网站。完成授权后,企业号后台会推送授权成功的事件,服务商可根据事件中的授权码获取永久授权的凭证。(详见第三方回调协议

如果是在移动端发起授权,除了企业号第三方官网的推荐,服务商可以构造如下的链接引导企业管理员进入应用套件授权页: http://qy.weixin.qq.com/cgi-bin/3rd_loginpage?action=jumptoauthpage&suiteid=$suite_id$&t=wap 该链接中需要提供套件suiteid.


Cqyhfqsq2.png


下面对其进行详细介绍:

1)企业用户进入企业号第三方应用官网

指的是,企业系统管理员进入企业号第三方应用官网https://qy.weixin.qq.com/app

2)用户进入应用套件授权页

用户选择某个应用套件之后,进入该套件的授权页面

3)企业号管理员确认并同意授权托管给应用提供商

企业号管理员进入套件授权页后,设置授权内容,确认并同意将自己的企业号应用或通讯录授权托管给应用提供商,完成授权流程。

4) 授权成功,回调临时授权码

授权流程完成后,企业号第三方应用官网的后台将临时授权码回调到套件的“系统事件接收URL”(创建套件时填写)

5)利用临时授权码获取永久授权码以及授权信息

在得到临时授权码后,应用提供商可以使用临时授权码换取永久授权码以及授权信息,后续可以通过永久授权码调用企业号相关API(能调用哪些API,取决于用户将哪些权限集授权给了应用提供商)。

注:若授权的第一个应用有设置“业务设置URL”,则在PC端授权完成之后会自动跳转到该URL,详见管理后台单点登录


从应用提供商网站发起授权

系统管理员在应用提供商网站找到适用的套件后,可在提供商网站发起授权请求。此时应用提供商需构造授权链接,该链接中需要提供套件suiteid、预授权码和授权成功后跳转的url,预授权码通过接口get_preauthcode获取(详见第三方应用接口说明)。注意,进入授权页时,系统会校验授权链接所在的域名是否已被登记。


Sqlc1.png


下面对其进行详细介绍:

1)企业进入应用提供商网站

指的是,企业系统管理员进入应用提供商网站,如www.ABC.com。

2)获取预授权码

预授权码是应用套件实现授权托管的安全凭证,通过suite_id,suite_secret和suite_ticket获取,相关接口为get_pre_auth_code。

其中,suite_ticket由企业号服务器定期每10分钟推送到套件注册的callbackurl上 点击查看详情

3)应用提供商引导企业系统管理员进入应用套件授权页

应用提供商可以在自己的网站中放置“微信企业号应用授权”的入口,引导企业号管理员进入应用套件授权页。网址为:

https://qy.weixin.qq.com/cgi-bin/loginpage?suite_id=$suite_id$&pre_auth_code=$pre_auth_code$&redirect_uri=$redirect_uri$&state=$state$

该网址中应用提供商需要提供suite_id、预授权码、授权完成回调URI和state

4)企业号管理员确认并同意授权托管给应用提供商

企业号管理员进入套件授权页后,设置授权内容,确认并同意将自己的企业号应用或通讯录授权托管给应用提供商,完成授权流程。

5)授权成功,返回临时授权码

授权流程完成后,会进入回调URI,并在URI参数中返回临时授权码、过期时间以及state参数(redirect_uri?auth_code=xxx&expires_in=1200&state=xx)

6)利用临时授权码获取永久授权码以及授权信息

在得到临时授权码后,应用提供商可以使用临时授权码换取永久授权码以及授权信息,后续可以通过永久授权码调用企业号相关API(能调用哪些API,取决于用户将哪些权限集授权给了应用提供商)。