IIS 8.5:应用程序池的虚拟帐户(IIS AppPool \ {应用程序池名称}不可用

时间:2014-08-07 20:58:06

标签: iis windows-server-2012 application-pool windows-server-2012-r2 iis-8.5

我在Windows 2012 R2 Core框上运行IIS 8.5。我创建了一个名为" MyNewAppPool"的新应用程序池。我有一个网站实例,名为" MyNewWebsite.com"在" MyNewAppPool"中运行应用程序池。身份用于" MyNewAppPool"是" ApplicationPoolIdentity"。

据我了解,我可以使用自动生成的本地虚拟帐户为IIS 8.5中的应用程序池分配安全权限,该帐户将命名为“#App; IIS AppPool \ {Application Pool Name}"”。

因此,在" MyNewWebsite.com"上的Windows资源管理器中目录,我应该能够为虚拟用户帐户" IIS AppPool \ MyNewAppPool"分配读/写权限。我找不到此用户帐户来分配任何权限。我正在搜索本地计算机位置而不是整个域。我可以找到" IIS AppPool \ DefaultAppPool"帐户,但是我不想在DefaultAppPPool下运行MyNewWebsite.com,我想在MyNewAppPool应用程序池下运行它。

有人可以告诉我为什么我找不到MyNewAppPool自动生成的虚拟帐户?

3 个答案:

答案 0 :(得分:14)

您永远不会在权限搜索对话框中找到合成的应用程序池标识。只需输入池标识的名称,如下所示:

通过GUI:

enter image description here

单击检查姓名按钮:

enter image description here

通过命令行:

或者,您可以使用管理员命令行/ Powershell中的ICACLS

icacls c:\wwwroot\mysite /grant "IIS AppPool\MyNewAppPool":(CI)(OI)(M)

答案 1 :(得分:2)

以上回答很有效,只记得使用服务器的名称而不是域名。我挂了一点试图弄清楚为什么它没有解决: enter image description here

答案 2 :(得分:0)

在Server 2012中,我遇到了同样的问题-不管是什么原因,它都没有创建虚拟帐户(或者它们无法使用)。 -我认为这与AppHostSvcNetMan服务未运行有关。 -最终,我采取了一种gun弹枪的方法来解决它(不建议这样做,您应该在生产环境中尽力而为,但是此PowerShell可能会使您在开发环境中陷入困境):

#Requires -Version 4
#Requires -RunAsAdministrator

#######################################

$DebugPreference = "SilentlyContinue";
$VerbosePreference = "SilentlyContinue";
$WarningPreference = "Continue";
$ErrorActionPreference = "Stop";
Set-PSDebug -Strict;
Set-StrictMode -Version 3;

#######################################

Get-WindowsOptionalFeature -Online `
    | where { $_.FeatureName -ilike "*IIS*" -and $_.State -eq "Disabled" } `
    | % { Enable-WindowsOptionalFeature -Online -FeatureName $_.FeatureName -All };

iisreset

Get-Service | ? { $_.ServiceName -eq "W3SVC" } | Start-Service;
Get-Service | ? { $_.ServiceName -eq "W3SVC" } | Set-Service -StartupType Automatic;

Get-Service | ? { $_.ServiceName -eq "WMSvc" } | Start-Service;
Get-Service | ? { $_.ServiceName -eq "WMSVC" } | Set-Service -StartupType Automatic;

Get-Service | ? { $_.ServiceName -eq "AppHostSvc" } | Start-Service;
Get-Service | ? { $_.ServiceName -eq "AppHostSvc" } | Set-Service -StartupType Automatic;

Get-Service | ? { $_.ServiceName -eq "Netman" } | Start-Service;
Get-Service | ? { $_.ServiceName -eq "Netman" } | Set-Service -StartupType Automatic;

iisreset
相关问题