CN113347197B - 一种基于微信平台的web应用扫码授权登录方法 - Google Patents

一种基于微信平台的web应用扫码授权登录方法 Download PDF

Info

Publication number
CN113347197B
CN113347197B CN202110690896.0A CN202110690896A CN113347197B CN 113347197 B CN113347197 B CN 113347197B CN 202110690896 A CN202110690896 A CN 202110690896A CN 113347197 B CN113347197 B CN 113347197B
Authority
CN
China
Prior art keywords
authorization
wechat
forwarding
web application
page
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110690896.0A
Other languages
English (en)
Other versions
CN113347197A (zh
Inventor
李昕
刘玉皎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chongqing Technology and Business Institute Chongqing Radio and TV University
Original Assignee
Chongqing Technology and Business Institute Chongqing Radio and TV University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chongqing Technology and Business Institute Chongqing Radio and TV University filed Critical Chongqing Technology and Business Institute Chongqing Radio and TV University
Priority to CN202110690896.0A priority Critical patent/CN113347197B/zh
Publication of CN113347197A publication Critical patent/CN113347197A/zh
Application granted granted Critical
Publication of CN113347197B publication Critical patent/CN113347197B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • H04L51/046Interoperability with other network applications or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本发明公开一种基于微信平台的web应用扫码授权登录方法,包括步骤:配置微信公众号,设置授权信任回调域名;建立转发中心,创建Web应用授权转发地址映射表,创建二维码生成页面,并建立微信授权确认页面;Web应用请求转发中心二维码生成页面,生成二维码;用户扫描二维码,确认授权;转发中心二维码生成页面检测登录授权结果。通过建立转发中心,对微信扫码验证过程进行了改进,解决了公众号对信任域名数量限制的局限性问题;自定转发中心二维码页面,提升了对二维码的可控性,实现二维码有效显示;用内网授权结果检测替换外网授权结果检测,减少了访问微信服务器的次数,降低了对外网出口带宽的占用率,提升了微信授权时的并发性。

Description

一种基于微信平台的web应用扫码授权登录方法
技术领域
本发明属web应用技术领域,特别是涉及一种基于微信平台的web应用扫码授权登录方法。
背景技术
微信扫码授权登录方法在各类Web应用中得到广泛使用,为了提高Web应用的用户体验性。目前实现微信扫码授权登录的主要方式是调用微信OAuth2扫码授权登录验证接口来实现Web应用的扫码授权登录。
现有的接口验证方法存在的主要问题有:1)授信Web应用域名需要在微信公众号中进行设置,每个微信公众号对授信Web应用域名作了数量限制,在一个微信公众号中使用多个域名直接调用微信扫码授权登录存在着一定的局限性;2)微信二维码扫码授权登录会调用微信二维码生成页面,将二维码页面集成到自己的Web应用时,对二维码的识别率、二维码大小、二维码样式以及二维码页面样式不易调整,影响系统有效显示界面;3)微信服务器属于Internet Web服务器,智慧校园中大多数用户是基于学校统一出口登录Internet外网,占用共同带宽,在实现微信扫码授权登录流程中,包含微信扫码完成检测、微信授权结果检测与微信授权重定向等过程,Web应用在这些过程中会多次与微信服务器进行数据交互,在高并发且具有防火墙隔离的内网Web应用与微信服务器进行频繁的数据交互,常常会出现服务器超时,服务器无法访问等问题,降低了Web应用的稳定性与用户体验性。
发明内容
为了解决上述问题,本发明提出了一种基于微信平台的web应用扫码授权登录方法,通过建立转发中心,对微信扫码验证过程进行了改进,解决了一个公众号对信任域名数量限制的局限性问题;自定转发中心二维码页面,提升了对二维码的可控性,实现二维码有效显示;用内网授权结果检测替换外网授权结果检测,减少了访问微信服务器的次数,降低了对外网出口带宽的占用率,提升了微信授权时的并发性。
为达到上述目的,本发明采用的技术方案是:一种基于微信平台的web应用扫码授权登录方法,包括步骤:
S10,配置微信公众号,设置授权信任回调域名;
S20,建立转发中心,创建Web应用授权转发地址映射表,创建二维码生成页面,并建立微信授权确认页面;
S30,Web应用请求转发中心二维码生成页面,生成二维码;
S40,用户扫描二维码,确认授权;
S50,转发中心二维码生成页面检测登录授权结果。
进一步的是,在所述步骤S10中,在公众号中设置接口配置信息,该接口配置信息用于响应微信发送的Token令牌验证;设置微信的授权信任回调域名,在此域名下的回调页面接受微信的授权信息。
进一步的是,在所述步骤S20中,设定微信授权登录为一级授权中心,响应微信Token令牌验证的Web应用为转发中心;设定转发中心的访问域名与微信公众号中设置的授权信任回调域名相同,并按微信开发接口规则开发微信响应接口;
首先,在转发中心中创建其它Web应用授权转发地址映射表;配置其它Web应用转发地址与目标Web应用转发标识的对应关系,当一级授权中心授权给转发中心时,转发中心根据目标Web应用转发标识与其它Web应用授权转发地址的对应关系将一级授权信息转发至相应的Web应用;
其次,在转发中心创建二维码生成页面,作为Web应用扫码授权登录的二维码调用页面;
最后,在转发中心建立微信授权确认页面。
进一步的是,在所述步骤S30中,二维码生成页面接收其它Web应用转发标识,并在二维码生成页面中动态生成唯一授权检测标识,授权检测标识与其它Web应用转发标识作为一级授权中心用户验证后的回调地址输入参数,然后与微信授权接口地址拼接作为二维码跳转地址信息。
进一步的是,在所述步骤S40中,用户微信扫描二维码后,手机微信网页自动跳转到一级授权中心用户验证接口进行验证授权,验证授权通过后,转发中心通过授权回调地址得到密码信息、授权检测标识与其它Web应用转发标识,然后将密码信息作为输入参数由转发中心再次调用微信接口获取微信用户的OpenID;将OpenID与授权检测标识作为输入参数,重定向到微信转发中心微信授权确认页面;
在手机微信中确认授权登录后,将OpenID、授权检测标识上传至转发中心Web服务器,检测OpenID的用户绑定信息,如果有则将授权检测标识与OpenID进行映射关系,存储于具有时效性的公共存储介质中。
进一步的是,在所述步骤S50中,二维码生成页面在产生唯一授权检测标识时,启动定时检测程序,通过Ajax检测转发中心的公共存储介质中是否存有与网页中相同的授权检测标识,如果有读取授权检测标识对应的OpenID,读取OpenID对应的用户信息,作为输入参数,重定向到其它Web应用,完成微信二级授权登录验证。
采用本技术方案的有益效果:
本发明通过微信中设置的信任域名建立Web应用二级授权登录转发中心,转发中心向其它Web应用转发微信授权信息;转发中心二维码生成页面替代微信二维码生成页面,手机微信通过扫描转发中心二维码完成微信扫码检测、扫码授权结果检测等过程。通过建立转发中心,对微信扫码验证过程进行了改进,解决了一个公众号对信任域名数量限制的局限性问题;自定转发中心二维码页面,提升了对二维码识别率、大小、美观的可控性;用内网授权结果检测替换外网授权结果检测,减少了访问微信服务器的次数,降低了对外网出口带宽的占用率,提升了微信授权时的并发性。
附图说明
图1为本发明的一种基于微信平台的web应用扫码授权登录方法流程示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步阐述。
在本实施例中,参见图1所示,本发明提出了一种基于微信平台的web应用扫码授权登录方法,包括步骤:
S10,配置微信公众号,设置授权信任回调域名;
S20,建立转发中心,创建Web应用授权转发地址映射表,创建二维码生成页面,并建立微信授权确认页面;
S30,Web应用请求转发中心二维码生成页面,生成二维码;
S40,用户扫描二维码,确认授权;
S50,转发中心二维码生成页面检测登录授权结果。
作为上述方案的优化实施例:
一种基于微信平台的web应用扫码授权登录方法,包括步骤:
S10,配置微信公众号,设置授权信任回调域名。
在所述步骤S10中,在公众号中设置接口配置信息,该接口配置信息用于响应微信发送的Token令牌验证;设置微信的授权信任回调域名,在此域名下的回调页面接受微信的授权信息。
S20,建立转发中心,创建Web应用授权转发地址映射表,创建二维码生成页面,并建立微信授权确认页面。
在所述步骤S20中,设定微信授权登录为一级授权中心,响应微信Token令牌验证的Web应用为转发中心;设定转发中心的访问域名与微信公众号中设置的授权信任回调域名相同,并按微信开发接口规则开发微信响应接口;
首先,在转发中心中创建其它Web应用授权转发地址映射表;配置其它Web应用转发地址与目标Web应用转发标识的对应关系,当一级授权中心授权给转发中心时,转发中心根据目标Web应用转发标识与其它Web应用授权转发地址的对应关系将一级授权信息转发至相应的Web应用;
其次,在转发中心创建二维码生成页面,作为Web应用扫码授权登录的二维码调用页面;
最后,在转发中心建立微信授权确认页面。
S30,Web应用请求转发中心二维码生成页面,生成二维码。
在所述步骤S30中,二维码生成页面接收其它Web应用转发标识,并在二维码生成页面中动态生成唯一授权检测标识,授权检测标识与其它Web应用转发标识作为一级授权中心用户验证后的回调地址输入参数,然后与微信授权接口地址拼接作为二维码跳转地址信息。
S40,用户扫描二维码,确认授权。
在所述步骤S40中,用户微信扫描二维码后,手机微信网页自动跳转到一级授权中心用户验证接口进行验证授权,验证授权通过后,转发中心通过授权回调地址得到密码信息、授权检测标识与其它Web应用转发标识,然后将密码信息作为输入参数由转发中心再次调用微信接口获取微信用户的OpenID;将OpenID与授权检测标识作为输入参数,重定向到微信转发中心的微信授权确认页面;
在手机微信中确认授权登录后,将OpenID、授权检测标识上传至转发中心Web服务器,检测OpenID的用户绑定信息,如果有则将授权检测标识与OpenID进行映射关系,存储于具有时效性的公共存储介质中。
S50,转发中心二维码生成页面检测登录授权结果。
在所述步骤S50中,二维码生成页面在产生唯一授权检测标识时,启动定时检测程序,通过Ajax检测转发中心的公共存储介质中是否存有与网页中相同的授权检测标识,如果有读取授权检测标识对应的OpenID,读取OpenID对应的用户信息,作为输入参数,重定向到其它Web应用,完成微信二级授权登录验证。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

