簡體   English   中英

ASP.Net; 使用基本身份驗證時如何忽略或刪除表單身份驗證cookie?

[英]ASP.Net; How to ignore or remove the Forms Authentication cookie when using Basic Authentication?

我有一個Web表單asp.net網站,並且正在嘗試使用API​​。 我設法在Global.ASAX Application_AuthenticateRequest()中添加了一些代碼,以發現以API開頭的URL,從而使API請求正確地路由到Web API 2控制器。

我在Application_AuthenticateRequest()中創建了一個安全主體,並使用[Authorize]屬性來阻止對API類的未經身份驗證的訪問。

我認為雖然仍在使用cookie。 通過瀏覽器質詢對一個API請求進行身份驗證后,就不會再受到質詢了。 我必須關閉瀏覽器以強制瀏覽器刪除cookie,並且只有在瀏覽器的新實例上,我才會遇到挑戰。

這不是一個大問題,但這是我應該了解並能夠控制的事情。 我知道這只是因為我默認情況下使用Forms Auth,因為這是從Forms項目開始的,並且正在轉變為Forms + Basic。

如何獲得基本的身份驗證流程,以便(有條件地)刪除或忽略表單cookie的詳細信息?

IDE是VisualStudio 2015社區,項目是ASP.Net + WebAPI2,目標是.Net 4.6.1,在Win Server 2008 R2上的IIS 7.5下運行

最簡單的方法是通過web.config中的authentication.form.timeout。 您可以設置一個較小的值來使cookie過期。 否則,您必須實現身份驗證過濾器。 本文應該會有所幫助。

暫無
暫無

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

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