999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于微信服務號的合法身份驗證方法設計與實現(xiàn)

2017-01-10 07:36:36張未未王麗韓愛慶
微型電腦應用 2016年12期
關鍵詞:數(shù)據(jù)庫微信用戶

張未未,王麗,韓愛慶

?

基于微信服務號的合法身份驗證方法設計與實現(xiàn)

張未未,王麗,韓愛慶

(北京中醫(yī)藥大學信息中心,北京 100029)

微信服務號偏重于為每一位關注用戶提供交互服務,具有較好的開放性,但不便于用戶的分級分類管理;而企業(yè)號主要為公司內(nèi)部提供通訊和移動應用服務,需要先有成員的通訊信息驗證才可以成功關注并使用,具有較強的針對性。但企業(yè)在使用微信公眾號進行運營過程中,既需要對所有潛在用戶提供開放性服務,也需要對用戶進行分級分類管理,不能單純的將對外服務和內(nèi)部活動割裂開來。針對以上問題,介紹了基于微信服務號實現(xiàn)合法身份驗證的方法,將企業(yè)號可對關注用戶進行分級分類管理及提供特定服務的優(yōu)點應用于服務號之中,同時又保留了服務號原有的開放性特點,從而拓寬了服務號的應用范圍,為這兩種公眾號的集成應用提供了思路。

微信;服務號;企業(yè)號;身份驗證;OpenID

0 引言

2012年8月23日,騰訊公司推出微信公眾平臺,其是微信公眾賬號所有者(政府、媒體、企業(yè)、組織或個人等)進行品牌推廣、減少運營成本、提高影響力、與用戶進行互動交流及提供服務的平臺,公眾賬號通過消息、事件、菜單等交互方式為用戶提供服務[1]。在微信公眾平臺應用之出,微信公眾賬號主要分為訂閱號和服務號兩種類型。其中,訂閱號主要偏于為用戶傳達資訊(類似報紙雜志),認證前后都是每天只可以群發(fā)一條消息;而服務號則偏于服務交互(類似銀行、114等提供服務查詢),認證前后都是每個月可群發(fā)4條消息[2]。自2014年9月以后,微信公眾平臺又推出了新的賬號類型—企業(yè)號,其是微信為企業(yè)客戶提供的移動服務,旨在提供企業(yè)移動應用入口。它可以幫助企業(yè)建立員工、上下游供應鏈與企業(yè)IT系統(tǒng)間的連接。企業(yè)號主要用于公司內(nèi)部通訊使用,需要先有成員的通訊信息驗證才可以關注成功企業(yè)號[3]。

目前,企業(yè)和組織一般多會選擇使用服務號來實現(xiàn)對外服務,使用企業(yè)號來為企業(yè)內(nèi)部員工提供通訊等移動應用服務。而筆者在為企業(yè)進行實際公眾賬號項目開發(fā)過程中發(fā)現(xiàn),企業(yè)所能提供的對外服務往往是建立在內(nèi)部員工相互協(xié)作的基礎上的,也就是說不能單純的將企業(yè)運營的對外服務和內(nèi)部活動進行割裂。而另一方面,企業(yè)在提供對外服務時,也要區(qū)分不同的客戶群體,是新關注客戶還是已合作過的客戶,或者可以在服務號中針對不同的客戶等級提供不同的服務選項[4]。針對以上實際需求,可以考慮將服務號的對外服務功能與企業(yè)號中對于關注用戶需進行身份驗證的特點相結合來予以解決,方法之一是在服務號中加入身份驗證機制。

1 身份驗證方法設計

服務號可以為所有關注的用戶提供服務,相較之企業(yè)號只能為內(nèi)部員工或驗證用戶提供服務來說具有更強的開放性。但這樣的開放性又不便于企業(yè)對于客戶進行分級管理以及提供不同的服務選項,因此需要為服務號加入類似企業(yè)號中的關注用戶合法身份驗證機制。

1.1 基本思路

