cloud-bridge JSON 对象

cloud-bridge JSON 对象的配置文件使用以下属性和定义。

选项条目和(如果可选)缺省值

"ldap-search-filter"
Verify用于选择应复制到 -SCIM 目录中的 Active Directory 哪些用户和组条目。 必须提供此参数。 IcbLdapSync.exe 的两次运行之间此值不得进行更改,从而使匹配条目结果集发生更改。 过滤器引用的属性不能在包含引用属性的结果集中每个条目的生命周期内发生更改。 在创建待同步的条目时,所引用的属性必须已存在,因此对于用户条目,请勿使用诸如 memberOf (用于 Active Directory)或 ibm-allGroups (用于 IBM® Directory Server )之类的组成员属性,因为这些属性在用户条目初始创建时并未设置。
"user-sync-filter"
如果用户对应的 AD 或 LDAP 用户条目符合或不符合筛选逻辑,此选项允许在 Verify Cloud Directory 中动态创建或删除用户。 仅在首次同步时设置此选项。 请勿事后更改,因为系统不会自动将现有用户集调整为与新用户集相匹配。 如果必须在首次同步后更改此选项,则必须停止目录同步服务。 然后,请以管理员身份手动运行该程序一次。 在安装目录中使用 IcbLdapSync -rebuild 来重新调整正在积极同步的用户匹配集。

如果不使用此选项,则在首次配置完成后,只有当相应的 AD 或 LDAP 用户被创建或删除时,才会相应地在 Verify Cloud Directory 中创建或删除用户。 ldap-search-filter该情况仅在Active Directory或 LDAP 中创建的用户与...匹配时才会发生。 如果该用户未在 Verify Cloud Directory 中创建,则目录同步功能将始终忽略该用户。 即使后来修改了现有的 AD 或 LDAP 用户以使其与之 ldap-search-filter匹配,目录同步仍会忽略该修改。 对于希望根据组成员身份同步用户的管理员而言,这种行为至关重要。 在 Active Directory 或 LDAP 中创建用户时,这些用户不会成为任何组的成员。 因此,它们在创建时永远无法与之 ldap-search-filter 匹配,也不会被创建和同步。

启用此 user-sync-filter 选项后,如果对 AD 或 LDAP 用户进行了修改以使其与 user-sync-filter匹配,Directory Sync 将从 AD 或 LDAP 获取该用户的当前详细信息。 如果该用户不存在,系统将在 Cloud Directory 中 Verify 创建相应的用户。 该用户与AD或 LDAP 保持同步。 user-sync-filter当对 AD 或 LDAP 用户进行修改,导致其不再与 匹配时,如果该用户存在,目录同步功能会将其从 Cloud Directory 中 Verify 删除。

基于匹配结果 user-sync-filter 的用户创建和删除操作是动态进行的。 目录同步功能会监控过滤器中引用的属性和组的变更,并针对相关用户重新评估该过滤器。

ldap-base-dnldap-search-filter、、和 ignore-suffixes 选项仍然有效。 user-sync-filter因此,这些设置必须足够宽泛,以涵盖所有受该功能监控的用户。

该选项 do-not-sync-delete 不适用于 user-sync-filter 删除操作。 不过,这确实适用于由 AD 或 LDAP 报告的任何用户删除操作。

user-sync-filter 格式是 LDAP 搜索过滤器规范的一个子集。 此过滤器绝不会传递给 LDAP 或 AD。 目录同步会在检测到过滤器中引用的属性和组发生变化时,在内部评估该过滤器。 <=此筛选器不支持 LDAP 筛选器操作 >=大多数可扩展的匹配规则以及子字符串功能。 属性名称不能使用OID。

user-sync-filter仅支持以下可扩展的匹配规则。
功能名称 OID
LDAP_MATCHING_RULE_BIT_AND 1.2.840.113556.1.4.803
LDAP_MATCHING_RULE_BIT_OR 1.2.840.113556.1.4.804
ABNF notation:

        filter     = "(" filtercomp ")"
        filtercomp = and / or / not / item
        and        = "&" filterlist
        or         = "|" filterlist
        not        = "!" filter
        filterlist = 1*filter
        item       = simple / present
        simple     = attr equal value
        equal      = "="
        present    = attr "=*"
        attr       = [ "memberOf" | "ibm-allGroups" ] / attributename
        value      = escapedText
        
The evaluation of "equal" is a case insensitive string match.

If a value should contain any of the following characters

           Character       ASCII value
           ---------------------------
           *               0x2a
           (               0x28
           )               0x29
           \               0x5c
           NUL             0x00

the character must be encoded as the backslash '\' character (ASCII
0x5c) followed by the two hexadecimal digits representing the ASCII
value of the encoded character. The case of the two hexadecimal
digits is not significant.

Other characters besides the ones listed above may be escaped using
this mechanism, for example, non-printing characters.
注意:
  • \\请特别注意 JSON 值中单引号 \ (')的使用,它需要加倍('),因为这是 JSON 中使用的转义字符。
  • 不支持该 NUL (0x00) 字符,仅使用 NUL 字符之前的值中的字符。
  • 不支持在 AD 上进行嵌套组匹配。
  • 仅在 AD 和 AD-LDS 上使用 memberOf 进行组成员资格检查。
  • 仅在 IBM Verify 目录中使用 ibm-allGroups 该功能来检查组成员资格。
