Exchange中的Active Directory组和组之间的关系(如果有)是什么?

时间:2011-01-07 05:30:19

标签: active-directory exchange-server roles active-directory-group

任务是创建一个允许两个特定组的成员访问MVC项目中的某些控制器和操作的登录页面,我开始创建AD的角色提供程序。我设法使用表单身份验证配置它,并枚举经过身份验证的用户在AD中所属的组。

然而,事实证明,我被要求设置的组不是AD组。我看到很多团体,但不是那些有问题的团体。

该请求基于以下事实:这些组出现在Exchange的全球通讯录中,但似乎没有1:1的关系。

是否有任何关系?

1 个答案:

答案 0 :(得分:7)

Active Directory,通讯组列表和安全组中有两种类型的组。 ACL中使用安全组,而分发列表主要用于电子邮件列表和其他非ACL相关的内容。

  • UserPrincipal.GetAuthorizationGroups()仅返回安全组。
  • UserPrincipal.GetGroups()返回安全组以及通讯组列表。

请注意,与UserPrincipal.GetAuthorizationGroups()不同,UserPrincipal.GetGroups()仅返回用户所属的直接组。如果GroupA包含GroupB且GroupB包含UserX,则userX.GetGroups()仅返回GroupB但不返回GroupA。

请注意,.NET 3.5 SP1中存在漏洞。 UserPrincipal.GetGroups()可能无法正常工作,您可以查看此修补程序http://support.microsoft.com/kb/969166