Explanation:
The unifyingUserDataProvider can be used to merge two or more other user data providers into one.
The unifyingUserDataProvider will forward a login attempt (username and password) to each inner user data provider in the order they are specified. After one of the inner user data providers returned a successful login (and returned the user's attributes), the procedure terminates. If no inner user data provider could verify the user, the login attempt fails.
Syntax
<unifyingUserDataProvider>
[<staticUserDataProvider ... />*]
[<ldapUserDataProvider ... />*]
</unifyingUserDataProvider><unifyingUserDataProvider> [<staticUserDataProvider ... />*] [<ldapUserDataProvider ... />*] </unifyingUserDataProvider>
Sample
<unifyingUserDataProvider>
<staticUserDataProvider>
<user username="thomas"
password="secret"
sms="+1-234-567-8900" />
</staticUserDataProvider>
<ldapUserDataProvider
url="ldap://192.168.2.100"
base="dc=predic8,dc=de"
binddn="cn=Manager,dc=predic8,dc=de"
bindpw="secret"
searchPattern="(cn=%LOGIN%)"
searchScope="subtree"
<map>
<attribute from="telephoneNumber" to="sms" />
</map>
</ldapUserDataProvider>
</unifyingUserDataProvider><unifyingUserDataProvider> <staticUserDataProvider> <user username="thomas" password="secret" sms="+1-234-567-8900" /> </staticUserDataProvider> <ldapUserDataProvider url="ldap://192.168.2.100" base="dc=predic8,dc=de" binddn="cn=Manager,dc=predic8,dc=de" bindpw="secret" searchPattern="(cn=%LOGIN%)" searchScope="subtree" <map> <attribute from="telephoneNumber" to="sms" /> </map> </ldapUserDataProvider> </unifyingUserDataProvider>
Child Elements
| Element | Description | Cardinality |
|---|---|---|
| cachingUserDataProvider | Caching User Data provider caches previous successful logins in order to make authentication faster | 0..* |
| fileUserDataProvider | A user data provider utilizing htpasswd formatted files. | 0..* |
| ldapUserDataProvider | A user data provider querying an LDAP server to authorize users and retrieve attributes. | 0..* |
| staticUserDataProvider | A user data provider listing all user data in-place in the config file. | 0..* |
| unifyingUserDataProvider | Explanation: | 0..* |