在下面的 user-sync-filter 示例中,管理员规定用户必须具有属性 department ,且该属性的值为, abcd123 同时(&)必须是 "testgroupX" 组的成员。 该组通过其区分名称(DN)进行指定:
"user-sync-filter": "(&(department=abcd123)(memberOf=CN=testgroupX,CN=Users,DC=mydom,DC=com))",
"ldap-base-dn"
所有复制的用户和组必须具有此 DN 作为其父代,否则将被忽略。 对于 AD,此值缺省为 defaultNamingContext 值。 namingContexts 对于 ISDS LDAP ,该值默认为第一个非系统值。 此值不能在 IcbLdapSync.exe 的两次运行之间进行更改以便匹配条目结果集发生更改。
"ignore-suffixes"
此属性标识源 LDAP 中专有名称 (DN) 的数组。 在其中每个 DN 下的子条目(包括自身)将被忽略且不同步。 默认值为 []. 另一个例子是
[ “cn=branch1,o=ibm,c=us”, “cn=branch3,o=ibm,c=us” ]
"ldap-external-id-attr"
该属性用于唯一标识一个 Active Directory 条目。 Verify该属性存储在 -SCIM 目录中,以维持两个注册表之间针对该特定条目的连接。 此属性的值不得更改,必须与各特定 Active Directory 服务器示例文件中提供的值保持一致。
"ldap-dn-to-ascii-lower":false
如果设置为 true,则所有 Active Directory DN 值中的字符“A”→“Z”将按照英语小写转换规则转换为“a”→“z”。 不会修改其他 UTF-8 字符。 该属性主要用于 ISDS 同步,因为 DN 值用于将实体与 VerifySCIM 实体关联 Active Directory 起来。 在其他语言环境中,此转换可能导致问题,例如,使用其“I”至“i”合并的土耳其语。 此外,如果多个指向同一条 Active Directory 目的DN属性中,存在超出“A”→“Z”范围的字符大小写差异,这可能也不够。
“trace-file”
如果设置此属性,将启用对 IBM 身份验证API操作(SCIM JSON操作)的跟踪,并将 Active Directory 操作记录写入文件。 文件不进行回滚并且其大小不受 IcbLdapSync.exe 应用程序的限制。 确保其不会使用太多的文件系统资源。
“ldap-poll-time”:4
此属性确定 IcbLdapSync.exe 在 LDAP 服务器运行目录搜索操作以查找对目录用户和组进行的新更改的频率。 以秒为单位设置值。 缺省设置为 4 秒。
"enable-op-log":false
true如果将此属性设置为,则会启用对针对 Verify-SCIM 目录中的用户和组执行的每个 POST、PUT、PATCH 和 DELETE 操作的日志记录。 POST == create, PUT == update full object, PATCH == modify attribute[s] of object, DELETE = delete entry。文件格式由多行操作记录组成,每行包含以下以逗号分隔的值:
{utc-date},{operation},{ldap-dn},{Verify-scim-id},{status}
例如:
"Mon Jun 24 20:33:24 2019","POST","cn=testuser,o=ibm","600000GF7B","201" 
"Mon Jun 24 20:33:55 2019","PATCH","cn=testuser,o=ibm","600000GF7B","204"
{utc-date} 是启动操作的时间。 不记录完成时间。
"op-log-file": “{install-directory} [/{instance}]/op_log/op_log.csv”
用于记录 Verify-SCIM 操作的文件名。
“{install-directory}”注:、和 “{instance}” 是变量。 这些变量表示针对此描述的应用程序的安装目录路径和可选实例名称。
"op-log-rollover":2097152
回滚前 op_log 文件的近似最大大小。 在发生回滚时,将通过向文件名附加当前 UTC 时间戳记(十进制秒数)来重命名 op_log 文件。 然后,后续操作将记录到新的 op_log 文件。
注意: 由于多线程处理,此文件中的条目可能无法按日期顺序排列。
"cookie-file": “{install-directory} [/{instance}]/cookie.bin
用于存储复制状态 cookie 的文件。 此属性允许重新启动应用程序并且仍保持复制所处位置。 每次到达一个新状态时,生成一个 cookie 的“.bkp”
“{install-directory}”注:、和 “{instance}” 是变量。 它们不是要使用的有效值。 这些值表示针对此描述的应用程序的安装目录路径和可选实例名称。
"ldap-conn-idle-timeout": 30
如果目录连接闲置的时间超过了这个时长,那么在下一次请求时,该连接将被关闭。 已建立一个新的目录连接。 使用此属性可避免防火墙超时。
"ldap-conn-max-timeout": 300
在关闭目录连接并建立新连接之前,该目录连接的最大使用时长。 此属性用于避免目录服务器连接的配置的限制。
"nested-groups" : false
禁用或启用属于组的组的支持。 如果设置为 true,那么将识别作为组的组成员并复制到云目录。 如果设置为 false,那么将忽略。
"status-port" : 1234
如果在配置文件中设置,那么此条目启用 IcbLdapSync.exe 进程以在指定的端口上侦听回送接口上的连接 (EG 127.0.0.1)。 在建立连接后,将在连接上向外发送任何事件日志条目。
"ldap-use-paging" : false
禁用或启用 LDAP 页面调度控件。 使用 LDAP 页面调度控件可允许较大的搜索返回集。 但是,可能资源有限并且需要 LDAP 目录的特殊权限。 如果目录较大,那么大型搜索通常返回首次通过的集合。
"do-not-sync-delete" : false
如果设置为 true,那么不会将删除操作从 LDAP 目录同步到云目录。
"scim-threads": 1
此属性是可选的。 如果未指定,缺省值设置为 1。 此性能选项允许将多个 LDAP 更改以并行方式应用于 Cloud Directory,但前提是操作与不相关的条目无关。 少量并行操作允许更大的 Cloud Directory 更改吞吐量。 请勿将此选项与较早版本的产品配合使用。
"do-not-sync-groups": false
此属性是可选的。 如果未指定,缺省值设置为 false。 如果设置为 true,那么 Directory Sync 不会同步组对象。
"changelog-size-limit": 300
此属性是可选的。 如果未指定,缺省值设置为 300。 仅需 IBM Directory Server 。 当 Directory Sync 搜索 changelog 条目时,它将限制在每一遍中访存的条目数。
"ci-retries": 12
此属性是可选的。 如果未指定,缺省值设置为 12。 当 Directory Sync 将更改应用于 Cloud Directory 时,它将使用 Cloud Directory SCIM REST 接口。 如果在启动 SCIM REST 调用时发生故障,那么 Directory Sync 最多将重试 "ci-retries" 次此操作以尝试克服临时故障。 将此值设置为 0 将禁用重试。 "application/scim+json"对于所有 HTTP 5xx 错误以及部分 HTTP 4xx 错误,系统会进行重试,但仅当响应正文的 Content-Type 不是 时,且无法建立或完成与 SCIM REST 端点的连接时才会触发重试。
"ci-retry-pause": 5
此属性是可选的。 如果未指定,缺省值设置为 5。 此属性指定 Directory Sync 在失败的 SCIM REST 调用的重试之间等待的秒数。 有效值在 1 - 100 范围内。 此范围之外的值自动缩减到此范围。
"end-on-ci-retry-failure": false
此属性是可选的。 如果未指定,缺省值设置为 false。 如果此选项设置为 true ,那么 Directory Sync 过程在第一个不可恢复错误后结束。
"end-on-seq-failures": 0
此属性是可选的。 如果未指定,缺省值设置为 0。 如果此选项设置为大于 0 的值,那么“目录同步”进程在执行指定数目的不可恢复错误之后结束,而不干预成功的操作。
"changelog-ignore-suffixes": [ "ou=other1,o=ibm,c=us", "ou=other2,o=ibm,c=us" ]
此属性是可选的。 如果未指定,缺省值设置为空数组。 仅需 IBM Directory Server 。 此性能选项允许 Directory Sync 立即忽略 changelog 条目,这些条目的 targetdn 是任何指定后缀的子子代。 Changelog 条目通常不存在 objectClass 属性。 Directory Sync 必须搜索 Cloud Directory 以确定更改的匹配同步条目是否存在。 如果更改不适用于 Cloud Directory 同步条目,那么搜索将降低性能。 如果不搜索具有非同步条目的 IBM Directory Server 目录树的重要分支,那么可以提高性能。
"trace-rollover": 0
此属性是可选的。 如果未指定,缺省值设置为 0。 如果该值设置为 0 字节,则 不会溢出,而是 "trace-file" 会随着目录同步活动的进行而持续增长。 如果设置为大于 0 的值,那么当跟踪块导致文件超出此值时,将重命名跟踪文件并启动新的跟踪文件。 当前 UNIX 时间戳记值将添加到重命名的回滚跟踪文件。
"op-log-add-skipped": false
此属性是可选的。 如果未指定,缺省值设置为 false。 如果 Directory Sync 确定 LDAP 更改与同步不相关,那么将跳过此操作而不记录。 如果将此选项设置为 true,那么它会将条目输出到具有相关 LDAP DNop_log,以便管理员可以监视已跳过的操作。
"log-stats-interval": 0
缺省设置为 0 秒。 如果设置为大于 0 的整数,那么将启用一个功能,每个时间间隔内定期在 Windows Event Log 中记录 Info level 事件以及一些操作统计信息。 事件采用以下格式。
LE=%1 CE=%2 CU=%3 CG=%4 MU=%5 MG=%6 DU=%7 DG=%8
其中
  • LE = AD/LDAP 错误数
  • CE = 验证 API 错误数(与租户通信)
  • CU = 创建用户数
  • CG = 创建组数
  • MU = 修改用户操作数
  • MG = 修改组操作数
  • DU = 删除用户操作数
  • DG = 删除组操作数