作为管理员,我如何防止专门由 ASP.NET Web 应用程序生成的 .exe 被 AppLocker 阻止。
背景:我们目前正在 Windows Server 2019 上使用本地 Active Directory,并已在我们的域控制器上配置了组策略。我们的应用程序控制策略配置为阻止 .exe。我们面临的挑战是,AppLocker 还阻止 ASP.NET Web 应用程序通过 Visual Studio 和 Visual Studio 代码在本地运行,因为这些 Web 应用程序在本地运行时会生成 .exe。这阻止了开发人员在其系统上调试代码。
作为管理员,我希望该策略能够全面阻止 .exe,并且还通过允许 asp.net web 应用程序 .exe 允许开发人员在其系统上调试代码。
针对这种情况提出最佳替代解决方案
答案1
Visual Studio 可能不是 AppLocker 的良好用例。这些环境往往更加静态。
也就是说,通过创建允许使用您的证书签名的代码的 AppLocker 发布规则应该可以解决这个特定问题。
这意味着如果您没有证书,则需要获取证书,并配置 VS 在构建(生产和调试)时对代码进行签名。
然而您可能会发现许多其他发生这种情况的情况,需要针对每个环境进行测试。
答案2
您需要在 applocker 中为该 exe 添加排除项。有一个工具可以自动生成规则,可能有助于创建排除项
对于 Defender 应用程序控制: https://webapp-wdac-wizard.azurewebsites.net/
您还可以使用(代码签名)证书对 exe 进行签名,然后在 applocker 中使用该证书进行排除,这样当您将来需要允许 exe 时,可以提供更多的未来保障。
但我同意在 Visual Studio 开发环境中使用 applocker 并不理想,它更多的是为最终用户创建安全的工作站。