繁体   English   中英

将IIS AppPool \ ASP.NET v4.0添加到本地Windows组

[英]Add IIS AppPool\ASP.NET v4.0 to local windows group

我正在尝试使用PowerShell脚本将用户IIS AppPool \\ ASP.NET v4.0添加性能监视器用户组,以便能够使用ASP.NET应用程序中的自定义性能计数器。 但是,我无法弄清楚如何使用ADSI解决自动创建的ASP.NET用户。

这对我有用:

 $computer = $env:COMPUTERNAME;

 $user = [ADSI]"WinNT://$computer/Administrator,user" 
 $groupToAddTo = "TestGroup"

 $parent = [ADSI]"WinNT://$computer/$groupToAddTo,group" 
 $parent.Add($user.Path)

但是,我无法弄清楚如何找到ASP.NET v4.0用户:

 $computer = $env:COMPUTERNAME;
 # $user = [ADSI]"WinNT://$computer/IIS AppPool/ASP.NET v4.0,user" # <-- Doesn't work

 $groupToAddTo = "TestGroup"

 $parent = [ADSI]"WinNT://$computer/$groupToAddTo,group" 
 $parent.Add($user.Path)

有关如何使用ADSI解决该用户的任何线索? 或者,使用Powershell或其他命令行工具实现我想要的任何其他出色方法? GUI工作正常,但自动化是关键。

以下PowerShell脚本将应用程序池“ASP.NET v4.0”添加到“性能监视器用户”组

$group = [ADSI]"WinNT://$Env:ComputerName/Performance Monitor Users,group"
$ntAccount = New-Object System.Security.Principal.NTAccount("IIS APPPOOL\ASP.NET v4.0")
$strSID = $ntAccount.Translate([System.Security.Principal.SecurityIdentifier])
$user = [ADSI]"WinNT://$strSID"
$group.Add($user.Path)

net localgroup命令不同,此脚本适用于长度超过20个字符的应用程序池名称。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM