[英]Integrate google analytics api in ASP.NET mvc5 project
[英]Authorising users in an ASP.NET (MVC5) web api project
好的,所以我在嘗試在我的 ASP.NET MVC5(Web API 2)項目中獲得身份驗證過程時有點掙扎。 首先,這里有一些要求:
<Authorize>
屬性來幫助保護其他端點(請注意,我無法更改上述內容的原因有很多)
我曾嘗試使用 Owin (OAuth) 執行此操作,但在將其與要求進行比較時發現以下問題:
如果這是我想要的最佳方式,我很高興離開 OAuth。 我更喜歡使用 Microsoft 構建的 nuget 包(即沒有第三方解決方案),或者我很樂意部分推出我自己的解決方案(我想盡可能多地利用內置或 Microsoft 構建的代碼,包括身份和聲明所以我可以最大限度地減少測試工作)。
我已經閱讀了許多關於此的 StackOverflow 問題並在互聯網上搜索了大量內容,但盡管存在上述問題,但大多數文章仍堅持使用 OAuth,或者它們依賴於 EntityFramework。 我當前的解決方案使用這里的代碼(幾乎復制/粘貼了 ApplicationOAuthProvider.GrantResourceOwnerCredentials() 中的一些自定義代碼): https : //www.codeproject.com/Articles/1187872/Token-Based-Authentication-for-Web- API-where-Legac
謝謝您的幫助!
我做了一些更廣泛的研究,看起來 OAuth 不適用於我的特定情況。 盡管這看起來是一種不錯的身份驗證方法,但我確實需要通過數據庫使令牌無效,並且我需要 API 始終發送/接收 XML(這些在使用 OAuth 時顯然不適用)。
為了解決這些問題,我推出了自己的基於令牌的解決方案,在客戶端創建一個散列令牌,所以我從不通過網絡發送密碼(這更好一點),因為令牌是在客戶端生成的(請注意,我正在控制客戶端發生的事情 - 這些都是內部客戶端,我正在編寫這些客戶端將使用的庫)。 這涉及我創建自己的過濾器,它繼承了System.Web.Http.AuthorizeAttribute
。
如果有人偶然發現了這個問題並提供了一個非常好的答案,我很樂意將他們的答案標記為已接受。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.