我正在尝试保护一些 WCF 服务。如果可能的话,我想使用 IIS 或 Web.config 来完成所有繁重的工作/配置。我不想在我的代码中嵌入任何东西——我想我知道这可能不可行。如果可能的话,我想实现这一点而不必求助于 AspCompatibilityMode :(
我正在使用启用了 TransportCredential 的自定义 BasicHttp 绑定(bind)。
这工作正常。任何有效的域或机器帐户似乎都会针对该服务进行验证。
我的问题是我只希望来自特定 Windows 组的用户能够访问我的服务。我想在实际文件夹上使用 ACL 来实现这一点,但我认为这是不可能的。
感谢您的帮助!
谢谢
TM值
最佳答案
在您的 web.config 中尝试以下操作:
<authentication mode="Windows" />
<identity impersonate="false" />
<authorization>
<allow users="MYDOMAIN\YourGroup" />
<deny users="*" />
</authorization>
这将在 Web 配置级别阻止它。您还可以在文件夹中放置 ACL。请注意 Windows 身份验证和 impersonate = false 意味着它是用于访问目录的用户凭据。
关于使用 IIS 和 ACL 的 WCF 授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3806591/