AD跨森林authentication – PAC中缺less的组

我有一个由2个森林组成的Active Directory设置:

  • 1个具有1个森林根域的多域森林,以及2个直接子域
  • 1个单域森林用于DMZ发布目的

我已经在DMZ域中创build了3个传出信任,对森林根域创build了1个传递森林信任,还创build了2个外部非传递信任(又名快捷信任)。

所有四个域中的所有DC都是全局编录服务器。

我试图在下面看到它: DMZ /内部信任关系

现在,这是问题。 当我将dmzRoot.tld的资源的访问权限授予childA域中的安全组时,它适用于属于安全组的成员childA中的用户,但不适用于childB域中的用户,即使他们是安全组在childA

比方说,我想让本地pipe理员访问dmzRoot.tld的成员服务器。 我将childA.ForestRoot.tld\dmzAdministrators添加到成员服务器上的本地内置pipe理员组。

childA.ForestRoot.tld\dmzAdministrators有以下成员:

  • childA \ dmzAdmin
  • childB \ SUPERUSER

现在,如果我以childA\dmzAdmin身份validation,则可以以本地pipe理员身份login到成员服务器,如果查看whoami /groups的输出,则会清楚地列出childA.ForestRoot.tld\dmzAdministrators组。

但是,如果我通过了childB\superUser身份validation, childB\superUser收到该帐户未被授权进行远程login的消息。 如果我检查childB\superUser帐户的whoami /groups ,则不会列出childA.ForestRoot.tld\dmzAdministrators组。

几乎看起来像childA组SID在validationchildB用户时从未包含在PAC中,即使所有的DC都是GC的。

我在dmzRoot.tld的机器上禁用了PACvalidation,我testing了它,但这没有帮助。

有关如何有效地解决这个问题的任何build议? 我如何遵循身份validation的path来确定失败的位置?

原来,快捷方式信任导致了这个问题。

当AD Kerberos身份validation跨域传输时,目标领域(即dmzRoot.tld )标识一个信任关系,通过该信任关系,发起领域的用户(例如, childA.ForestRoot.tld )是受信任的域。

由于对ForestRoot.tld的传递森林信任和对childA的外部信任(快捷方式信任)匹配,所以目标领域必须select一个,并且快捷方式信任优先于隐式信任关系(因为它是显式的)在森林信任。

由于默认情况下在传出信任上启用了SID筛选器隔离 ,因此只有在可信区域(本例中为childA域)中的SID才会被authentication,外部SID将被过滤掉。

总之有两个解决scheme:

  • 删除外部信任,并依靠森林信任。 由于森林信任是可传递的,所以整个森林内的所有SID都将保留在您的令牌中。
  • 禁用 dmzRoot.tld域的传出信任上的SID筛选隔离

希望这是有道理的