“权限被拒绝”创build一个新的基于域的Dfs根作为非pipe理员

我负责将我们域中的许多日常任务委派给一组没有Domain Admins成员资格的技术人员。 其中一项任务是创build新的基于域的Dfs根(Server 2008 R2 Enterprise DC)。 而这就是我卡住的地方。

呃c0de

这基本上只是试图创build一个基于域的Dfs根目录,使用一个任意的(首先在列表中)域控制器作为第一名字空间服务器:

 $DfsnRootName="test" $DCList = Get-ADDomainController -Filter * | ForEach-Object { ,$_.HostName } New-DfsnRoot -Path "\\domain.contoso.com\$DfsnRootName" -TargetPath "\\$($DCList[0])\$dfsnRootName" ` -Description "Dfs-Root für $DfsnRootName" -EnableAccessBasedEnumeration $true -Type DomainV2 $DCList | ForEach-Object { New-DfsnRootTarget -Path "\\domain.contoso.com\$DfsnRootName" ` -TargetPath "\\$_\$dfsnRootName" -State Online } 

呃er​​r0r

上面的代码抛出了一个exception,提到缺less对CIM资源的访问。 在CategoryInfo中给出的pathROOT\Microsoft\Windows\DFSN\MSFT_DFSNamespace看起来像一个WMIpath:

 New-DfsnRoot : Access to a CIM resource was not available to the client. At line:1 char:1 + New-DfsnRoot -Path "\\domain.contoso.com\$DfsnRootName" -TargetPath "\\$($DCList ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : PermissionDenied: (MSFT_DFSNamespace:ROOT\Microsoft\...FT_DFSNamespace) [New-DfsnRoot], CimException + FullyQualifiedErrorId : MI RESULT 2,New-DfsnRoot PS Z:\> $Error[0].CategoryInfo Category : PermissionDenied Activity : New-DfsnRoot Reason : CimException TargetName : MSFT_DFSNamespace TargetType : ROOT\Microsoft\Windows\DFSN\MSFT_DFSNamespace 

无奈的尝试:

我有通过整个域的Dfs控制台的“委托pipe理权限”: 委托管理权限截图

这实际上只是为添加的主体添加一个“完全控制”ACE到CN=Dfs-Configuration,CN=System AD容器。

并且,当我在使用dfsmgmt.msc“添加Dfs根”向导的服务控制pipe理器上收到错误dfsmgmt.msc ,我使用了sc sdset scmanager来操作SDDLstring,使用“KA”(密钥访问)权限,类似于缺省情况下存在的BUILTIN\Administrators ACE。

这样,我可以使用“添加Dfs根”向导来遍历所有步骤,但创build根目录本身仍然失败 – “名称空间服务器\ ADSRV0 \ Test不能添加访问被拒绝”

W00t?

Just Eough Administration(JEA)端点非常适合您的任务。 deviseJEA端点需要三个主要决定:

  1. 谁可以调用JEA端点?
  2. 呼叫者可以做什么?
  3. 谁会来电?

PS 5.1中的PowerShell端点在技术上不是JEA端点,但机制基本相同。

GET-PSSessionConfiguration
名称:microsoft.powershell PS版本:5.1
StartupScript:
RunAsUser:
权限:NT AUTHORITY \ INTERACTIVE AccessAllowed,BUILTIN \ Administrators AccessAllowed,BUILTIN \ Remote Management用户AccessAllowed

由此,权限组定义允许谁打电话。 PowerShell端点没有什么限制可以完成,因此您具有完整的语言function。 最后,RunAsUser为空 – 代码将以用户或证书的forms运行。

在此基础上,查看Register-PSSessionConfiguration的帮助和JEA概述 。

对于奖励积分,考虑使用Group Managed Service Accounts(GMSA)作为您的解决scheme的一部分,特别是作为调用者。

在你的情况下:你可以限制terminal被有限的特权用户调用。

然后定义您希望他们使用的特定cmdlet。 这些可以内置或者从您指定的自定义模块暴露出来。 保持这些特定于您的任务,以避免提高复杂参数的特权攻击或暴露过多的低级别命令,这些命令可以利用作为高级用户运行的优势。

您可以使用域pipe理员的RunAsUser或具有足够权限的其他帐户。

要创build域范围的DFS名称空间,这样做的帐户应该在名称空间服务器上具有本地pipe理员权限,即您的情况为ADSRV0 。 你最后的错误信息告诉我,这不是你的情况。