您了解通过使用HTTP而不是HTTPS,用户名和密码将以纯文本形式通过网络发送,并且可能很容易被嗅探?
如果您使用的是.NET 3.5,则可以选择使用自定义保护邮件或传输通道 UserNamePasswordValidator 。如果您使用的是.NET 3.0,则只能使用自定义的邮件安全性 UserNamePasswordValidator 。 请参见如何:使用自定义用户名和密码验证程序 欲获得更多信息。
UserNamePasswordValidator
例如,如果您使用的是.NET 3.5并且想要使用传输安全性,则可以使用以下配置。您必须记住添加一个服务行为,让WCF知道您的自定义 UserNamePasswordValidator 类。
<system.serviceModel> <bindings> <wsHttpBinding> <binding name="Binding1"> <security mode="Transport"> <transport clientCredentialType="Basic" /> </security> </binding> </wsHttpBinding> </bindings> <behaviors> <serviceCredentials> <userNameAuthentication userNamePasswordValidationMode="Custom" customUserNamePasswordValidatorType="** The fully qualified type name for your UserNamePasswordValidator **" /> </serviceCredentials> </behaviors> </system.serviceModel>