我在我的 WCF 服务中覆盖 UserNamePasswordValidator,我想针对 SQL 数据库验证用户名和密码。无论如何将连接字符串传递给 PasswordValidator 类?我还应该提到我的课程与主要的 WCF 服务是分开的。
public class MyCustomUserNameValidator : UserNamePasswordValidator
{
public override void Validate(string userName, string password)
{
//TODO: how to pass in connection string??
connectionString = "Data Source=MyDataSource;Initial Catalog=MyCatalog;User ID=MyUserName;Password=MyPassword";
// connect to database and validate crendentials...
if (!valid)
{
throw new SecurityTokenException("Access Denied.");
}
}
}
配置部分:
<userNameAuthentication userNamePasswordValidationMode="Custom" customUserNamePasswordValidatorType="MyCompany.Services.Validation.MyCustomUserNameValidator, MyCompany.Services.Validation"/>
谢谢。