當用戶第一次關注微信服務號時,提示用戶進行身份驗證。通常要求用戶輸入具有唯一個人標識的電子信息數(shù)據(jù)(例如身份證號、電子郵箱地址或手機號碼)。將用戶所輸入的信息與后臺數(shù)據(jù)庫已保存的合法用戶信息進行比對,如果比對成功,則認為該用戶身份合法,并將該用戶關注服務號時所使用的個人微信號信息與用戶信息一起保存于數(shù)據(jù)庫中,從而完成用戶驗證過程。當該用戶再次使用同一微信號進入企業(yè)服務號時,將根據(jù)微信號信息自動判斷用戶身份,從而完成合法用戶的自動登錄環(huán)節(jié),并為該用戶提供區(qū)別于普通關注用戶更多的服務選項。

1.2 用戶微信號信息識別

從1.1節(jié)基本思路中不難發(fā)現(xiàn),實現(xiàn)身份驗證的關鍵是將用戶個人微信號信息與數(shù)據(jù)庫中已保存的用戶信息進行綁定,因此能否獲取正確并且具有唯一識別性的用戶微信號信息將十分重要。當關注者與服務號產(chǎn)生信息交互后,服務號在用戶未授權的情況下并不能直接獲取用戶的微信號等微信注冊信息,取而代之的是可獲得關注者的OpenID。OpenID是加密后的微信號,每個微信號對每個服務號的OpenID是唯一的[5]。對于不同的服務號,同一微信用戶的OpenID不同,獲取用戶相對于某個服務號的OpenID不需要用戶授權[6]??梢奜penID可以作為服務號內(nèi)對于關注用戶的唯一標識。通過將OpenID與已有用戶信息綁定保存,便可在用戶下次進入同一服務號時,進行OpenID的比較,從而實現(xiàn)已完成合法身份驗證用戶的自動識別及登錄。

1.3 實現(xiàn)方法設計

基于服務號實現(xiàn)身份驗證的方法流程,如圖1所示。

圖1 身份驗證方法實現(xiàn)流程

①用戶微信關注或進入微信服務號時,獲取OpenID。

②判斷所獲得的OpenID是否已存在于后臺數(shù)據(jù)庫中,如果存在則表明用戶已完成身份驗證,將實現(xiàn)服務號內(nèi)的自動登錄,并可直接使用服務號的全部功能。

③如果獲得的OpenID并未存在于后臺數(shù)據(jù)庫中,說明用戶還沒有完成身份驗證,可用圖文消息提示用戶進行身份驗證。

④驗證過程要求用戶輸入電子郵箱地址。如果該郵箱地址在后臺數(shù)據(jù)庫中有用戶信息與之對應,說明該用戶身份合法,則向該郵箱發(fā)送激活郵件。

⑤用戶在規(guī)定時間內(nèi)通過激活郵件完成身份驗證過程。驗證成功后,用戶微信的OpenID將與用戶基本信息進行綁定保存,已供后續(xù)用戶自動登錄使用。該用戶可以使用服務號中的所有功能

⑥如果通過用戶輸入的電子郵箱地址在后臺并未找到對應用戶信息,則說明該用戶身份不合法,將只能使用服務號中的部分功能,比如接收圖文信息等資訊,而不能與服務號進行交互。

上述身份驗證過程使用了郵件激活技術,主要是為防止別人盜用合法用戶的電子郵箱地址進行驗證。也可以使用輸入手機號碼和發(fā)送驗證碼的方式來完成驗證。

2 身份驗證方法實現(xiàn)

基于以上身份驗證方法的設計,筆者已在實際的服務號開發(fā)項目中予以實現(xiàn)。該服務號是為某培訓機構提供培訓信息推廣、在線測驗及在線評教等服務支持的。如果是非身份驗證用戶將只能享有培訓信息推送功能。但用戶身份得到驗證后,將可使用服務號的所有功能。

2.1 后臺數(shù)據(jù)準備

