溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

ASP.NET MVC中三方登錄: 微軟、谷歌、Office365

發(fā)布時(shí)間:2020-08-06 02:30:08 來(lái)源:網(wǎng)絡(luò) 閱讀:582 作者:powertoolsteam 欄目:編程語(yǔ)言

創(chuàng)建一個(gè)MVC的工程,在Startup.Auth.cs文件中,我們能看到這樣的一些代碼:

ASP.NET MVC中三方登錄: 微軟、谷歌、Office365

這其實(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)的三方登錄。

 

一、微軟賬號(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是固定不變的。

二、谷歌賬號(hào)三方登錄介紹

谷歌的開發(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是固定不變的。

三、Office 365三方登錄介紹

首先要說(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”

ASP.NET MVC中三方登錄: 微軟、谷歌、Office365

然后點(diǎn)擊“Register your app”,成功登錄你的Office365賬號(hào)后,即完成App的注冊(cè)工作。

ASP.NET MVC中三方登錄: 微軟、谷歌、Office365

此時(shí)點(diǎn)擊Web.config文件,即可看到我們注冊(cè)成功后獲取到的ClientID跟Password等信息。

ASP.NET MVC中三方登錄: 微軟、谷歌、Office365

如需要重新注冊(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è)置。

ASP.NET MVC中三方登錄: 微軟、谷歌、Office365

訪問權(quán)限設(shè)置完成后,可以看到相關(guān)的設(shè)置大致如下:

ASP.NET MVC中三方登錄: 微軟、谷歌、Office365

5、點(diǎn)擊Office 365 APIs配置頁(yè)面中的App Properties,我們可以設(shè)置App的一些屬性,包括該App注冊(cè)后顯示的名稱、該App可被訪問的范圍以及認(rèn)證成功后的Redirect URIs,

該Redirect URIs只填寫我們的根域即可,同時(shí)可以注冊(cè)多個(gè)不同的URI地址。

ASP.NET MVC中三方登錄: 微軟、谷歌、Office365

6、安裝OpenIdConnect相關(guān)的組件包 Install-Package Microsoft.Owin.Security.OpenIdConnect。

7、編寫代碼,大致內(nèi)容如下:

ASP.NET MVC中三方登錄: 微軟、谷歌、Office365


向AI問一下細(xì)節(jié)

免責(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)容。

AI