IIS AppPool 检查域组成员的权限?
Posted
技术标签:
【中文标题】IIS AppPool 检查域组成员的权限?【英文标题】:IIS AppPool Permissions to inspect Domain Group Membership? 【发布时间】:2018-08-20 17:28:02 【问题描述】:这似乎是一个荒谬的微不足道的问题,但如果我能自己找出答案,那就太糟糕了:给定一个在本地应用程序池身份下运行的 IIS 7.x 或更高版本的应用程序,该身份如何能够检查组成员身份没有固有的网络访问权限的网络?
换句话说,假设我有一个名为“SuperDuperApp”的应用程序,它在名为“SuperDuperApp”的本地 IIS AppPool 身份下运行。我将应用程序的权限定义为包括来自“SomeDomain\SuperDuperAppUsers”的用户。鉴于 IIS AppPool\SuperDuperApp 身份不会具有网络访问权限,它如何能够确定给定域用户是否是“SomeDomain\SuperDuperAppUsers”的成员?
【问题讨论】:
"我定义了应用程序的权限以包括来自...的用户" 如何?不同的方式将在后台调用不同的 Windows API,并且该特定 API 将验证调用者是否有权这样做。由于应用程序池标识是虚拟帐户,docs.microsoft.com/en-us/iis/manage/configuring-security/… 连接到外部资源(如数据库),Windows 自动使用机器帐户代替。 @LexLi 使用 IIS 管理器,我将右键单击一个站点,单击“编辑权限”,然后根据需要在该对话框中添加/删除用户和/或组。 @LexLi 该参考实际上正是我试图找到的。它直接回答了这个问题。如果您想将其发布为答案,我很乐意接受。 【参考方案1】:从评论中复制,
由于应用程序池标识是虚拟帐户,它们不用于连接外部资源(如数据库)。更多信息可以在Microsoft documentation找到。
在这些情况下,Windows 会自动使用机器帐户。因此,当您配置文件共享或数据库时,请确保机器帐户可以访问它。
【讨论】:
再次感谢。我讨厌这样的微妙之处(我想我早就应该知道了)有时会咬我。 @DavidW 好吧,IIS/Windows 有很多东西记录得很糟糕,所以每个人(包括我)都在学习它:)以上是关于IIS AppPool 检查域组成员的权限?的主要内容,如果未能解决你的问题,请参考以下文章
IIS 7:身份“IIS APPPOOL\DefaultAppPool”没有足够的权限来访问临时目录