該服務號所提供的在線測驗功能是針對已報名參加該培訓機構線下培訓課程的學員而進行的知識自測環(huán)節(jié),通過測驗的學員,可以得到結業(yè)證書。對于可以參加在線測驗的學員應該具有一定的合法身份(例如,已報名某門課程的學習),當用戶關注該服務號或是進行在線測驗之前要進行學員身份驗證,對于身份合法的用戶才可使用在線測驗功能。因此,需要事先將具有合法身份的學員基本信息錄入服務號后臺數(shù)據(jù)庫中。當學員使用個人微信關注服務號時,再將其微信的OpenID與個人信息進行綁定,從而完成驗證。在設計后臺數(shù)據(jù)庫時,將學員基本信息填入“Tbl用戶”表中,該表基本結構及示例數(shù)據(jù),如表1所示。

表1 “Tbl用戶”表基本結構及示例數(shù)據(jù)

表1中“電子郵箱”地址將作為關注用戶與具有合法身份學員用戶進行匹配的依據(jù)?!笆欠窦せ睢弊侄螢?時,表示還未完成身份驗證。另外,用戶需要在“激活過期時間”所規(guī)定的范圍內(nèi)進行帳號激活。

2.2 驗證過程實現(xiàn)

1)當用戶首次關注服務號時,服務號將收到關注事件,并得到該事件的XML格式數(shù)據(jù),示例數(shù)據(jù)如下[7]。

123456789

其中參數(shù)ToUserName表示接收方微信號,參數(shù)FromUserName表示發(fā)送方(關注用戶)的OpenID??梢岳肍romUserName中的OpenID值在“Tbl用戶”表中進行查找,如果有匹配記錄,說明該微信號已經(jīng)與某個學員信息進行了綁定,身份驗證已完成;如果沒有匹配記錄,則服務號將向關注用戶發(fā)送圖文消息,提示用戶進行身份驗證,如圖2所示。

圖2 提示用戶進行身份驗證的圖文消息

2)單擊該圖文消息或者服務號的“學員驗證”菜單,將跳轉至身份驗證界面。通過輸入學員報名時所登記的正確電子郵箱地址,進行用戶身份驗證。驗證過程,如圖3所示。

圖3 進行身份驗證的PHP網(wǎng)頁界面

經(jīng)過以上驗證步驟后,“Tbl用戶”表中與所輸入電子郵箱地址匹配的用戶記錄將會填入“OpenID”、“驗證時間”、“激活過期時間”、“賬戶激活碼”數(shù)據(jù)。需要說明的是:

a)圖3所示用戶驗證界面是利用PHP開發(fā)的動態(tài)網(wǎng)頁。驗證過程需要在PHP頁面中獲取關注用戶微信的OpenID值以填入“Tbl用戶”表中。由于此時已脫離了微信服務號的主界面,無法接收到帶有參數(shù)FromUserName的XML格式數(shù)據(jù),因此,要想獲得用戶的OpenID值需調(diào)用微信公眾平臺所提供的OAuth2.0授權接口[8],接口請求形式如下(具體調(diào)用方法可參見微信公眾平臺官方開發(fā)文檔)。

https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect

在由圖2所示服務號主界面跳轉至圖3所示驗證界面時,需調(diào)用此接口來設置鏈接地址。

b)為防止用戶使用非本人電子郵箱進行身份驗證,驗證過程采用了郵件激活的方式[9],激活郵件內(nèi)容如圖4所示。

圖4 激活郵件內(nèi)容示例

鏈接中verify參數(shù)即賬戶激活碼,該激活碼是由“OpenID”和“驗證時間”兩項數(shù)據(jù)通過md5加密的方式計算得到的[10],具有唯一性。PHP參考代碼如下:

$regtime = date('Y-m-d H:i:s',time());//獲取當前時間作為驗證時間

$token = md5($openID.$regtime); //創(chuàng)建激活碼

在激活的過程中會把該參數(shù)發(fā)送給激活頁面,圖4所示,鏈接中的激活頁面地址為:

http://zwwatl.applinzi.com/active.php

激活頁面接收到該參數(shù)后將與“Tbl用戶”表中已保存的賬戶激活碼數(shù)據(jù)進行比較,相同則激活成功。激活后“Tbl用戶”表中對應的數(shù)據(jù)形式,如表2所示。

表2 賬戶激活后“Tbl用戶”表中數(shù)據(jù)示例

3)激活成功后,如果用戶使用同一微信號再次進行身份驗證時,將會出現(xiàn)提示信息。此時,用戶便可使用服務號的所有功能,如圖5所示。

圖5 賬戶激活成功界面

4)由于用戶微信的OpenID已保存于“Tbl用戶”表中,因此當通過驗證的用戶再次進入服務號時,將會自動進行OpenID的查找匹配,以實現(xiàn)類似于自動登錄的效果。

3 總結

本文介紹了基于微信服務號進行關注用戶合法身份驗證的實現(xiàn)方法及具體實現(xiàn)過程,通過身份驗證的用戶可獲得服務號的更多服務功能。在驗證過程中,加入了電子郵件激活環(huán)節(jié),以防止非用戶本人所進行的非法驗證。此方法最終實現(xiàn)的結果是將用戶個人微信號加密后所得到的OpenID值與用戶的基本信息進行綁定,由于不同微信號對應同一服務號的OpenID值具有唯一性,因此驗證后的用戶當再次進入同一服務號時,無需重復驗證或手工登錄,便可通過OpenID值的自動比對實現(xiàn)自動登錄。加入身份驗證功能的微信服務號保留了原有開放性的服務功能,即任何用戶都可進行關注,并可獲得諸如信息推送等部分服務,同時又集成了微信企業(yè)號可針對特定用戶或內(nèi)部員工提供特殊功能選擇的優(yōu)點,從而便于對用戶的分級分類管理。

[1] 方倍工作室.微信公眾平臺開發(fā)最佳實踐[M].北京:機械工業(yè)出版社,2015.

[2] 王易.微信營銷與運營策略、方法、技巧與實踐[M].北京:機械工業(yè)出版社,2013.

[3] 周解敏.微信公共平臺的營運開發(fā)——關于企業(yè)號的實踐與應用[J].現(xiàn)代經(jīng)濟信息,2015(10):153.

[4] 孫玉敏.企業(yè)微信營銷探討[J].中國市場,2015(49):43-44.

[5] 李莎,王勝.微信互動教學系統(tǒng)研究與實現(xiàn)[J].微型電腦應用, 2015,31(4):32-34.

[6] 張淼,廖浩琛,梁杰民,等.基于ARM和微信公眾平臺的智能旅館遠程監(jiān)控系統(tǒng)[J].計算機與現(xiàn)代化,2015(6):114-118.

[7] 陳剛,劉坤,劉毅,等.圖書館微信公眾平臺服務號的設計與開發(fā)[J].大學圖書情報學刊,2015,33(3):44-48.

[8] 萬園春,顧旸鋮,邱衛(wèi)東.微信交互協(xié)議和加密模式研究[J].微型電腦應用,2015,31(2):31-34.

[9] 姚舜.圖書館微信借書系統(tǒng)的設計與實現(xiàn)[J].圖書館建設,2015(2):84-87.

[10] 孫文玨,薛質.基于微信的身份證電子憑證系統(tǒng)研究[J].信息技術,2014(7):90-93.

Design and Realization of the Legal Identity Verification of WeChatService Number

Zhang Weiwei, Wang Li, Han Aiqing

(Information Center, Beijing University of Chinese Medicine, Beijing 100029, China)

WeChat service number puts more emphasis on providing interactive services for every concerned user and has good opening characteristics, but it is not convenient for the users' classification management. Enterprise number provides mainly for internal communication and mobile application services, users needs to have a member of the communication information validation before they can concern and use the enterprise number, so the enterprise number has strong pertinence. In the actual use of WeChat public number, we needs to provide not only open services for all potential users but also classification management for different users. But external services cannot be separated from internal activities. In view of the above problem, this paper introduces the legal identity verification method based on WeChat service number, the advantages of enterprise number that classification management and specific service will be used for service number. At the same time, it retains the original opening characteristics of the service number, so as to broaden the application scope of service number. The new design provide a way for the integrated application of these two kinds of public numbers.

WeChat; Service number; Enterprise number; Identity verification; OpenID

