【问题标题】:Getting an "Access Denied" error when executing PS code as an Administrator以管理员身份执行 PS 代码时出现“拒绝访问”错误
【发布时间】:2013-12-20 22:04:10
【问题描述】:

尝试了我在这个 SO 问题上找到的代码: PowerShell: Create Local User Account

但是当我执行它时(在域管理员帐户的上下文中运行的 ISE 中,在域管理员位于本地管理员组中的 PC 上)我收到以下错误:

使用“0”参数调用“SetInfo”的异常:“访问被拒绝。 " 在 \\servername\scripts\powershell\create-local-user.ps1:6 char:1 + $LocalAdmin.SetInfo() + ~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (:) [], MethodInvocationException + FullyQualifiedErrorId : CatchFromBaseAdapterMethodInvokeTI

在这种情况下,为什么我会使用 SetInfo() 方法收到“拒绝访问”异常?

【问题讨论】:

  • 您是否在提升的 ISE 会话中运行?
  • @mjolinor 是的,我是……
  • 可以分享create-local-user.ps1的相关部分吗?
  • mjolinor 的意思是,您是否右键单击 ISE 快捷方式并明确要求以管理员身份运行它?如果启用了 UAC,则作为管理员成员的帐户不足以让应用程序实际以管理员身份运行。您必须明确提出要求。

标签: powershell adsi


【解决方案1】:

@Bill_Stewart 发现了问题——即使我通过“runas”脚本在具有域管理员权限的帐户下运行 ISE,即: runas /user:domain-admin@company.com "powershell_ise.exe" 如果没有右键单击 ISE 图标,选择“以管理员身份运行”,然后使用(域)管理员帐户进行身份验证,它仍然无法在启用 UAC 的系统上运行(就像我的系统一样,运行 Win7 Pro)。

【讨论】:

  • 我认为不可能重定向 powershell 的输出并以管理员身份运行。
猜你喜欢
  • 2017-12-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-04
  • 2023-03-22
相关资源
最近更新 更多