我有一个 WCF 服务,它运行 PS 命令以在本地计算机和远程计算机上启动 IIS 网站。命令是:
$siteName = '" + siteName + "';
$serverName = '" + serverName + "';
$block = {" + block + "};
$session = New-PSSession -ComputerName $serverName
Invoke-Command -Session $session -ScriptBlock $block -ArgumentList $siteName
要使此命令起作用,我们需要将运行 WCF 服务的应用程序池帐户添加到托管网站的计算机上的管理员组。
有没有办法在不授予应用程序池帐户管理员访问权限的情况下实现这一目标?
问候,
希尔帕
最佳答案
好吧,经过一些快速检查后,我发现了这个,
To use the Windows PowerShell cmdlets for IIS, you must be a member of the IIS Administrators or Administrators group, or you must have been delegated the appropriate authority.
这是来自 Misrosoft 网站上的 Powershell CMDLETS 管理工具,Here
所以看起来您可以成为 IIS 管理员的成员并获得相同的能力。
更新:
如果您希望其他人能够运行 Powershell,您需要执行以下操作;
Set-PSSessionConfiguration -Name Microsoft.PowerShell -showSecurityDescriptorUI
并确认您要执行该操作,这会弹出以下对话框,允许您让其他人能够在该机器上运行命令:
我从 Microsoft 找到了这个如果这能解决您的问题,请告诉我。
关于powershell - 使用 powershell 启动/停止 IIS 网站时的权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31455565/