您好,登錄后才能下訂單哦!
創(chuàng)建一個(gè)MVC的工程,在Startup.Auth.cs文件中,我們能看到這樣的一些代碼:
這其實(shí)是微軟已經(jīng)幫我們實(shí)現(xiàn)好的三方登錄的接口,我們只需要?jiǎng)?chuàng)建相應(yīng)的開發(fā)者賬號(hào),并在其中配置好跟我們應(yīng)用程序相關(guān)的一些信息,獲取到應(yīng)用程序的Id跟密碼,填到上面相應(yīng)的接口中,即可實(shí)現(xiàn)相應(yīng)賬號(hào)的三方登錄。
微軟的開發(fā)者賬號(hào)管理地址為:https://account.live.com/developers/applications/index。微軟三方登錄開發(fā)者賬號(hào)配置的一些說(shuō)明:
1、一個(gè)應(yīng)用程序只能配一個(gè)有效的根域名,并且該根域名不能是localhost,該根域會(huì)自動(dòng)從你填寫的Redirect URLs中進(jìn)行判斷填充。
2、三方登錄用到的Redirect URL格式必須為http://www.rootDomain.com/signin-microsoft。其中HTTP協(xié)議、根域名以及端口號(hào)是可以自由配置的,后面的/signin-microsoft是固定不變的。
谷歌的開發(fā)者賬號(hào)管理地址為:https://console.developers.google.com/project。谷歌三方登錄開發(fā)者賬號(hào)配置的一些說(shuō)明:
1、要實(shí)現(xiàn)谷歌三方登錄,必須Enable Google+ API,其它需要的API可以自行添加。
2、谷歌的一個(gè)Client ID中,可以配置多個(gè)根域不同的Redirect URIs,并且可以是localhost。
3、三方登錄用到的Redirect URL格式必須為http://www.rootDomain.com/signin-google。其中HTTP協(xié)議、根域名以及端口號(hào)是可以自由配置的,后面的/signin-google是固定不變的。
首先要說(shuō)的是,微軟有兩套賬號(hào)系統(tǒng),一套稱作Microsoft Account,就是我們所謂的微軟賬號(hào),登錄地址為:https://login.live.com/,或者使用地址https://www.outlook.com/,會(huì)進(jìn)行自動(dòng)跳轉(zhuǎn)。另一套稱作Work or School Account,就是我們所謂的Office 365,登錄地址為:https://login.microsoftonline.com/,或者使用地址https://outlook.office365.com/,也會(huì)進(jìn)行自動(dòng)跳轉(zhuǎn)。
其次,微軟沒有為我們提供封裝好的Office 365三方登錄的接口,在這里我們可以使用OpenId身份驗(yàn)證來(lái)實(shí)現(xiàn)Office 365的三方登錄。具體步驟包括以下幾點(diǎn):
1、擁有一個(gè)Office365賬號(hào),如果沒有的話,可以申請(qǐng)一個(gè)30天的免費(fèi)賬號(hào),申請(qǐng)地址在:
https://portal.office.com/Signup/Signup.aspx?OfferId=8368ac6a-5797-4859-b2ec-4d32330277c9&dl=O365_BUSINESS&Country=US&culture=en-us&ali=1#0。
2、下載Office Developer Tools for Visual Studio并安裝,因?yàn)镺ffice365的用戶數(shù)據(jù)都放在Azure AD上,所以我們需要在Azure AD上注冊(cè)我們的應(yīng)用程序以獲取用戶數(shù)據(jù),這個(gè)工具可以和Visual Studio集成,方便注冊(cè)我們的應(yīng)用程序,下載地址:http://aka.ms/OfficeDevToolsForVS2013。
3、使用VS創(chuàng)建一個(gè)MVC框架的Web Application,右鍵點(diǎn)擊該工程,選擇“Properties”,“Add”,“Connected Service”
然后點(diǎn)擊“Register your app”,成功登錄你的Office365賬號(hào)后,即完成App的注冊(cè)工作。
此時(shí)點(diǎn)擊Web.config文件,即可看到我們注冊(cè)成功后獲取到的ClientID跟Password等信息。
如需要重新注冊(cè)該程序,只需要把Web.config文件中的ida:ClientID和ida:Password配置項(xiàng)刪除,然后再次Add Conencted Service時(shí),會(huì)讓你重新注冊(cè)該程序。
4、在Office 365 APIs配置頁(yè)面中,選中相應(yīng)的Service,點(diǎn)擊右面的“Permissions”,即可根據(jù)需要對(duì)該Service進(jìn)行訪問權(quán)限的設(shè)置。
訪問權(quán)限設(shè)置完成后,可以看到相關(guān)的設(shè)置大致如下:
5、點(diǎn)擊Office 365 APIs配置頁(yè)面中的App Properties,我們可以設(shè)置App的一些屬性,包括該App注冊(cè)后顯示的名稱、該App可被訪問的范圍以及認(rèn)證成功后的Redirect URIs,
該Redirect URIs只填寫我們的根域即可,同時(shí)可以注冊(cè)多個(gè)不同的URI地址。
6、安裝OpenIdConnect相關(guān)的組件包 Install-Package Microsoft.Owin.Security.OpenIdConnect。
7、編寫代碼,大致內(nèi)容如下:
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。