Claims (3)

1.一种基于微信平台的web应用扫码授权登录方法,其特征在于,包括步骤:
S10,配置微信公众号,设置授权信任回调域名;
S20,建立转发中心,创建Web 应用授权转发地址映射表,创建二维码生成页面,并建立微信授权确认页面;设定微信授权登录为一级授权中心,响应微信Token令牌验证的Web应用为转发中心;设定转发中心的访问域名与微信公众号中设置的授权信任回调域名相同,并按微信开发接口规则开发微信响应接口;
首先,在转发中心中创建其它Web 应用授权转发地址映射表;配置其它Web 应用转发地址与目标 Web 应用转发标识的对应关系,当一级授权中心授权给转发中心时,转发中心根据目标 Web 应用转发标识与其它 Web 应用授权转发地址的对应关系将一级授权信息转发至相应的Web应用;
其次,在转发中心创建二维码生成页面,作为Web应用扫码授权登录的二维码调用页面;
最后,在转发中心建立微信授权确认页面;
S30,Web 应用请求转发中心二维码生成页面,生成二维码;二维码生成页面接收其它Web应用转发标识,并在二维码生成页面中动态生成唯一授权检测标识,授权检测标识与其它 Web 应用转发标识作为一级授权中心用户验证后的回调地址输入参数,然后与微信授权接口地址拼接作为二维码跳转地址信息;
S40,用户扫描二维码,确认授权;用户微信扫描二维码后,手机微信网页自动跳转到一级授权中心用户验证接口进行验证授权,验证授权通过后,转发中心通过授权回调地址得到密码信息、授权检测标识与其它 Web应用转发标识,然后将 密码信息作为输入参数由转发中心再次调用微信接口获取微信用户的 OpenID;将 OpenID与授权检测标识作为输入参数,重定向到微信转发中心微信授权确认页面;
在手机微信中确认授权登录后,将OpenID、授权检测标识上传至转发中心 Web 服务器,检测OpenID的用户绑定信息,如果有则将授权检测标识与OpenID进行映射关系,存储于具有时效性的公共存储介质中;
S50,转发中心二维码生成页面检测登录授权结果。
2.根据权利要求1所述的一种基于微信平台的web应用扫码授权登录方法,其特征在于,在所述步骤S10中,在公众号中设置接口配置信息,该接口配置信息用于响应微信发送的Token令牌验证;设置微信的授权信任回调域名,在此域名下的回调页面接受微信的授权信息。
3.根据权利要求1所述的一种基于微信平台的web应用扫码授权登录方法,其特征在于,在所述步骤S50中,二维码生成页面在产生唯一授权检测标识时,启动定时检测程序,通过 Ajax 检测转发中心的公共存储介质中是否存有与网页中相同的授权检测标识,如果有读取授权检测标识对应的OpenID,读取OpenID对应的用户信息,作为输入参数,重定向到其它 Web应用,完成微信二级授权登录验证。
CN202110690896.0A 2021-06-22 2021-06-22 一种基于微信平台的web应用扫码授权登录方法 Active CN113347197B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110690896.0A CN113347197B (zh) 2021-06-22 2021-06-22 一种基于微信平台的web应用扫码授权登录方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110690896.0A CN113347197B (zh) 2021-06-22 2021-06-22 一种基于微信平台的web应用扫码授权登录方法

