率这个职位

我为一家大型公司工作,该公司在Oracle统一目录(LDAP)中有一个大型用户帐户存储。他们希望使用这些现有帐户并将其同步到Azure应用程序服务的Azure Active Directory(如未来的Office 365服务)。
微软状态在这里该Azure Active Directory Connect(AAD Connect)将,在“未来版本”中,提供本地LDAP支持(“连接到单一本地LDAP目录”),因此,从时间上讲,我处于一个棘手的位置——我是否指导客户尝试使用当前版本?(在编写时是:v1.1.649.0)还是等待这个“未来版本”?.
这个博客的使用寿命可能不太长——事实上,AAD Connect的新版本可能在任何时候通过本地LDAP树支持发布。因此,在提供设计或实现之前,一定要研究AAD连接。
我的客户对“回写”服务没有任何要求(其中数据从Azure Active Directory回写到本地目录用户存储),因此此博客文章只涵盖从本地LDAP直接导出到Azure Active Directory。
我联系了微软,他们说“今天”支持它提供从AAD连接到LDAP的连接,所以我建立了一个概念验证(PoC)实验室来确定如何让它在当前版本的aad connect中工作。
好消息首先,它起作用了!坏消息,它没有很好的文档记录,所以我创建这个博客只是为了概述我在使它为我的POC实验室工作方面所学到的知识。
我没有权限访问我的POC实验室中的Oracle统一目录,所以我在Active Directory轻型目录服务(AD LDS)中进行了替换,所以我的配置反映了AD LDS的使用。

提示1–出于安装目的,您仍然需要一个Active Directory域服务(AD DS)

在AAD连接安装向导(特别是“连接目录”页面)期间,它期望连接到AD DS林以进行安装。在这个版本的aad connect中,“目录类型”列表框只显示“Active Directory”-我希望在“未来版本”可用时包含更多选项。
我创建了一个单域控制器(林根域),并使用我的aad connect windows服务器的本地主机文件指向林根域fqdn,例如。“forestad.internal”指向该域控制器的IP地址。
我不需要“加入”我的aad连接Windows服务器到该域来完成安装,如果微软发布了一个不需要AD DS的AAD连接版本,这将使它更容易退役(如果它投入生产)。
屏幕截图2017年10月25日上午10:39.34

提示2–您的LDAP连接器服务帐户需要是LDAP树的一部分

在安装了AAD Connect之后,主要使用默认选项,然后我进入“同步引擎”要安装可用的“通用LDAP”连接器,请单击“连接器”选项卡,然后单击右侧“操作”标题下的“创建”:
屏幕截图2017-11-01上午11:50.41
对于“用户名”字段,我创建并使用了一个作为LDAP树本身的一部分的帐户(在本例中:“cn=fimldsadmin,dc=domain,dc=internal”),而不是由本地Windows Server用户存储区中的AD LDS创建的安装帐户。
如果我尝试使用本地Windows服务器IE。'server\username'用户,它只会给我一般的连接错误,而不是绑定到LDAP树,即使该用户拥有对AD LDS树的完全管理权限。我放弃了对此问题的故障排除——所以我只好在LDAP树本身中使用一个服务帐户。
屏幕截图2017-11-03上午9:50.55

提示3–复制(和修改)现有的AD入站规则

