このコンテンツは選択した言語では利用できません。
8.2. Cached LDAP Authorization Plug-In
Overview リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Using the cached LDAP authorization plug-in, you can configure a broker to retrieve its authorization data from an X.500 directory server. For better efficiency, this plug-in caches authorization data in the broker and provides support for updating the cached data at regular intervals.
Updating the cache リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Two alternative mechanisms for updating the authorization cache are supported:
- Push mechanism—some LDAP directory server implementations support a persistent search feature, which enables applications to receive live updates from the LDAP server (push mechanism). By default, the cached LDAP authorization plug-in attempts to register with the LDAP server to receive these updates.
- Pull mechanism—if your LDAP directory server does not support live updates, you can configure the cached LDAP authorization plug-in to poll the LDAP server at regular intervals instead (pull mechanism). To enable the pull mechanism, you must set the
refreshInterval
property on the cached LDAP authorization plug-in.
Sample configuration リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Example 8.3, “Cached LDAP Authorization Plug-In Configuration” shows an example of how to configure the cached LDAP authorization plug-in. The
authorizationPlugin
element must be added as a child of the plugins
element.
Example 8.3. Cached LDAP Authorization Plug-In Configuration
Configuration properties リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
The cached LDAP authorization plug-in supports the following properties:
adminPermissionGroupSearchFilter
- Specifies the filter used to search for admin permission groups. This filter is used when searching under the nodes specified by
queueSearchBase
,topicSearchBase
, ortempSearchBase
, to obtain the permission groups for queues, topics, or temporary destinations, respectively.Default is(cn=Admin)
. authentication
- The authentication method to use when connecting to the LDAP server.Default is
simple
. connectionPassword
- The password that matches the DN from
connectionUsername
. In the directory server, the password is normally stored as auserPassword
attribute in the corresponding directory entry.Default issecret
. connectionProtocol
- The connection protocol to use when connecting to the LDAP server.Default is
s
. connectionURL
- Specifies the location of the directory server using an LDAP URL,
ldap://Host:Port
.Default isldap://localhost:1024
. connectionUsername
- The DN of the user that opens the connection to the directory server.Default is
uid=admin,ou=system
. groupClass
- Type of the class that implements the role principal. For example, in order to reuse roles defined for the Apache Karaf JAAS authentication plug-in, you would need to set this property to
org.apache.karaf.jaas.boot.principal.RolePrincipal
.Default isorg.apache.activemq.jaas.GroupPrincipal
. groupNameAttribute
- Specifies which attribute of a permission group node is interpreted as the group name.Default is
cn
. groupObjectClass
- Specifies the object class of the LDAP nodes used to store permission groups. Typical values are
groupOfNames
orgroupOfUniqueNames
.Default isgroupOfNames
. legacyGroupMapping
- If
true
, specifies that the role members of a privilege group must be specified using just the Common Name RDN,cn=CNValue
, of the role group; or iffalse
, specifies that the role members of a privilege group must be specified using the full Distinguished Name.Default istrue
. permissionGroupMemberAttribute
- Specifies which attribute of a permission group node defines a member. For example, if the
groupObjectClass
is set togroupOfNames
, this attribute should usually be set tomember
. Alternatively, if thegroupObjectClass
is set togroupOfUniqueNames
, this attribute should usually be set touniquemember
.Default ismember
. queueSearchBase
- The base DN of queue authorization entries.Default is
ou=Queue,ou=Destination,ou=ActiveMQ,ou=system
. readPermissionGroupSearchFilter
- Specifies the filter used to search for read permission groups. This filter is used when searching under the nodes specified by
queueSearchBase
,topicSearchBase
, ortempSearchBase
, to obtain the permission groups for queues, topics, or temporary destinations, respectively.Default is(cn=Read)
. refreshDisabled
- If
true
, disables cache refreshing.Default isfalse
. refreshInterval
- Time interval between refreshes of the cache, expressed in milliseconds (where the cache is refreshed by pulling data from the LDAP server). The special value,
-1
, disables the pull mechanism for refreshing the cache (but does not affect the push mechanism, if the LDAP server supports it).Default is-1
. tempSearchBase
- The base DN of authorization entries for temporary destinations.Default is
ou=Temp,ou=Destination,ou=ActiveMQ,ou=system
. topicSearchBase
- The base DN of topic authorization entries.Default is
ou=Topic,ou=Destination,ou=ActiveMQ,ou=system
. userNameAttribute
- Specifies which attribute of a user node is interpreted as the username.Default is
uid
. userObjectClass
- Specifies the object class of the LDAP nodes used to store users.Default is
person
. writePermissionGroupSearchFilter
- Specifies the filter used to search for write permission groups. This filter is used when searching under the nodes specified by
queueSearchBase
,topicSearchBase
, ortempSearchBase
, to obtain the permission groups for queues, topics, or temporary destinations, respectively.Default is(cn=Write)
.
Authorization settings for different directory servers リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
The most significant differences between directory servers arise in connection with the object class settings in the cached LDAP authorization plug-in. The precise settings depend ultimately on the organisation of your DIT, but the following table gives an idea of the typical object class settings required for different directory servers:
Directory Server | Object Class Settings |
---|---|
389-DS
Red Hat DS
|
userObjectClass="inetorgperson" groupObjectClass="groupOfUniqueNames" permissionGroupMemberAttribute="uniqueMember"
|
Apache DS
|
userObjectClass="person" groupObjectClass="groupOfNames" permissionGroupMemberAttribute="member"
|