我有一个WCF服务,我想用Windows域组保护。我不想在代码中包含PrincipalPermission属性!
我想使用应用程序池标识从Web应用程序调用服务。将检查此标识以确保它是保护WCF服务的域组的成员。所有这些都将在config中定义。这似乎是一个非常巧妙的解决方案,除了.....定义域组作为保护WCF服务似乎不可能。任何人都有任何想法我会怎么做。
我正在使用netTCPBinding(或命名管道但更喜欢netTCP)并在IIS 2008中的IIS中托管服务。
答案 0 :(得分:1)
根据我的理解,您希望在设计时使用命令性检查而不是声明性检查。
如果是这种情况,您可以使用方法体中的命令式强制替换声明,如
PrincipalPermission checkPerminssions = new PrincipalPermission(
null, @"DomainName\WindowsGroup");
checkPerminssions .Demand();
您也可以使用IPrincipal接口使用IsInRole方法。
但是,您可以在Authorization
找到更多信息我很想知道你为什么要那样做。
希望这有帮助。