创建自定义连接器时,该连接器的数据映射规则取自“同步化规则编辑器”程序,不在同步引擎中。对于自定义连接器,目前基本上有两种选择:从另一个连接器复制现有规则,或者为该连接器创建一个全新的(空白)规则集(按对象类型,例如“用户”。
我选择了第一个选项–我从AD DS连接器复制了三个现有的“入站”规则:

  • 从广告进入-用户加入
  • In From AD–用户帐户已启用
  • 从广告中输入-用户公用

如果您“编辑”每个现有的AD DS规则,您可以选择创建该规则集的副本并禁用原始规则集。选择“是”将创建该规则的副本,然后您可以修改“连接的系统”以使用LDAP连接器而不是AD DS连接器:
屏幕截图2017-11-03,上午10.10.51
我还将每个规则的优先级编号从“201”修改为“203”,以便在同步引擎中最后应用这些新规则。
最后,我为LDAP连接器配置了这三个新的“克隆”规则:
屏幕截图2017-11-03上午10.04.27
我发现我必须编辑或删除任何需要以下内容的规则:

  • 查找“samaccountname”的任何规则,我修改了规则的文本以查找“uid”(这是与自定义LDAP中的帐户名字段最相似的架构属性名)
  • 我从“in from ad–user join”克隆规则的转换部分删除了以下规则。我发现它阻止我的任何LDAP帐户访问Azure广告:

屏幕截图2017-11-03上午10.32.39

  • 在“in from ad–user accountenabled”规则中,我修改了现有的作用域筛选器以不查看“useraccountcontrol”位,而是使用了ad lds属性名:msds useraccountdisabled=false'值:

屏幕截图2017-11-03上午10.35.36
显然有很多,很多为LDAP树配置规则的方法,但我想我将与AD LDS分享我的做法。我之所以“克隆”现有规则,是因为我希望主要保护Azure AD的数据完整性。有很多,许多与AD DS规则集一起提供的Azure AD的默认数据映射规则——许多规则使用“trim”和“left”函数来确保数据以正确的格式到达Azure AD。
很有意思的是,微软是如何以一种更“向导”驱动的方法来处理这些规则集的,特别是因为LDAP树可以用独特的属性名和数据方法进行高度定制。
在关闭“同步规则编辑器”之前,不要忘记“重新启用”以前克隆的每个(如AD DS)连接器规则,因为同步规则编辑器假定您没有修改它们使用的连接器。选择克隆的原始规则,取消选中“禁用”框。

提示4–创建“delta”和“full”运行配置文件

最后,您可能想知道:AAD连接器调度程序(完全基于PowerShell,似乎没有自定义命令)是如何获取新的LDAP连接器的?
好,只需在同步引擎中用文本“delta”和“full”命名“运行配置文件”。在引擎中为LDAP连接器选择“配置运行配置文件”:
屏幕截图2017-11-03,10.16.29 am.png
然后,我创建了与为AD DS和Azure AD创建的命名约定相同的“运行配置文件”:
屏幕截图2017-11-03,上午10.17.58
下次我运行“initial”(执行“full import”和“full sync.”作业)或“delta”广告计划程序作业(我以前博客的关于广告调度程序,但是你可以在上面找到官方的微软文档在这里)我的新LDAP连接器运行配置文件与AD DS和AAD连接器运行配置文件一起自动执行:
屏幕截图2017-11-03上午10.19.57
在我结束之前,我的同事大卫·明尼里发现Idampundit的博客帖子关于当前升级到aad connect v1.1.649.0版本的错误(如果您已经有LDAP连接器)。简而言之,只需打开现有的LDAP连接器并逐步浏览每个页面,然后重新保存以清除问题。
**编辑:有人问我如何使用这些帐户进行身份验证,我正在利用一个现有的SecureAuth服务,它使用WS-Federation协议与Azure AD通信。所以“联合”基本上是——我不会从这个LDAP中提取密码,也不会执行任何类型的密码哈希同步。不过,谢谢你的提问!
希望这有帮助,祝你好运!

类别:
Azure基础设施天蓝平台身份和访问管理

留下答复

留下答复

订阅
最新 最老的 多数投票
通知
建安林
客人

真棒又勇敢的动作

乔希
客人
乔希

你好
我正在尝试将数据从ad导出到openldap,但它不起作用。
我查看了LDAP日志并检查了连接是否成功,但没有添加任何内容。
我认为不导出的原因是同步规则。
如果你知道如何配置,请告诉我。
这个问题困扰了我三个星期…

阿尔法
客人
阿尔法

这篇文章太棒了!
请告诉我如何将用户从Active Directory导出到LDAP。
没有关于它的文章

萨兹利·沙哈尔
客人

我正在尝试按照您的指导原则,通过AdConnect通用LDAP连接器设置OpenLDAP–Azure AD同步,但到目前为止,只能执行“完全导入”,甚至没有过“完全同步”(所有条目被跳过为“隔离开关”)。我尝试过修改同步规则和转换,但到目前为止还没有成功地同步任何条目。会感激任何指点。谢谢。

埃里克朗
客人
埃里克朗

是否仍然是您建议使用的方法有任何更新?我还没有找到任何证据证明Azure AD Connect将直接连接到LDAP。

跟着我们!

克劳德解决方案博客-关注我们!