0

我有一个 WCF 服务,它使用 UserNamePasswordValidator 进行身份验证。我检查用户名和密码。如果没问题,那么我允许访问服务调用。

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);

}

那么我能为这种情况做些什么呢?

4

1 回答 1

1

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

于 2013-03-12T18:58:14.550 回答