WCF服务授权到没有成员资格提供者的服务功能

本文关键字:提供者 服务功能 成员 服务 授权 WCF | 更新日期: 2023-09-27 18:03:44

我有一个使用UserNamePasswordValidator进行身份验证的WCF服务。我检查了用户名和密码。如果可以,那么我允许访问服务呼叫。

class CustomUserNameValidator : UserNamePasswordValidator
{
    WebServiceDM entity = new WebServiceDM();
    public override void Validate(string userName, string password)
    {
        string encrypted = CryptographyManager.EncryptSymmetric(password);

        Kullanici _user = entity
                          .Kullanici
                          .FirstOrDefault(h => h.Username == userName && h.Password == encrypted);

        if (_user == null || _user.Username == "")
        {
            //Invalid User ...
            throw new Exception("Username and password failed");
        }

    }
}

现在我需要一个基于函数的授权,如PrincipalPermission。但在本例中,我没有任何会员提供程序。

[ServiceContract]
public interface IEglenceServices
{
    [OperationContract]
    List<EGLENCEBEYAN> GetEglenceBeyan(int yil);
}

在这种情况下我能做些什么呢?

WCF服务授权到没有成员资格提供者的服务功能

要连接自定义主体权限,可以使用自定义IAuthorizationPolicy实现。示例请参见http://leastprivilege.com/2007/08/08/custom-principals-and-wcf/