public class TextConfigurationRealm extends SimpleAccountRealm
setUserDefinitions(java.lang.String)
method and
Role-to-permission definitions are specified via the setRoleDefinitions(java.lang.String)
method.roles, ROLES_LOCK, users, USERS_LOCK
Constructor and Description |
---|
TextConfigurationRealm() |
Modifier and Type | Method and Description |
---|---|
String |
getRoleDefinitions() |
String |
getUserDefinitions() |
protected void |
onInit()
Will call 'processDefinitions' on startup.
|
protected void |
processDefinitions() |
protected void |
processRoleDefinitions() |
protected void |
processRoleDefinitions(Map<String,String> roleDefs) |
protected void |
processUserDefinitions() |
protected void |
processUserDefinitions(Map<String,String> userDefs) |
void |
setRoleDefinitions(String roleDefinitions)
Sets a newline (\n) delimited String that defines role-to-permission definitions.
|
void |
setUserDefinitions(String userDefinitions)
Sets a newline (\n) delimited String that defines user-to-password-and-role(s) key/value pairs according
to the following format:
|
protected static Set<String> |
toLines(String s) |
protected static Map<String,String> |
toMap(Collection<String> keyValuePairs) |
accountExists, add, add, addAccount, addAccount, addRole, doGetAuthenticationInfo, doGetAuthorizationInfo, getRole, getUser, getUsername, getUsername, roleExists, toSet
afterCacheManagerSet, checkPermission, checkPermission, checkPermission, checkPermissions, checkPermissions, checkPermissions, checkRole, checkRole, checkRoles, checkRoles, checkRoles, clearCachedAuthorizationInfo, doClearCache, getAuthorizationCache, getAuthorizationCacheKey, getAuthorizationCacheName, getAuthorizationInfo, getPermissionResolver, getPermissions, getRolePermissionResolver, hasAllRoles, hasRole, hasRole, hasRoles, hasRoles, isAuthorizationCachingEnabled, isPermitted, isPermitted, isPermitted, isPermitted, isPermitted, isPermitted, isPermittedAll, isPermittedAll, isPermittedAll, setAuthorizationCache, setAuthorizationCacheName, setAuthorizationCachingEnabled, setName, setPermissionResolver, setRolePermissionResolver
assertCredentialsMatch, clearCachedAuthenticationInfo, getAuthenticationCache, getAuthenticationCacheKey, getAuthenticationCacheKey, getAuthenticationCacheName, getAuthenticationInfo, getAuthenticationTokenClass, getCredentialsMatcher, init, isAuthenticationCachingEnabled, isAuthenticationCachingEnabled, setAuthenticationCache, setAuthenticationCacheName, setAuthenticationCachingEnabled, setAuthenticationTokenClass, setCredentialsMatcher, supports
clearCache, getAvailablePrincipal, getCacheManager, getName, isCachingEnabled, onLogout, setCacheManager, setCachingEnabled
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
init
public TextConfigurationRealm()
protected void onInit()
onInit
in class AuthorizingRealm
public String getUserDefinitions()
public void setUserDefinitions(String userDefinitions)
Sets a newline (\n) delimited String that defines user-to-password-and-role(s) key/value pairs according to the following format:
username = password, role1, role2,...
Here are some examples of what these lines might look like:
root = reallyHardToGuessPassword, administrator
jsmith = jsmithsPassword, manager, engineer, employee
abrown = abrownsPassword, qa, employee
djones = djonesPassword, qa, contractor
guest = guestPassword
userDefinitions
- the user definitions to be parsed and converted to Map.Entry elementspublic String getRoleDefinitions()
public void setRoleDefinitions(String roleDefinitions)
Each line within the string must define a role-to-permission(s) key/value mapping with the equals character signifies the key/value separation, like so:
rolename = permissionDefinition1, permissionDefinition2, ...
where permissionDefinition is an arbitrary String, but must people will want to use
Strings that conform to the WildcardPermission
format for ease of use and flexibility. Note that if an individual permissionDefnition needs to
be internally comma-delimited (e.g. printer:5thFloor:print,info
), you will need to surround that
definition with double quotes (") to avoid parsing errors (e.g.
"printer:5thFloor:print,info"
).
NOTE: if you have roles that don't require permission associations, don't include them in this
definition - just defining the role name in the userDefinitions
is
enough to create the role if it does not yet exist. This property is really only for configuring realms that
have one or more assigned Permission.
roleDefinitions
- the role definitions to be parsed at initializationprotected void processDefinitions()
protected void processRoleDefinitions() throws ParseException
ParseException
protected void processRoleDefinitions(Map<String,String> roleDefs)
protected void processUserDefinitions() throws ParseException
ParseException
protected void processUserDefinitions(Map<String,String> userDefs)
protected static Map<String,String> toMap(Collection<String> keyValuePairs) throws ParseException
ParseException
Copyright © 2004-2016 The Apache Software Foundation. All Rights Reserved.