Users Repositories

Introduction

User repositories are required to store James user information and authentication data

Consult usersrepository.xml in GIT to get some examples and hints.

JPA Users Repository

JPA (database via OpenJPA) based user repository. This is the default implementation.

The usersrepository tag as 2 attributes: name="LocalUsers" and class="org.apache.james.user.file.UsersFileRepository">

algorithm
Algorithm to has passwords. Supported password algorithm are: MD5, SHA-256, SHA-512, NONE
enableVirtualHosting
true (default) or false. Defines if the usernames must (true) or may not contain (false) a domain part (user@domain.tld).

File Users Repository

The File UsersRepository implementations below are DEPRECATED and will get removed in the next release

It just listed here for backward-compatibility

File-based user repositories Use these configurations to store user info in the filesystem.

The usersrepository tag as 2 attributes:name="LocalUsers" class="org.apache.james.user.file.UsersFileRepository">

destination
Example: file://var/users/.
ignoreCase
true or false.
enableAliases
true or false.
enableForwarding
true or false.
enableVirtualHosting
true (default) or false. Defines if the usernames must (true) or may not contain (false) a domain part (user@domain.tld).

JDBC Users Repository

The JDBC UsersRepository implementations below are DEPRECATED and will get removed in the next release.

It just listed here for backward-compatibility.

LDAP Users Repository

Read-Only LDAP based UsersRepository

Example:

<repository name="LocalUsers" class="org.apache.james.user.ldap.ReadOnlyUsersLDAPRepository" ldapHost="ldap://myldapserver:389" 
    principal="uid=ldapUser,ou=system" credentials="password" userBase="ou=People,o=myorg.com,ou=system" userIdAttribute="uid"/>