我希望爲Web服務提供安全性。我最初使用BasicHttpBinding與傳輸安全(SSL)和消息安全性(傳遞用戶名和密碼爲自定義用戶名密碼驗證)...WCF安全 - 使用用戶名密碼的傳輸級別安全性
但Web服務的消費者表示,他們不能添加標頭的SOAP消息安全細節..並表示他們希望通過該服務的溝通渠道。
是否可以使用WCF進行傳輸安全性自定義用戶驗證?我無法得到它的工作:(
有什麼建議?
感謝 尼爾
我希望爲Web服務提供安全性。我最初使用BasicHttpBinding與傳輸安全(SSL)和消息安全性(傳遞用戶名和密碼爲自定義用戶名密碼驗證)...WCF安全 - 使用用戶名密碼的傳輸級別安全性
但Web服務的消費者表示,他們不能添加標頭的SOAP消息安全細節..並表示他們希望通過該服務的溝通渠道。
是否可以使用WCF進行傳輸安全性自定義用戶驗證?我無法得到它的工作:(
有什麼建議?
感謝 尼爾
我想你的消費者所要求的基本身份驗證,也就是說,在認證令牌的HTTP授權通過頭,而不是在SOAP安全頭的憑據的保密將僅由傳輸(HTTPS)來提供
此的結合配置是:。
<basicHttpBinding>
<binding name="HTTPSwithBasicAuthentication">
<security mode="Transport">
<transport clientCredentialType="Basic" />
</security>
</binding>
</basicHttpBinding>
在客戶端,你設置憑據這樣
serviceClient.ClientCredentials.UserName.UserName = "username";
serviceClient.ClientCredentials.UserName.Password = "password";
假設您的服務託管在IIS,請記住要啓用基本身份驗證在IIS配置。
要執行用戶的實際授權,您可以實施自定義ServiceAuthorizationManager
以包含您的授權邏輯。有很多關於如何在網絡上完成最後一部分的例子。
或者,您可以在標準的ASP.Net成員資格提供程序中進行配置,如果這適合您的應用程序。
http://msdn.microsoft.com/en-us/library/bb398990(VS.100).aspx