|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.norther.tammi.core.base.Adaptee
org.norther.tammi.core.external.DefaultLibrary
org.norther.tammi.core.realm.DefaultNativeRealm
public class DefaultNativeRealm
A default implementation of NativeRealm.
| Field Summary |
|---|
| Fields inherited from class org.norther.tammi.core.base.Adaptee |
|---|
ADAPTEE_NOTIF_DESCRIPTION, ADAPTEE_NOTIFICATIONS |
| Fields inherited from interface org.norther.tammi.core.realm.NativeRealm |
|---|
DEFAULT_DOMAIN_PROPERTY |
| Fields inherited from interface org.norther.tammi.core.realm.Realm |
|---|
ANONYMOUS_USER_PROPERTY, CACHED_PASSWORDS_PROPERTY, DEFAULT_ROLE_PROPERTY, DIGEST_ALGORITHM_PROPERTY, MEMBER_PROPERTY, PUBLIC_NAME_PROPERTY |
| Fields inherited from interface org.norther.tammi.core.base.MBeanDelegate |
|---|
ARRAY_TYPE, OBJECT_TYPE, PRIMITIVE_TYPE, STRING_TYPE |
| Constructor Summary | |
|---|---|
DefaultNativeRealm()
Constructs a new realm. |
|
DefaultNativeRealm(String library)
Constructs a new realm with a specific library. |
|
| Method Summary | |
|---|---|
void |
addProperty(int index,
String key,
String value)
Inserts a multivalued property at the specified index. |
void |
addProperty(String key,
String value)
Adds a multivalued property. |
Principal |
authenticate(Certificate[] certs)
Authenticates the principal with a certificate. |
Principal |
authenticate(Principal principal,
String scheme)
Authenticates the specified principal in this realm. |
Principal |
authenticate(String domain,
Certificate[] certs)
Authenticates the principal with a certicate in the specified domain. |
Principal |
authenticate(String domain,
Principal principal,
String scheme)
Authenticates the specified principal in the specified domain of this realm. |
Principal |
authenticate(String username,
String password,
String scheme)
Authenticates the principal associated with the specified username and password using the specified scheme, if there is one. |
Principal |
authenticate(String domain,
String username,
String password,
String scheme)
Authenticates the principal associated with the specified username and password in the specified domain using the specified scheme, if there is one. |
Principal |
authenticate(String username,
String realmname,
String resp,
String nonce,
String nc,
String cnonce,
String qop,
String md5a2,
String encoding)
Authenticates the principal associated with the specified username matching the digest calculated using the given parameters using the method described in RFC2617/2831. |
Principal |
authenticate(String domain,
String username,
String realmname,
String resp,
String nonce,
String nc,
String cnonce,
String qop,
String md5a2,
String encoding)
Authenticates the principal associated with the specified username in the specified domain matching the digest calculated using the given parameters using the method described in RFC2617/2831. |
protected void |
checkProperties()
Checks properties. |
void |
clearProperties()
Clears all properties. |
boolean |
containsProperty(String key)
Checks whether a property is defined. |
String |
digest(String username,
String password)
Digests the password for the specified username using the defined algorithm and converts the result to a corresponding hexadecimal string. |
String |
generateAuthenticate(String username,
String password,
String scheme)
Generates the authentication header. |
String |
getAnonymousUser()
Gets the username for anonymous principals. |
String |
getAuthType()
Gets the authentication scheme. |
String |
getConfigKey()
Gets the path finder key for resolving configuration paths. |
String |
getDefaultDomain()
Gets the default domain to use for this realm. |
String |
getDefaultRole()
Gets the default role of authenticated principals. |
String |
getDigestAlgorithm()
Gets the digest algorithm used to store credentials. |
int |
getFreeDiskSpace(String name)
Get free disk space in MB for given disk, empty or null name means the current disk. |
int |
getGroupId()
Gets the group id of the current process. |
String[] |
getProperties(String key)
Gets a multivalued property. |
String |
getProperty(String key)
Gets a property. |
String |
getPropertyFilePath()
Gets the property file path. |
String |
getPublicName()
Gets the public name of this realm. |
int |
getUserId()
Gets the user id of the current process. |
Principal |
identify(String identity)
Identifies the principal associated with the specified identity. |
Principal |
identify(String username,
String password)
Identifies the principal associated with the specified username and password. |
int |
indexOfProperty(String key,
String value)
Returns the index of a multivalued property value. |
boolean |
isAuthenticated(Principal principal)
Checks whether the specified principal is authenticated in this realm. |
boolean |
isAuthenticated(String domain,
Principal principal)
Checks whether the specified principal is authenticated in the specified domain of this realm. |
boolean |
isCachedPasswords()
Checks whether non-digested client passwords are cached. |
boolean |
isUserInRole(Principal principal,
String role)
Checks whether the specified principal is in the specified security role within the context of any domain in this realm. |
OrderedMap |
propertyMap()
Returns a map of properties. |
OrderedMap |
propertyMap(String prefix)
Returns a map of prefixed properties. |
Object |
removeProperty(String key)
Removes a property. |
boolean |
removeProperty(String key,
String value)
Removes a multivalued property. |
void |
reportErrorEvent(String source,
String message)
Reports an error event. |
void |
reportInfoEvent(String source,
String message)
Reports an info event. |
void |
reportWarningEvent(String source,
String message)
Reports a warning event. |
void |
setAnonymousUser(String username)
Sets the username for anonymous principals. |
void |
setCachedPasswords(boolean flag)
Sets the option to cache non-digested client passwords of authenticated principals to be used in e.g. |
void |
setConfigKey(String key)
Sets the path finder key for resolving configuration paths. |
void |
setDefaultDomain(String domain)
Sets the default domain to use for this realm. |
void |
setDefaultRole(String role)
Sets the default role of authenticated principals. |
void |
setDigestAlgorithm(String digest)
Sets the digest algorithm used to store credentials. |
void |
setGroupId(int gid)
Sets the group id of the current process. |
Object |
setProperties(String key,
String[] values)
Sets a multivalued property. |
Object |
setProperty(String key,
String value)
Sets a property. |
void |
setPropertyFilePath(String path)
Sets the property file path. |
void |
setPropertyFilePath(String path,
String encoding)
Sets the property file path with encoding. |
void |
setPublicName(String name)
Sets the public name of this realm. |
void |
setUserId(int uid)
Sets the user id of the current process. |
void |
storeProperties()
Stores properties to the property file. |
protected void |
updateProperties()
Updates properties. |
| Methods inherited from class org.norther.tammi.core.external.DefaultLibrary |
|---|
freeLibrary, getBinKey, getLibrary, getLibraryPath, getLoaderPath, invoke, invoke, invokeByte, invokeByte, invokeBytes, invokeBytes, invokeConstBytes, invokeConstBytes, invokeConstString, invokeConstString, invokeConstStrings, invokeConstStrings, invokeDouble, invokeDouble, invokeFloat, invokeFloat, invokeInt, invokeInt, invokeLong, invokeLong, invokeShort, invokeShort, invokeString, invokeString, invokeStrings, invokeStrings, setBinKey, setLibraryPath, setLoaderPath, unmanaged |
| Methods inherited from class org.norther.tammi.core.base.Adaptee |
|---|
addAdaptee, addNotificationListener, getAttributeSupport, getBroker, getCanonicalName, getDomain, getFactory, getLoader, getLog, getLog, getMBean, getMBeanServer, getNotificationInfo, getObjectName, getRegistrationTime, getSequenceNumber, hasListeners, isRegistered, postmanaged, premanaged, removeNotificationListener, removeNotificationListener, sendNotification, sendNotification, sendNotification, sendNotification, unregister |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface org.norther.tammi.core.external.Library |
|---|
getBinKey, getLibraryPath, getLoaderPath, setBinKey, setLibraryPath, setLoaderPath |
| Constructor Detail |
|---|
public DefaultNativeRealm()
public DefaultNativeRealm(String library)
library - the native library.| Method Detail |
|---|
public String getConfigKey()
Configurable
getConfigKey in interface Configurablepublic void setConfigKey(String key)
Configurable
setConfigKey in interface Configurablekey - the path finder key.public String getPropertyFilePath()
Configurable
getPropertyFilePath in interface Configurablepublic void setPropertyFilePath(String path)
Configurable
setPropertyFilePath in interface Configurablepath - a property file path.
public void setPropertyFilePath(String path,
String encoding)
Configurable
setPropertyFilePath in interface Configurablepath - a property file path.encoding - the encoding to use.public boolean containsProperty(String key)
Configurable
containsProperty in interface Configurablekey - the key.
public String getProperty(String key)
Configurable
getProperty in interface Configurablekey - the key.
public Object setProperty(String key,
String value)
Configurable
setProperty in interface Configurablekey - the key.value - the value.
public String[] getProperties(String key)
Configurable
getProperties in interface Configurablekey - the key.
public Object setProperties(String key,
String[] values)
Configurable
setProperties in interface Configurablekey - the key.values - the values.
public Object removeProperty(String key)
Configurable
removeProperty in interface Configurablekey - the key.
public int indexOfProperty(String key,
String value)
Configurable
indexOfProperty in interface Configurablekey - the key.value - the value.
public void addProperty(String key,
String value)
Configurable
addProperty in interface Configurablekey - the key.value - the property.
public void addProperty(int index,
String key,
String value)
Configurable
addProperty in interface Configurableindex - the index.key - the key.value - the value.
public boolean removeProperty(String key,
String value)
Configurable
removeProperty in interface Configurablekey - the key.value - the value.
public void clearProperties()
Configurable
clearProperties in interface Configurablepublic OrderedMap propertyMap()
Configurable
propertyMap in interface Configurablepublic OrderedMap propertyMap(String prefix)
Configurable
propertyMap in interface Configurableprefix - the prefix.
public void storeProperties()
throws IOException
Configurable
storeProperties in interface ConfigurableIOException - on I/O errors.public String getPublicName()
Realm
getPublicName in interface Realmpublic void setPublicName(String name)
RealmNote that if both the digest algorithm and the public name are defined, the digested passwords must include the username and the realmname in the form: <username>:<realmname>:<password>.
setPublicName in interface Realmname - the public name.public String getDigestAlgorithm()
Realm
getDigestAlgorithm in interface Realmpublic void setDigestAlgorithm(String digest)
Realm
setDigestAlgorithm in interface Realmdigest - the digest algorithm.public boolean isCachedPasswords()
Realm
isCachedPasswords in interface Realmpublic void setCachedPasswords(boolean flag)
Realm
setCachedPasswords in interface Realmflag - the cached passwords option.public String getDefaultRole()
Realm
getDefaultRole in interface Realmpublic void setDefaultRole(String role)
Realm
setDefaultRole in interface Realmrole - the default role.public String getAnonymousUser()
Realm
getAnonymousUser in interface Realmpublic void setAnonymousUser(String username)
RealmNote that the anonymous user must be known within the realm but its credentials are not necessarily verified during authentication.
setAnonymousUser in interface Realmusername - the default guest.
public boolean isUserInRole(Principal principal,
String role)
Realm
isUserInRole in interface Realmprincipal - the principal for whom the role is to be checked.role - the security role to be checked.
public boolean isAuthenticated(Principal principal)
Realm
isAuthenticated in interface Realmprincipal - the principal to be checked.
public boolean isAuthenticated(String domain,
Principal principal)
Realm
isAuthenticated in interface Realmdomain - the domain of the user.principal - the principal to be checked.
public Principal identify(String identity)
Realm
identify in interface Realmidentity - the identity.
public Principal identify(String username,
String password)
Realm
identify in interface Realmusername - the username.password - the password.
public Principal authenticate(Principal principal,
String scheme)
Realm
authenticate in interface Realmprincipal - principal to be authenticated.scheme - the authentication scheme to be applied.
public Principal authenticate(String domain,
Principal principal,
String scheme)
Realm
authenticate in interface Realmdomain - the domain of the user.principal - principal to be authenticated.scheme - the authentication scheme to be applied.
public Principal authenticate(String username,
String password,
String scheme)
RealmThe username can be null or empty for an anonymous authentication.
authenticate in interface Realmusername - the username to look up.password - the password to use in authentication.scheme - the authentication scheme to be applied.
public Principal authenticate(String domain,
String username,
String password,
String scheme)
RealmThe username can be null or empty for an anonymous authentication.
authenticate in interface Realmdomain - the domain of the user.username - the username to look up.password - the password to use in authentication.scheme - the authentication scheme to be applied.
public Principal authenticate(String username,
String realmname,
String resp,
String nonce,
String nc,
String cnonce,
String qop,
String md5a2,
String encoding)
RealmNote that either non-encrypted or MD5 digested passwords must be applied. Digested passwords must include the username and realmname in the form: <username>:<realmname>:<password>.
The username can be null or empty for an anonymous authentication.
authenticate in interface Realmusername - the username to look up.realmname - the realm, i.e. the identification of the server.resp - the digest which has been submitted by the client.nonce - a unique token which has been used for this request.nc - a nonce count.cnonce - a client nonce.qop - the quality of protection ("auth", "auth-int",...)md5a2 - the second MD5 digest used to calculate the digest:
MD5(Method + ':' + uri).encoding - the chareacter encoding to apply.
public Principal authenticate(String domain,
String username,
String realmname,
String resp,
String nonce,
String nc,
String cnonce,
String qop,
String md5a2,
String encoding)
RealmNote that either non-encrypted or MD5 digested passwords must be applied. Digested passwords must include the username and realmname in the form: <username>:<realmname>:<password>.
The username can be null or empty for an anonymous authentication.
authenticate in interface Realmdomain - the domain of the user.username - the username to look up.realmname - the realm, i.e. the identification of the server.resp - the digest which has been submitted by the client.nonce - a unique token which has been used for this request.nc - a nonce count.cnonce - a client nonce.qop - the quality of protection ("auth", "auth-int",...)md5a2 - the second MD5 digest used to calculate the digest:
MD5(Method + ':' + uri).encoding - the character encoding to apply.
public Principal authenticate(Certificate[] certs)
Realm
authenticate in interface Realmcerts - the peer certificate chain.
public Principal authenticate(String domain,
Certificate[] certs)
Realm
authenticate in interface Realmdomain - the domain of the user.certs - the peer certificate chain.
public String getAuthType()
Realm
getAuthType in interface Realm
public String generateAuthenticate(String username,
String password,
String scheme)
RealmThe username can be null or empty for an anonymous authentication.
generateAuthenticate in interface Realmusername - the username to look up.password - the password to use in authentication.scheme - the authentication scheme to be used.
public String digest(String username,
String password)
Realm
digest in interface Realmusername - the username.password - the password or other credentials.
public String getDefaultDomain()
NativeRealm
getDefaultDomain in interface NativeRealmpublic void setDefaultDomain(String domain)
NativeRealm
setDefaultDomain in interface NativeRealmdomain - the default domain name.public int getUserId()
NativeRealm
getUserId in interface NativeRealm
public void setUserId(int uid)
throws LogException
NativeRealm
setUserId in interface NativeRealmuid - the new process uid.
LogException - on errors.public int getGroupId()
NativeRealm
getGroupId in interface NativeRealm
public void setGroupId(int gid)
throws LogException
NativeRealm