【发布时间】:2011-03-14 19:07:03
【问题描述】:
我有几个非常简单的 powershell 命令。
disable-mailbox dadelgad -confirm:$false
enable-mailbox -identity 'dadelgad' -database 'NET5014DB10' -Alias 'dadelgad'
第一个命令是禁用交换邮箱,第二个命令是启用邮箱。我以组织管理组中的用户身份登录,该组拥有 Exchange 的完全管理员权限,但不是域管理员。如果我直接在 Powershell 中运行这些命令,它们可以正常工作,但在从 C# 调用时它们不起作用。
我创建了一个非常简单的 Windows 窗体应用程序,它有几个按钮可以从 C# 代码调用这些命令。以具有完全 Exchange 权限的用户身份运行应用程序,大多数命令都可以正常工作,例如 get-mailbox -identity 'dadelgad'。我可以在 Exchange 中设置标志、添加别名电子邮件并执行大多数功能,但我无法禁用或启用帐户。
我是否需要成为域管理员才能执行这些功能。这似乎是一个权限问题,但用户拥有 Exchange 的完全权限,并且可以直接在 Powershell 中执行这两个命令。
任何帮助将不胜感激?
【问题讨论】:
-
你怎么知道它不起作用?
-
我有权进行 Exchange 并进入 MMC 并检查该命令不起作用。例如,如果我在启用的邮箱上运行禁用命令,它仍然显示启用,反之亦然。
-
所以你说它静默失败(即没有错误或异常)。
标签: c# .net asp.net powershell