- style
配置 ADSync 实用工具
本文包含以下主题:
本文说明如何配置 ADSync 实用工具。
Serviceaide Cloud Service Management 中的配置
配置 ServiceAide Cloud Service Management 服务器如何与 ADSync 实用工具交互。
配置承租人信息和同步属性
sync.properties 文件包含承租人的 ServiceAide Cloud Service Management 信息。 ADSync 实用工具使用承租人或子组织管理员登录凭据进行配置。
您仅可以使用该实用工具同步用户数据。
有关 sync.properties 文件的详细信息,请参阅 sync.properties 文件。
配置用户删除的处理方式
要配置 ServiceAide Cloud Service Management 如何处理用户数据删除,请导航至“管理”、“工具”、“配置参数”。 配置以下参数:
如果标记为要删除的记录数大于此值,将不会删除任何记录。 剩余数据的同步将不受影响。
在客户端配置 ADSync 实用工具 (LDAP)
ADSync 实用工具依赖于一组配置文件。 这些文件随 ADSync 实用工具提供。 这些文件位于 ADSync Utility 文件夹中。 ServiceAide 支持团队无权访问这些文件。 在本步骤中,您将使用以下环境信息配置这些文件,然后对实用工具运行测试:
- LDAP 服务器的连接信息
- ServiceAide Cloud Service Management 的连接信息
- LDAP 服务器中的值如何映射到 ServiceAide Cloud Service Management 配置文件中的字段
所有这些文件都位于 ADSync Utility 文件夹中。 当您配置这些文件时,请确保它们在此文件夹中的位置保持不变。 所有 ADSync 文件必须仍在解压缩时的相同相对位置中。 您可以移动整个 ADSync Utility 文件夹,但所有文件必须仍在一起。
在开始同步之前,确保已在 ServiceAide Cloud Service Management 中定义了组织结构。
ADSync 实用工具配置文件。
此主题说明随 ADSync 实用工具一起提供的配置文件。
searchBase.list
此文件包含所有组织单位 (OU) 的列表。 该列表用于提取发送到 ServiceAide Cloud Service Management 的用户数据。 每行都包括完全限定的 OU,如:
- OU=Users,DC=Bedford,DC=Nimsoft Service Desk,DC=InteQ,DC=com
- OU=Users,DC=Boston,DC=Nimsoft Service Desk,DC=InteQ,DC=com
- OU=Users,DC=Seattle,DC=Nimsoft Service Desk,DC=InteQ,DC=com
如果 searchBase.list 文件为空,实用工具从 LDAP 服务器的所有记录提取数据。
不要在 searchBase.list 文件中留下不必要的换行符或空格。
attribute_map.list
该文件包含为每个用户帐户收集的所有用户属性的列表。 您可以编辑此文件以便为 Cloud Service Management 字段应用适当的 Active Directory (AD) 属性名。
可以通过以下公式来映射值:
Cloud Service Management 属性=Active Directory 属性
您可用以下任一格式进行映射:
- 您可以将相应的 Cloud Service Management 值映射到 AD 值。 仅针对 Cloud Service Management 属性输入您 AD 属性名称。
例如:first_name=givenName
您可以通过以下格式传递 ServiceAide Cloud Service Management 属性中的多个 Active Directory 值:${Value1} ${Value2}。
例如:name=${last_name}, ${first_name}
值之间的空格或 ${} 外的任何其他项目将被按静态值对待,原样包含在属性定义中。
您可以传递静态值(文本),作为 Cloud Service Management 属性的映射。 如果右侧的整个值为静态值,则将其放在双引号中。
例如:title="this is an example of a static string"
- 您还可以为 Cloud Service Management 属性传递 AD 属性和静态值的组合。 请严格遵循以下规则:
当您使用 AD 属性和静态值的组合时,确保将 AD 属性包含在 ${} 内。
例如:job_title=Sr. ${title}
此处的静态值为"Sr.",而 AD 值为职位。
- 在传递 AD 属性和静态值的组合时,请勿使用双引号来表示静态值。 在这种情况下,${} 以外的任何内容都将默认为静态字符串。 如果您使用了双引号,那么其将成为静态值的一部分。
例如:job_title=“Sr.” ${title}
在这里,"Sr." 包括引号,都将作为静态字符串。
- 在传递 AD 属性和静态值的组合时,请勿将整个右侧值置于双引号内。 在这种情况下,ADSync 会忽略 AD 值,并将其视为静态文本字符串的一部分。
例如:name="this is an example of a static value which includes an AD attribute ${department}"
在此示例中,${department} 不被视为变量,因为它包含在引号以内。 相反,${department} 也被视为文本。
如果用户帐户没有任何与您指定的 AD 属性相对应的值,则只会为该帐户传递静态值。 此规则不适用于 org_name 属性。 有关 org_name 的更多信息,请参阅“配置 org_name 属性”。
请在属性列表中验证各个属性的说明,以寻找例外项。
重要参考:
- 如果在运行 ADSync 实用工具后更改某个属性的映射,并再次运行实用工具,那么新值将覆盖 ServiceAide Cloud Service Management 中的现有值。 同理,如果您删除映射的值,当您再次运行实用工具时,该值也将从 ServiceAide Cloud Service Management 中删除。
- time_zone 属性不再可用。 当前版本的应用程序将根据已登录用户的系统设置自动更新其时区。 因此,不再需要手动设置。
- 您无法将 AD 属性映射到 ServiceAide Cloud Service Management 中两个以上的属性。 在第二次映射属性时,请确保您以 ${attribute} 格式输入。
例如:请考虑如何将 LDAP 邮件属性映射到 ServiceAide Cloud Service Management 中的 e_mail 和 user_login 属性。
按如下方式定义属性:
e_mail=mail
user_login=${mail}
Microsoft Active Directory 属性列表
ServiceAide Cloud Service Management 字段名称 | Active Directory Service 字段名称 | 评论 |
---|---|---|
first_name | givenName |
|
last_name | sn |
|
job_title | title |
|
e_mail |
| |
user_login | sAMAccountName |
|
manager | manager | 请遵循以下规则:
注意:您不得以 ${manager} 格式引用 AD 中的 manager 属性。 因此,您无法在定义属性时将其与其他 AD 属性或静态值加以组合。 |
primary_support_group |
| 该属性中提供的值,其拼写必须与 ServiceAide Cloud Service Management 中的相应值完全匹配。 例如,“administrator”是 ServiceAide Cloud Service Management 中的主要支持组。 如果在映射中将组错误地拼写为“aministrator”,则该用户不会映射到所需的组中。 该值不区分大小写。 对于以下情况,您在这里指定的值将被忽略:
您只能为用户输入一个 primary_support_group。 |
support_groups |
| 该属性中提供的值,其拼写必须与 ServiceAide Cloud Service Management 中的相应值完全匹配。 该值不区分大小写。 对于以下情况,您在这里指定的值将被忽略:
您可以为用户输入多个 support_groups(支持组),并使用分号“;”隔开。 如果存在多个支持组时,您可以将它们作为静态字符串或 Active Directory 属性来传递。 当传递多个值时,请考虑以下规则:
另请参阅 override_existing_support_group_values 属性。 |
override_existing_support_group_values | “False” | 此属性为 support_groups 属性的补充。 使用此属性,您可以指定传递给 support_groups 属性的值是覆盖现有值,还是附加到该值。 此属性可以具有以下两个值之一:
该属性的所有无效值均会视为“False”。 该属性仅影响 support_groups 属性。 |
license_type | "1" | 您可以直接提供某个值作为静态字符串,也可以从 Active Directory 传递对应的属性。 要将某个值作为静态字符串传递,请将其放在双引号中。 有效值为 0、1、2 和 4,其中:
默认值为 1。 注意:当许可类型为 1 时,primary_support_group 自动设为“自助服务”,而无论当时提供的实际值如何。 定义 primary_support_group 属性时所提供的值将被忽略。 如果不映射此属性或输入无效的值,则许可类型默认设为“自助服务”(1)。 |
语言 | "en_US" | 您可以直接提供某个值作为静态字符串,也可以从 Active Directory 传递对应的属性。 要将某个值作为静态字符串传递,请将其放在双引号中。 有关所有有效语言代码的列表,请参阅“有效的区域设置和时区”。 默认语言为 “en-US”。 此属性不区分大小写。 |
org_name |
| 注意:org_name 的映射由严格的规则管理。 有关该属性的更多信息,请参阅“配置 org_name 属性”。 |
lvl1_name | company | 注意:请始终使用 org_name 属性,而非 lvl1_name、lvl2_name 和 lvl3_name。 如果您使用 org_name,便无需定义 lvl1_name、lvl2_name 和 lvl3_name。 提供这些级别的目的是为了向后兼容该应用程序的早期版本。 |
lvl2_name | physicalDeliveryOfficeName | |
lvl3_name | department | |
phone1 | telephoneNumber |
|
phone2 | 移动版 |
|
对于 Microsoft Active Directory,不要更改映射文件中的属性名。 对于 Novell e-Directory,仅列出了建议的属性名。 不过,您可以使用任何方便的属性名。
列出 Novell eDirectory 的属性:
- #Nimsoft Service Desk 字段 = 目录服务字段名称
- first_name=givenName
- last_name=sn
- job_title=title
- e_mail=mail
- user_login=uid
- manager=manager
- org_name=${company} >> ${physicalDeliveryOfficeName} >> ${ou}
有关 org_name 的更多信息,请参阅“配置 org_name 属性”。 - lvl1_name=company
- lvl2_name=physicalDeliveryOfficeName
- lvl3_name=ou
注意:请始终使用 org_name 属性,而非 lvl1_name、lvl2_name 和 lvl3_name。 如果您使用 org_name,便无需定义 lvl1_name、lvl2_name 和 lvl3_name。 提供这些级别的目的是为了向后兼容该应用程序的早期版本。 - phone1=telephoneNumber
- phone2=mobile
对于 Microsoft Active Directory,不要更改映射文件中的属性名。 对于 Novell e-Directory,仅列出了建议的属性名。 不过,您可以使用任何方便的属性名。
logger.properties
该文件允许您为 Active Directory 同步过程配置日志记录级别和输出文件。 为日志记录目的而要配置的名称-值对如下:
参数名称 | 参数说明 | 示例值 |
sync_log.pattern | 日志文件的位置。 此文件的大小限制是 50 MB。 如果数据超过 50 MB,将会生成多个日志文件。 最新的日志在 sync_data.log.0 中。 默认情况下,该实用工具维护之前四个日志。 旧文件会分别被命名为 sync_data.log.1、sync_data.log.2、sync_data.log.3 和 sync_data.log.4。 可以修改 sync_log.count 属性,以修改以前日志文件的数目。 | ../sync/logs/sync_data.log |
sync_log.limit | 日志文件的文件大小限制(字节)。 | 5000000 |
sync_log.count | 为日志循环而保留的文件数。 | 5 |
sync_log.level | 所需的日志记录级别。 可能值为:
| INFO |
sync_err.pattern | 同步错误文件的位置。 SEVERE 级别下的所有语句都记录在该文件中。 此文件的大小限制是 50 MB。 如果数据超过 50 MB,将会生成多个日志文件。 此文件仅包含客户端的错误。 最新的日志在 sync_err.log.0 中。 默认情况下,该实用工具维护之前四个日志。 过去的文件被分别命名为 sync_err.log.1、sync_err.log.2、sync_err.log.3 和 sync_err.log.4。 您可以修改 sync_err.count 属性以修改以前备份数。 | ../sync/logs/sync_err.log |
sync_err.limit | 错误日志文件的文件大小限制(字节)。 | 5000000 |
sync_err.count | 为错误日志循环而保留的文件数。 | 5 |
sync_err.level | 所需的错误日志记录级别。 可能值为:
| SEVERE |
sync.properties
该文件为数据同步提供了主要配置中心。 可用于配置的名称-值对如下:
参数名称 | 参数说明 | 示例值 |
ldap.gc | 该参数指定全局目录服务器和端口。 | |
ldap.dc | 该参数指定域控制器服务器和端口,通常与全局目录服务器相同。 | |
ldap.bind.user | 此参数指定该实用工具用于连接目录服务器的服务账号的可分辨名称。 | |
ldap.bind.isPwdEncrypted | 如果不想将 LDAP 密码存储为纯文本,ADSync 实用工具则提供了使用加密密码的功能。 使用加密密码时,该属性将设为“True”。 默认情况下,该属性将设为“False”。 除 True 以外的所有值均会视为 False。 ADSync 实用工具文件夹包含名为 encryptLDAPPwd.sh 或 encryptLDAPPwd.bat 的密码加密实用工具。 该实用工具可在 ../scripts 文件夹中使用。 仅将该实用工具用于生成加密密码。 运行 encryptLDAPPwd 实用工具时,该属性将自动设为 True。 加密后的密码将自动填充 ldap.bind.user.pwd 属性。 | |
ldap.bind.user.pwd | 此参数指定 ldap.bind.user 属性中指定的服务账号的密码。 如果要使用加密密码,则请运行 encryptLDAPPwd 实用工具。 运行 encryptLDAPPwd 实用工具时,ldap.bind.isPwdEncrypted 属性将自动设为 True 并在该属性中自动填充加密后的密码。 如果未使用加密密码,则请确保 ldap.bind.isPwdEncrypted 属性未设为 True。 |
|
backup.data.folder | 此参数指定备份文件夹的名称和位置。 不要更改此值。 | ../sync/backup |
search.base.list | 该参数指定包含组织单位 (OU) 列表的文件的位置。 该实用工具使用此文件搜索用户数据。 | ../conf/searchBase.list |
ldap.searchFilter | 此参数指定用于从目录服务器检索用户条目的 LDAP 筛选。 | (&(objectClass=user)(objectClass=person)(objectClass=organizationalPerson)) |
data.file | 此参数指定将传入数据写到的文件的位置,做验证之用。 | ../DATA.csv |
record.limit | 此参数指定从 LDAP 查询返回的记录的限制,通常在诊断时使用。 |
|
logger.file | 此参数指定日志记录属性文件的位置。 | ../conf/logger.properties |
pagesize | 针对从目录服务器检索的数据的分页而设置的值。 目录服务器实施将此设置为 1000。 此值是目录服务器可以返回的最大记录数。 通过将该属性设置为较低的值可确保数据分页和检索超过 1000 条记录。 | 500 |
login.appender | 此参数指定目录服务器用户 ID 的附加内容。 该值用于以电子邮件格式创建 ServiceAide Cloud Service Management 用户 ID。 这也允许组织允许具有不同的用户名和电子邮件 ID,而仍然允许 SSO。 一旦设定,不要修改附加内容。 | @companyname.com |
ldap.attribute.map | 此参数指定用于检索每个用户的用户属性的映射位置。 | ../conf/attribute_map.list |
authtoken | 该参数为您的切片中的用户集成引擎指定授权令牌。 | 下载 ADSync 实用工具时将自动填充该值。 请勿编辑该值。 如果不慎编辑该值,则请重新下载 ADSync 实用工具。 |
slicetoken | 此参数指定双层安全的附加令牌。 | 下载 ADSync 实用工具时将自动填充该值。 请勿编辑该值。 如果不慎编辑该值,则请重新下载 ADSync 实用工具。 |
action.key | 此参数是系统定义的操作,用于处理 ServiceAide Cloud Service Management 中的用户条目。 不要修改此参数。 | ESD_activeDirectoryUserProfileSyncAct |
send.data | 此参数指定将用户数据移到 ServiceAide Cloud Service Management 的标志。 通常将此值设置为 Yes。 不过,出于诊断目的,可以将其设置为 No,以确认本地数据文件是否有错误。 有关诊断模式的详细信息,请参阅“测试工具”。 | 是 |
xml.response.dtd | 此值是系统定义的模板,用于处理 XML 数据。 不要修改此值。 | ../dtd/ProcessXMLDocument.dtd |
action.url | 此参数指定将数据发送到的 URL。 不要修改此 URL。 | 下载 ADSync 实用工具时将自动填充该值。 请勿编辑该值。 如果不慎编辑该值,则请重新下载 ADSync 实用工具。 注意:对于大型事务,支持团队可为您提供应用程序的直接 URL 来解决超时问题。 仅当出现此类情况时,方可手动更新该属性。 |
proxy.host | 此参数指定组织用于通过 Web 发送数据的代理服务器。 如果未配置代理服务器,将此留空。 |
|
proxy.port | 此参数指定您的组织通过 Web 发送数据时要使用的代理服务器端口。 如果未配置代理服务器,将此留空。 |
|
proxy.auth.preference | 此参数指定使用的代理验证类型。 ADSync 实用工具仅支持基本验证。 | |
proxy.user | 代理用户名。 | |
proxy.password | 代理用户名的密码。 | |
exit.on.severe | 遇到错误时退出该过程的标志。 建议值为 Yes。 | 是 |
故障排除期间,支持团队会要求您验证 sync.properties 文件中设置的值。
- 授权令牌 = 客户切片中用户集成引擎的授权令牌
- 切片令牌 = 同步过程写到的切片的切片令牌
- 操作 URL = 客户希望将同步输出发送到的正确实例的 URL
配置 org_name 属性
org_name 属性表示您的组织层次结构。 此属性是在 attribute_map.list 文件中配置的。 您在此处指定的值显示组织层次结构的所有层级。
您可以使用 Active Directory (AD) 属性、静态值或两者组合定义 org_name。
配置 org_name 时必须遵循以下规则:
- 如果您使用 AD 属性来表示层级,则确保将该属性包括在 ${ } 内。 例如,${department}。
此格式对于静态值不是必需的。 例如,人力资源。 - 必须使用字符串“单空格>>单空格”分隔每个层级。 例如:${company_name} >> ${department} 或 ${company_name} >> 人力资源。
不要使用任何其他字符来分隔级别。 - 在 org_name 中的层级数没有限制。
- 如果您在 org_name 中使用 AD 属性,请确保将每个用户映射到 org_name 中至少一个 AD 属性。 如果用户未映射到 org_name 中任何 AD 属性,则该用户未映射到任何组织。
- 不要在 org_name 的开头或结尾添加空格或任何其他字符。
- 不要使用双引号来表示 org_name 层次结构中的静态值。 但是,如果整个 org_name 定义是静态值,则必须用双引号。
示例:
用例 1:org_name 仅包括 Active Directory 属性:
org_name=${company} >> ${physicalDeliveryOfficeName} >> ${department} >> ${additional level} >> ${additional level}
用例 2:org_name 是 Active Directory 属性和静态值的组合:
org_name=XYZ 公司 >> 美国 >> ${state} >> ${county} >> ${village} >> 人力资源
在此示例中:
- XYZ 公司、美国和人力资源是静态值。
- ${state}、${county} 和 ${village} 是 AD 属性。
您可以在 org_name 中添加任意数量的层级作为静态值。
用例 3:整个 org_name 是静态值:
org_name ="XYZ 公司 >> 美国 >> 纽约 >> 人力资源部门"
在此情况下,请确保将右侧的值包含在双引号中。
请始终使用 org_name 属性,而非 lvl1_name、lvl2_name 和 lvl3_name。 如果您使用 org_name,便无需定义 lvl1_name、lvl2_name 和 lvl3_name。 提供这些级别的目的是为了向后兼容该应用程序的早期版本。 有关这些级别的更多信息,请参阅 attribute_map.list 文件。 您也可以定义 lvl1_name、lvl2_name 和 lvl3_name 与 org_name 属性。 不过,该实用工具给予使用 org_name 属性定义的层次结构更高的优先级。
为 ADSync 实用工具启用 SSL 环境
要为 ADSync 实用工具启用 SSL 环境,请执行以下步骤:
- 在浏览器地址栏中单击 ServiceAide Cloud Service Management URL 旁边的查看站点信息图标(锁定图标)。
- 导航到“证书”、“详细信息”,然后单击“复制到文件”。
- 单击“下一步”,然后设置要用作“.DER 编码二进制 X.509 (.CER)”的格式。
- 单击“下一步”,输入文件名称,然后保存该文件。
- 单击“下一步”,验证路径,然后单击“完成”。
- 将保存的证书文件复制到 ADSync 根 (ad-user-sync\) 位置。
- 从 ADSync 根 (ad-user-sync\) 位置运行 keytool 命令。
通过从 ADSync 根运行以下命令将保存的证书导入到 ADSync 本地密钥存储 si 中:
keytool -import -trustcacerts -alias 别名 -keystore si -file 保存的证书文件名
注意:要从 ADSync 根运行 keytool 命令,在 PATH 环境变量中需要 jre/bin。
将别名替换成您选择的别名。 例如,cacloudsmcert。
将保存的证书文件名替换成保存的证书文件的名称。 例如,cacloudsmcert.cer
提示输入密码时,请使用 itmaas。 命令提示将让您确认是否信任该证书。 输入 y。
将显示一条消息,指示该证书已添加到秘钥存储。
此过程已在 Internet Explorer 和 Chrome 浏览器上验证过。
测试实用工具
您可以运行 ADSync 实用工具,而无需将数据发送到 ServiceAide Cloud Service Management 数据库。 要使数据停止发送到数据库,将 sync.properties 文件中的 send.data 属性设置为 No。 输出数据显示在 sync_data.log.0 文件中。 数据还会被添加到 DATA.csv 文件。 您可以复查这些文件,以确认该实用工具是否按预期运行。
测试结束后,请将 send.data 属性重置为 Yes。
您可以对初始的几个同步尝试执行测试运行,以确保实用工具得到了正确配置。
还可以使用 send.data 属性测试参数值的修改。 修改参数值时,请执行测试同步。 只有测试运行成功时再更新 ServiceAide Cloud Service Management 数据库。
创建作业排定程序
您可以创建定期运行同步的作业计划程序。 例如,如果您有 UNIX 环境,则可以创建 cron 作业来运行该实用工具。 作业排定程序将调用提供的脚本文件之一来执行 ADSync 实用工具。 脚本文件包括:
- sync.bat (Windows)
- sync.sh (UNIX)
这些脚本包括在 zip 文件中并且按原样使用,不需要进行编辑。 这些文件位于 ADSync 实用工具的 script 文件夹中。
配置作业计划程序,以便它按所需的间隔调用适合的脚本文件。 请确保被授予执行脚本文件所需的足够访问权限。 您现在即可运行 ADSync 实用工具。
升级实用工具
ADSync 实用工具经常更新。 更新的版本可用时,您可以升级。 要避免数据丢失,请按照本主题中提供的说明执行操作。
升级到新版本时,确认您的实用工具配置相对于您的现有安装未发生改变。 还要确保在升级的实用工具中最新备份可用。
请执行以下步骤:
- 下载并解压实用工具的新版本。
- 将所有修改的 properties 文件从现有 ADSync 文件夹复制到新 ADSync 文件夹中的相同位置上。
- 将升级中引入的任何新参数添加回去。
- 将 backup 文件夹中的所有内容(dtd 文件夹除外)从现有的 ADSync 文件夹复制到新文件夹中。
© 2017 ServiceAide 1-650-206-8988 http://www.serviceaide.com info@serviceaide.com