什麼是最好的(或至少一個工程)選項來保護IIS託管的REST WCF服務,將由JavaScript客戶端調用?IIS WCF服務身份驗證,JavaScript客戶端
我擁有的服務是從客戶端接收GET和POST的REST服務,它通過http和https工作正常。我一直在嘗試實現身份驗證,我有一個用戶和角色等我自己的結構數據庫(所以我想避免Windows身份驗證) 我一直在嘗試不同的事情,但我可以'沒有任何工作。
我試過的最後一件事是帶有ServiceAuthorizationManager和UserName Auth(Message)的基本身份驗證(傳輸)與自定義驗證程序。
我不知道是否可以使用基本身份驗證的自定義驗證器(從System.IdentityModel.Selectors.UserNamePasswordValidator繼承),或者如果我可以在http(s)REST請求中添加用戶名驗證憑證(也許它需要成爲一個SOAP服務?)。
另外我想使用類似於自定義RoleProvider的東西來控制基於用戶組/角色的方法訪問。
謝謝。
不是一個真正的答案,但我跟着你的問題,因爲我有一個即將到來的項目是非常類似的。我已經保存在地平線上,因爲我知道我想實現令牌認證,可能值得一讀,或者可能對您的需求沒用。雖然不能傷害到分享。 http://www.developerhandbook.com/c-sharp/create-restful-api-authentication-using-web-api-jwt/ –
@TravisActon我不認爲這正是我所需要的,但無論如何要感謝。我想我終於明白了。一個主要的問題是,如果沒有Windows用戶並且我有自定義用戶,我無法通過第一次身份驗證。如果它按預期工作,我將發佈相關代碼作爲答案 – mikepa88
強烈建議您在使用基本身份驗證時強制使用HTTPS,否則客戶端將以純文本方式通過網絡發送您的用戶憑據。 –