簡體   English   中英

ASP.NET Web 表單和外部身份驗證服務

[英]ASP.NET web forms and external authentication service

我有一個 ASP.NET webforms(不是 MVC!)應用程序。 我使用了內置的內部用戶身份驗證機制,這意味着使用web.config文件:

<authentication mode="Forms">
    <forms loginUrl="~/Logon.aspx" name=".ASPXFORMSAUTH" timeout="180" slidingExpiration="true">
    </forms>
</authentication>
<authorization>
    <deny users="?" />
</authorization>

Logon.aspx頁面要求用戶的登錄名和密碼,然后使用FormsAuthentication.RedirectFromLoginPage()方法進行登錄和FormsAuthentication.SignOut(); 用於注銷。

現在我需要遷移到外部身份驗證服務器。 該服務器使用類似 OAUTH 的軟件,但不完全(它是自行開發的)。 所以,我無法理解一個方案,如何將第三方身份驗證服務器實現到 Web 表單。

我應該將第三方身份驗證服務器重定向 url 放置到我的web.config嗎? 或者我應該進行兩次重定向,首先重定向到Logon.aspx ,然后再重定向到外部身份驗證鏈接? 如何制作注銷程序? 不幸的是,我只有內置 Web 表單身份驗證的經驗,甚至無法想象如何使用外部服務!

根據Grant Type ,您可以使用不同的流程: https : //oauth.net/2/grant-types/

下面列出了最常見的 OAuth 授權類型。

授權代碼客戶端憑據設備代碼刷新令牌

對於 Web 應用程序,授權代碼很可能是要走的路: https : //developer.okta.com/blog/2018/04/10/oauth-authorization-code-grant-type

應用程序打開瀏覽器將用戶發送到 OAuth 服務器 用戶看到授權提示並批准應用程序的請求 用戶通過查詢字符串中的授權碼重定向回應用程序 應用程序交換授權碼以獲得訪問令牌

基本上,您根本不會使用您的表單。 您將重定向到 oauth 服務器和從 oauth 服務器重定向。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM