企业微信之——扫码登录
参考文献
- 扫码授权登陆
配置企业微信应用设置
1.设置可信域名
❗️可信域名必须与企业主体相同或相关联
2.设置授权回调域
❗️授权回调域必须与可信域名一直,如果有设置端口,则端口也要配置一直,详情看开发文档。
❗️该回调域名提前解析到服务器ip地址
3.将ip地址添加到白名单
OAuth2
1.构造授权链接
String encodeUrl = URLEncoder.encode(props.getOauth2CallbackUrl(), StandardCharsets.UTF_8);
String url = "https://open.work.weixin.qq.com/wwopen/sso/qrConnect?" +"appid=" + props.getCorpid() +"&agentid=" + props.getAgentid() +"&redirect_uri=" + encodeUrl +"&state=" + subject.getUserId();
参数说明
参数 | 必须 | 说明 |
---|---|---|
appid | 是 | 企业微信的CorpID,在企业微信管理端查看 |
agentid | 是 | 授权方的网页应用ID,在具体的网页应用中查看 |
c | 是 | 重定向地址,需要进行UrlEncode |
state | 否 | 用于保持请求和回调的状态,授权请求后原样带回给企业。该参数可用于防止csrf攻击(跨站请求伪造攻击),建议企业带上该参数,可设置为简单的随机数加session进行校验 |
lang | 否 | 自定义语言,支持zh、en;lang为空则从Headers读取Accept-Language,默认值为zh |
若用户不在agentid所指应用的可见范围,扫码时会提示无权限。
假定当前
企业CorpID:wxCorpId
开启授权登录的应用ID:1000000
登录跳转链接:http://api.3dept.com
state设置为:weblogin@gyoss9
需要配置的授权回调域为:api.3dept.com
根据URL规范,将上述参数分别进行UrlEncode,得到拼接的OAuth2链接为:
https://open.work.weixin.qq.com/wwopen/sso/qrConnect?appid=wxCorpId&agentid=1000000&redirect_uri=http%3A%2F%2Fapi.3dept.com&state=web_login%40gyoss9
2.授权成功后回调
成功:重定向到
redirect_uri
会携带code和state参数redirect_uri?code=CODE&state=STATE
失败:重定向到
redirect_uri
,但不会携带code,仅有state参数回调业务按需处理
企业微信之——扫码登录相关推荐
- 微信或企业微信实现扫码登录的三种方式
通过微信或企业微信扫码登录PC管理后台,替代传统的账号.密码登录. 为了完成这个功能,疯狂百度各种扫码登录的技术文章,能实现微信或企业微信扫码登录的方式可以说有三种: 1.注册一个微信资源开放平台账号 ...
- 企业微信实现扫码登录
一:获取扫码登陆所需的参数:appid,secret,agentid 登录企业微信:https://work.weixin.qq.com/ 扫码登录文档:https://work.weixin.qq. ...
- 企业微信服务商扫码登录
准备步骤 申请注册企业微信: 企业注册后,需要申请微信服务商 企业微信服务商官网: PS:上述不是本章的主要内容,不做过多详解 进入服务商后台 应用管理–> 登录授权–>设置登录授权发起域 ...
- pc端集成企业微信的扫码登录及遇到的问题
集成步骤: 1.在企业微信后台中添加应用 2.记录下应用的相关信息,在后文要用到 3.引入企业微信js 旧版:http://rescdn.qqmail.com/node/ww/wwopenmng/js ...
- 企业微信第三方扫码登录
为什么写这个文章 公司后台突然需要扫码登录,网上的企业微信扫码都是基于自建应用的扫码登录,对第三方的扫码并没有多加介绍 概述 企业微信的管理员和成员,可通过单点登录机制,登录到第三方网站.第三方可通过 ...
- 企业微信+esaywechat 扫码授权登录
企业微信+esaywechat 扫码授权登录 相关 相关 这里用的是 Yii2 框架. 安装easywechat: composer require overtrue/wechat:~4.0 -vvv ...
- CAS在windows AD下实现企业微信自动扫码登陆的总结
基础名词 CAS(Central Authentication Service),可以看作中心授权服务器 SSO(Single Sign On),单点登录 SSO相关知识 同域SSO(blog.212 ...
- 淘宝和微信的扫码登录实现原理
目录 基本技术原理 扫码登录功能到底是什么样的? 扫码登录功能的完整技术逻辑 1)网页端与服务器的配合逻辑: 2)手机端与服务器的配合逻辑: 3)登录成功时的逻辑: 4)详细的技术原理总结如下图所示: ...
- 微信网页扫码登录与微信公众号授权登录的区别
最近着手开发了微信网页扫码登录和公众号授权登录收获颇丰,两者的开发很类似.以下是我个人摸索过程中发现的两者的异同: 两者都可以通过微信客户端扫码授权的方式,让第三方页面获得微信用户的一些基本信息(昵称 ...
最新文章
- 手撸 webpack4.x 配置(一)
- 分享5个可视化的正则表达式编辑工具
- LabviewRS232串口通信数据格式问题解析
- vue 在进入某一个页面的时候,created方法不执行,----亲测,通俗易懂
- html文件上传数量限制,使用HTML中的input上传文件最多可以上传多少张?
- ActiveDirectory之不常用操作
- vscode for mac怎样关闭自动更新
- php$_GET 变量
- 关于缓存雪崩\穿透\击穿等一些问题
- 160 - 25 CodeZero.1
- 搞事 | 5分钟部署一个机器人帮你告别 “信息焦虑”
- 滴滴试行网约车遗失物品处理规则:司机返还遗失物品将收费
- 一篇文章,可以同时拥有4份收益,你知道吗?
- 高级装饰器---验证用户登录
- LeetCode 739. 每日温度
- 数据挖掘与商业智能理论
- 无线网卡无法获取dhcp服务器,无线网络无法获取网络IP地址
- 在VMware上,ubuntu和windows之间如何复制文本、拖拽文件?
- Arcgis学习1:arcgis下载and画一个省份
- Python中的几种乘法np.dot,np.multiply,*
热门文章
- 微信小程序开发的app---礼物说APP
- PCL1.9.0网盘资源分享(ALL IN ONE +PDB)
- Python-__getattr__与__getattribute__
- java画布制作弧形文字_QT 使用QPainter 绘制图形 和 世界变换 world transform
- python--mysql--驱动简介和使用
- SAP实施案例之亨得利集团
- 深圳, 香港, 台北之對比
- linux多进程和多线程分析之一
- B1094 谷歌的招聘 (20 分)
- ETL工程师_个人职责