1007-757X(2016)12-0023-03

TP311

A

北京中醫(yī)藥大學2016年度教育科研課題項目(XJY16041);北京中醫(yī)藥大學2016年度黨建課題項目(微信公眾平臺下高?!拔Ⅻh課”的設計與研究)

張未未(1979-),男,山東萊蕪人,北京中醫(yī)藥大學,信息中心,講師,碩士,研究方向:數(shù)據(jù)庫應用技術、網(wǎng)站開發(fā)技術,北京,100029

王 麗(1979-),女,天津人,北京中醫(yī)藥大學,信息中心,講師,碩士,研究方向:數(shù)據(jù)庫應用技術,北京,100029

韓愛慶(1979-),男,河北欒城人,北京中醫(yī)藥大學,信息中心,講師,碩士,研究方向:數(shù)據(jù)庫應用技術,北京,100029

(2016.08.03)

猜你喜歡
數(shù)據(jù)庫微信用戶
微信
數(shù)據(jù)庫
財經(jīng)(2017年2期)2017-03-10 14:35:35
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
數(shù)據(jù)庫
財經(jīng)(2016年15期)2016-06-03 07:38:02
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
數(shù)據(jù)庫
財經(jīng)(2016年3期)2016-03-07 07:44:46
數(shù)據(jù)庫
財經(jīng)(2016年6期)2016-02-24 07:41:51
微信
微信
主站蜘蛛池模板: 精品视频在线观看你懂的一区| 亚洲精品国产日韩无码AV永久免费网 | 国产另类视频| 午夜国产大片免费观看| 91精品国产丝袜| 美女一级毛片无遮挡内谢| 国产综合精品一区二区| 2018日日摸夜夜添狠狠躁| 不卡无码网| 人人91人人澡人人妻人人爽| 无码免费的亚洲视频| 九九热这里只有国产精品| 国产成人1024精品| 国产精彩视频在线观看| 亚洲综合香蕉| 国产麻豆精品久久一二三| 99re经典视频在线| 97在线国产视频| 精品无码国产自产野外拍在线| 亚洲一区二区黄色| 欧美激情第一欧美在线| 国产成人毛片| 亚洲男人天堂网址| 成人小视频在线观看免费| 国产丝袜无码一区二区视频| 在线国产91| 中文成人在线| 欧美精品亚洲日韩a| 欧洲欧美人成免费全部视频| 日韩精品亚洲一区中文字幕| 欧美色99| 国产内射在线观看| 成年女人a毛片免费视频| 一本大道香蕉高清久久| 国产爽妇精品| 午夜毛片免费观看视频 | 国产欧美日韩视频怡春院| 日韩精品一区二区三区视频免费看| 午夜视频在线观看免费网站| 在线观看视频99| 中文无码影院| 日韩视频免费| 1769国产精品视频免费观看| 精品久久777| 国产欧美日本在线观看| 国产精品尤物铁牛tv| 亚洲精品成人片在线播放| 国产成人亚洲无吗淙合青草| 日本亚洲欧美在线| 欧美日韩福利| 精品久久高清| 99精品影院| 99视频免费观看| 亚洲国模精品一区| 久久久久久国产精品mv| 一级毛片在线直接观看| 97视频精品全国免费观看| 中文字幕无码中文字幕有码在线| 亚洲国产精品日韩专区AV| 乱色熟女综合一区二区| 91青草视频| 爱爱影院18禁免费| 精品人妻AV区| 一级毛片在线播放免费观看| 午夜精品福利影院| 国产精品一区二区无码免费看片| 国产a v无码专区亚洲av| 九色视频最新网址| 久久香蕉国产线看精品| AV无码一区二区三区四区| 久久精品视频亚洲| 成人免费视频一区| 国产精品视频免费网站| 视频一本大道香蕉久在线播放 | 伊人久综合| 精品国产成人av免费| www.精品国产| 日本高清在线看免费观看| 一区二区三区在线不卡免费| 最新亚洲人成无码网站欣赏网| 日本道中文字幕久久一区| 国产成人精品亚洲日本对白优播|