Publications (2)

Publication Number Publication Date
CN113347197A CN113347197A (zh) 2021-09-03
CN113347197B true CN113347197B (zh) 2022-07-15

Family

ID=77477570

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110690896.0A Active CN113347197B (zh) 2021-06-22 2021-06-22 一种基于微信平台的web应用扫码授权登录方法

Country Status (1)

Country Link
CN (1) CN113347197B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108632291A (zh) * 2018-05-16 2018-10-09 阿里巴巴集团控股有限公司 一种第三方授权登录方法及系统
CN112765519A (zh) * 2021-01-20 2021-05-07 深圳市极致科技股份有限公司 一种公众号配置方法、装置、电子设备及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9736149B2 (en) * 2009-02-03 2017-08-15 Inbay Technologies Inc. Method and system for establishing trusted communication using a security device
US20120203695A1 (en) * 2011-02-09 2012-08-09 American Express Travel Related Services Company, Inc. Systems and methods for facilitating secure transactions

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108632291A (zh) * 2018-05-16 2018-10-09 阿里巴巴集团控股有限公司 一种第三方授权登录方法及系统
CN112765519A (zh) * 2021-01-20 2021-05-07 深圳市极致科技股份有限公司 一种公众号配置方法、装置、电子设备及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
二维码在Web中应用的安全性研究;王丽芬等;《电脑知识与技术》;20170430;第13卷(第12期);全文 *
微信二维码授权登陆网站的实现;陈彩云等;《现代计算机》;20170130;全文 *

