Sun Java System Message Queue 3.7 UR1 管理指南

使用 LDAP 服务器管理用户系统信息库

要使用 LDAP 服务器来管理用户系统信息库,请执行以下任务:

编辑实例配置文件

要让代理使用目录服务器,请设置代理实例配置文件 config.properties 中某些属性的值。设置这些属性后,每当用户试图连接到代理实例或执行消息传送操作时,代理实例都会在 LDAP 服务器中查询有关用户和组的信息。

实例配置文件位于代理实例目录下的某个目录中。路径的格式如下:

/instances/instanceName

/props/config.properties

有关实例目录在特定操作系统中的位置的信息,请参见附录 A, Message QueueTM 数据在特定平台上的位置

Procedure编辑配置文件以使用 LDAP 服务器

  1. 通过设置以下属性,指定您使用的是 LDAP 用户系统信息库:


    imq.authentication.basic.user_repository=ldap
  2. 设置 imq.authentication.type 属性,确定密码是以 Base64 (basic) 还是 MD5 (digest) 编码的形式从客户端传递给代理。使用 LDAP 目录服务器管理用户系统信息库时,必须将验证类型设置为 basic。例如,


    imq.authentication.type=basic
  3. 还必须设置控制 LDAP 访问的代理属性。这些属性存储在代理的实例配置文件中。安全服务对这些属性进行了讨论,安全属性对这些属性进行了总结。

    Message Queue 使用 JNDI API 与 LDAP 目录服务器进行通信。有关这些属性的语法及其所引用的术语的详细信息,请查阅 JNDI 文档。Message Queue 使用 Sun JNDI LDAP 提供者并使用简单验证。

    Message Queue 支持 LDAP 验证故障转移:可以指定要尝试进行验证的 LDAP 目录服务器列表(请参见 imq.user.repos.ldap.server 属性的参考信息)。

    有关说明如何设置 LDAP 用户系统信息库相关属性的示例,请参见代理的 config.properties 文件。

  4. 必要时,还需要编辑访问控制属性文件中的用户/组和规则。有关使用访问控制属性文件的详细信息,请参见用户授权:访问控制属性文件

  5. 如果您希望代理在连接验证和组搜索时通过 SSL 与 LDAP 目录服务器进行通信,您需要在 LDAP 服务器中激活 SSL,然后在代理配置文件中设置以下属性:

    • 指定 LDAP 服务器进行 SSL 通信时所使用的端口。例如:


      imq.user_repository.ldap.server=myhost:7878
    • 将代理属性 imq.user_repository.ldap.ssl.enabled 设置为 true

      使用多个 LDAP 目录服务器时,可以使用 ldap:// 指定每个额外的目录服务器。例如:

      imq.user_repository.ldap.server = myHost:7878 ldap:// otherHost:7878

      用空格分隔每个额外的目录服务器。对于其他与 LDAP 相关的属性,列表中的所有目录服务器必须使用相同的值。

为管理员设置访问控制

要创建管理用户,请使用访问控制属性文件指定能够创建 ADMIN 连接的用户和组。必须在 LDAP 目录中预定义这些用户和组。

能够创建 ADMIN 连接的任何用户或组都可以执行管理命令。

Procedure设置管理用户

  1. 将代理属性 imq.accesscontrol.enabled 设置为 true(默认值),以允许使用访问控制文件。

    imq.accesscontrol.enabled 属性允许使用访问控制文件。

  2. 打开访问控制文件 accesscontrol.properties附录 A, Message QueueTM 数据在特定平台上的位置 中列出了该文件的位置。

    该文件包含一个如下所示的条目:

    service connection access control##################################connection.NORMAL.allow.user=*connection.ADMIN.allow.group=admin

    列出的条目是示例。请注意,admin 组存在于基于文件的用户系统信息库中,而非默认存在于 LDAP 目录中。您必须将在 LDAP 目录中定义的组的名称替换为要为其授予 Message Queue 管理员权限的组的名称。

  3. 要为用户授予 Message Queue 管理员权限,请按如下所示输入用户名:

    connection.ADMIN.allow.user= userName[[,userName2] ]

  4. 要为组授予 Message Queue 管理员权限,请按如下所示输入组名称:

    connection.ADMIN.allow.group= groupName[[,groupName2] ]