使用 ACL 保护 WCF 配置文件

WCF configuration file's protection with ACL

在关于 WCF 配置架构的 this MSDN 文章中有一条警告说:

You should protect WCF configuration sections in your application configuration files (app.config) with appropriate Access Control Lists (ACL) to prevent any potential security threats. For example, you should make sure that only the appropriate people can access or modify the security settings on application bindings, or the service model section of the configuration file for a service.

这正是我的 WCF 服务所需要的,但我找不到太多关于如何实现这种保护的信息。

有人可以向我提供有关如何使用访问控制列表 (ACL) 保护 WCF 配置文件的部分的任何示例,或者向我提供有关此主题的更多信息吗?

提前致谢。

此引用可能是关于加密 WCF 配置部分(但不是整个 system.ServiceModel 部分组)和控制密钥容器的 ACL。

MSDN + Some blog post + Somewhat related Whosebug discussion

从不同的文章来看,这种方法似乎是特定于 IIS 的,但您可以在没有 IIS 的情况下执行相同的操作。基本上,您使用 RsaProtectedConfigurationProvider 加密部分,并指定 Key name,这是在机器级密钥存储中定义的。


ACL 是默认的 Windows 安全对象权限控制系统。每个文件都是一个安全对象,app.config 也是。每个文件都有一个 ACL。当您在文件属性中打开安全选项卡时 - 它是 ACL 的 GUI。

您可以使用多种方式进行修改:

  • 默认文件属性窗口(安全选项卡)。
  • icacls 工具
  • PowerShell 命令
  • Active Directory 策略,如果您拥有并控制域