Also Published As

Publication number Publication date
CN113347197A (zh) 2021-09-03

Similar Documents

Publication Publication Date Title
CN102710640B (zh) 请求授权的方法、装置和系统
US20220338964A9 (en) Securely managing digital assistants that access third-party applications
CN111030812A (zh) 令牌验证方法、装置、存储介质及服务器
CN110795174B (zh) 一种应用程序接口调用方法、装置、设备及可读存储介质
CN106060034A (zh) 账号登录方法和装置
US10027642B2 (en) Method of access by a telecommunications terminal to a database hosted by a service platform that is accessible via a telecommunications network
CN106331003B (zh) 一种云桌面上应用门户系统的访问方法及装置
CN106953831A (zh) 一种用户资源的授权方法、装置及系统
CN112188493A (zh) 一种鉴权认证方法、系统及相关设备
CN109428893A (zh) 一种身份认证方法、装置及系统
CN113765655A (zh) 访问控制方法、装置、设备及存储介质
CN102833328A (zh) 应用统一调用方法及统一调用客户端
CN105791249A (zh) 一种第三方应用处理方法、装置以及系统
US9455972B1 (en) Provisioning a mobile device with a security application on the fly
CN105491153A (zh) 一种分享方法、装置及移动终端
KR102393500B1 (ko) 로그인 시스템 및 인증 방법
CN103559430B (zh) 基于安卓系统的应用账号管理方法和装置
CN113347197B (zh) 一种基于微信平台的web应用扫码授权登录方法
CN117251837A (zh) 一种系统接入方法、装置、电子设备及存储介质
CN105656856A (zh) 资源管理方法和装置
CN110764427A (zh) 一种分享控制权限方法、系统及计算机可读存储介质
CN114338130B (zh) 信息的处理方法、装置、服务器及存储介质
CN113065120B (zh) 接口调用鉴权方法、装置、电子设备及可读存储介质
CN109753769A (zh) 一种基于区块链的软件授权方法及系统
CN110247938A (zh) 一种应用管理的方法、设备及计算机存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant