【发布时间】:2020-05-22 13:19:50
【问题描述】:
有没有办法使用托管服务帐户 (msDS-GroupManagedServiceAccount) 通过 Powershell 连接到 Exchange?我们的场景如下: 我们有一个用 c# 编写的服务组件,它通过远程 Powershell 连接到 Exchange。服务组件作为托管服务帐户运行。
New-PSSession的调用如下:
新PSSession -配置名称 Microsoft.Exchange -ConnectionUri "http://server/powershell" -身份验证 Kerberos -允许重定向 -ErrorAction 停止如您所见,未指定凭据,因此发送到 Exchange 服务器的凭据是当前用户的凭据(在查看返回的错误消息时似乎有效)。 结果如下错误:
处理来自远程服务器的数据失败,并显示以下错误消息: [ClientAccessServer=...,BackEndServer=...,RequestId=...,TimeStamp=...] [AuthZRequestId=6c727005-565b-4019-855f-657ae6b86ee7][FailureCategory=AuthZ-CmdletAccessDeniedException] 无法执行该操作,因为找不到“域\帐户 $”。domain\account$ 显示托管服务帐户的正确登录名。
exchangeserver 的事件日志还指出:
来源:“MSExchange RBAC”,事件 ID:16): (进程 w3wp.exe,PID 8980) “RBAC 授权返回用户域\帐户$ (SID=S-...) 的访问被拒绝。 原因:在域控制器 XYZ 上找不到用户。我目前怀疑,RBAC“组件”在 Active Directory 中显式查找“用户”类型的对象,但不查找 msDS-GroupManagedServiceAccount 对象,所以我想知道这是否受支持。
【问题讨论】:
-
您找到解决方案了吗?我也有类似的情况。
-
很遗憾没有。我们仍然使用“常规”用户帐户。
标签: powershell exchange-server