1
我有一個小的WCF服務在內部網,我需要在其中實現身份驗證。該服務通過http與不同的Java客戶端進行通信(使用basicHttpBinding)。我試着配置,像這樣httpBasicBinding與身份驗證,沒有消息或傳輸安全
<basicHttpBinding>
<binding>
<security mode="None">
<message clientCredentialType="UserName"/>
</security>
</binding>
</basicHttpBinding>
綁定和增值服務行爲
<behavior>
<serviceMetadata httpGetEnabled="true"/>
<serviceCredentials>
<userNameAuthentication userNamePasswordValidationMode="Custom" customUserNamePasswordValidatorType="LocalTasks.Services.Validators.IntegrationUserNameValidator,LocalTasks.Services"/>
</serviceCredentials>
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
但是調用這個服務不打我的自定義UserNamePassword驗證。 我也嘗試過相同的變體,但安全模式設置爲消息並添加了證書。在這種情況下,驗證器工作正常。
如何配置服務以通過basicHttpBinding驗證用戶身份,而沒有任何消息或傳輸安全性?
因爲它需要修改Java客戶端的遺留代碼。因此,沒有任何方法可以將證書發送到服務器,而無需通過打開的http通道進行安全保護 – Anton
如果你仍然無法加密,那麼你可以使用安全模式'TransportCredentialOnly'。看我的編輯。 – cvlad
我明白了。任何額外的 需要? –
Anton