对于生产消息传送系统,建议将 LDAP 服务器用作对象存储库。LDAP 服务器针对分布式系统而设计,它提供了在生产环境中非常有用的安全功能。
许多供应商都提供 LDAP 实现。要使用 Message Queue 管理工具管理 LDAP 服务器上的对象存储库,可能需要先配置服务器,使其可以存储 Java 对象并执行 JNDI 查找;有关详细信息,请参见随 LDAP 实现一起提供的文档。
要将 LDAP 服务器用作对象存储库,必须指定表 8–1 中所示的属性。这些属性分为以下几个类别:
初始上下文。 java.naming.factory.initial 属性指定在服务器上执行 JNDI 查找的初始上下文。此属性值对于给定的 LDAP 对象存储库是固定的。
位置。java.naming.provider.url 属性指定 LDAP 服务器的 URL 和目录路径。必须验证指定的目录路径是否存在。
安全性。java.naming.security.principal、java.naming.security.credentials 和 java.naming.security.authentication 属性管理尝试访问对象存储库的呼叫者的验证。这些属性的准确格式和值因 LDAP 服务提供者而异;请参见随 LDAP 实现一起提供的文档以了解详细信息,并确定是所有操作都需要安全信息,还是只有更改存储数据的操作需要安全信息。
属性 |
描述 |
---|---|
JNDI 查找的初始上下文 示例: com.sun.jndi.ldap.LdapCtxFactory |
|
服务器 URL 和目录路径 示例: ldap://myD.com:389/ou=mq1,o=App 其中受管理对象存储库在目录 /App/mq1 中。 |
|
用于验证呼叫者的主体标识 此属性的格式取决于验证方案:例如, uid=homerSimpson,ou=People,o=mq 如果未指定此属性,行为将由 LDAP 服务提供者决定。 |
|
验证主体的凭证 此属性的值取决于验证方案:例如,它可能是散列密码、明文密码、密钥或证书。 如果未指定此属性,行为将由 LDAP 服务提供者决定。 |
|
验证的安全级别 此属性的值为 none、 simple 或 strong 关键字中的一个。例如,如果指定 simple,则当缺少任何主体或凭证值时,系统都会提示您。 这样您可以使用一种更安全的方法来提供身份信息。 如果未指定此属性,行为将由 LDAP 服务提供者决定。 |