企业微信单点登录集成

<< Click to Display Table of Contents >>

当前位置:  系统集成 > 集成部署 

企业微信单点登录集成

Previous pageReturn to chapter overviewNext page

1.获取code

请求方式:只需从定向到该链接即可,微信验证通过后会跳转会redirecturl。

https://open.work.weixin.qq.com/wwopen/sso/qrConnect?appid=ww100000a5f2191&agentid=1000000&redirect_uri=产品报表url

参数

必须

说明

appid

企业微信的CorpID,在企业微信管理端查看

agentid

授权方的网页应用ID,在具体的网页应用中查看

redirect_uri

重定向地址,需要进行UrlEncode

state

用于保持请求和回调的状态,授权请求后原样带回给企业。该参数可用于防止csrf攻击(跨站请求伪造攻击),建议企业带上该参数,可设置为简单的随机数加session进行校验

权限说明

企业微信会对设置可信域名,例如永洪测分配的域名是yh.com,redirecturl必须是yh.com

 

返回说明(跳转回产品报表url中会有code参数)
用户允许授权后,将会重定向到redirect_uri的网址上,并且带上code和state参数,如下所示:

redirect_uri?code=CODE&state=STATE

 

若用户禁止授权,则重定向后不会带上code参数,仅会带上state参数,如下所示:

redirect_uri?state=STATE

 

2.获取access_token

:当access_token失效或过期时,需要重新获取

请求方式:GET(HTTPS)
请求URL:https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=id&corpsecret=secrect

参数说明

参数

必须

说明

corpid

企业ID

corpsecret

应用的凭证密钥

权限说明

每个应用有独立的secret,所以每个应用的access_token应该分开来获取

返回结果

{   "errcode":0

   "errmsg":""

   "access_token": "accesstoken000001",

   "expires_in": 7200//凭证的有效时间

}

 

3.根据code和access_token获取用户信息

请求方式:GET(HTTPS)
请求地址https://qyapi.weixin.qq.com/cgi-bin/user/getuserinfo?access_token=ACCESS_TOKEN&code=CODE

参数说明

参数

必须

说明

access_token

调用接口凭证

code

通过成员授权获取到的code,每次成员授权带上的code将不一样,code只能使用一次,5分钟未被使用自动过期

权限说明
跳转的域名须完全匹配企业内任一应用的可信域名。

返回结果

{

   "UserId":"USERID",

}