com.bea.dsp.management.beans
Class MappedServiceAccountConfig

java.lang.Object
  extended by com.bea.dsp.management.beans.ServiceAccountConfig
      extended by com.bea.dsp.management.beans.MappedServiceAccountConfig
All Implemented Interfaces:
Validatable, java.io.Serializable

public final class MappedServiceAccountConfig
extends ServiceAccountConfig

A service account where local users are directly mapped to some remote user.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class com.bea.dsp.management.beans.ServiceAccountConfig
ServiceAccountConfig.Password, ServiceAccountConfig.Type
 
Constructor Summary
MappedServiceAccountConfig(java.lang.String name)
           
 
Method Summary
 void deleteRemoteUser(java.lang.String remoteUserName)
          Removes all entries for this remote user.
 java.lang.String getAnonymousRemoteUserName()
          Returns the name of the remote user to whom all the unauthenticated local users are mapped.
 java.util.Set<java.lang.String> getMappedLocalUserNames()
          Returns a non-null, unmodifieabled set of all the local user names that have been mapped to some remote user.
 java.lang.String getMappedRemoteUserForLocalUser(java.lang.String localUserName)
          Returns the name of the remote user to whom the passed local user is mapped.
 java.lang.String getOtherRemoteUserName()
          Returns the name of the remote user to whom all the authenticated local user, who do not have a mapping in localRemoteUserMapping, are mapped.
 java.util.Set<java.lang.String> getRemoteUserNames()
          Returns a non null, unmodifiable set of all the registered remote user names.
 byte[] getRemoteUserPassword(java.lang.String remoteUserName)
          Returns the encrypted password for the remote users.
 ServiceAccountConfig.Type getType()
           
 boolean isIdentityMappingEnabled()
          Returns true if identity mapping is enabled.
 void removeRemoteUserMappingForLocalUser(java.lang.String localUserName)
          Remove the mapping for the passed local user name.
 void setAnonymousRemoteUserName(java.lang.String anonymousRemoteUserName)
          Set the name of remote user to whom all the unauthenticated local users are mapped.
 void setIdentityMappingEnabled(boolean identityMappingEnabled)
          Enables identity mapping.
 void setOtherRemoteUserName(java.lang.String otherRemoteUserName)
          Set the name of remote user to whom all the authenticated local user, who do not have a mapping in localRemoteUserMapping, are mapped.
 void setRemoteUserMappingForLocalUser(java.lang.String localUserName, java.lang.String remoteUserName)
          Mapps the passed local user to the passed remote user.
 void setRemoteUserPassword(java.lang.String remoteUserName, byte[] password)
          Sets the password for a remote user.
 void setUnEncryptedRemoteUserPassword(java.lang.String remoteUserName, java.lang.String password)
          Set an uncrypted password for a remote user.
 void validate()
          Validates bean specific attributes.
 
Methods inherited from class com.bea.dsp.management.beans.ServiceAccountConfig
getDescription, getName, setDescription
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MappedServiceAccountConfig

public MappedServiceAccountConfig(java.lang.String name)
Method Detail

getType

public ServiceAccountConfig.Type getType()
Specified by:
getType in class ServiceAccountConfig

getAnonymousRemoteUserName

public java.lang.String getAnonymousRemoteUserName()
Returns the name of the remote user to whom all the unauthenticated local users are mapped. This may be null. This remote user password must be defined in the remoteUserNamePasswordMapping.

Returns:
remote user name

setAnonymousRemoteUserName

public void setAnonymousRemoteUserName(java.lang.String anonymousRemoteUserName)
Set the name of remote user to whom all the unauthenticated local users are mapped. The passed name could be null, in which anonymous requests are not supported. If not null then the passed name must be a registered remote user.

Parameters:
anonymousRemoteUserName -

getOtherRemoteUserName

public java.lang.String getOtherRemoteUserName()
Returns the name of the remote user to whom all the authenticated local user, who do not have a mapping in localRemoteUserMapping, are mapped. This remote user password must be defined in the remoteUserNamePasswordMapping.

Returns:
remote user name

setOtherRemoteUserName

public void setOtherRemoteUserName(java.lang.String otherRemoteUserName)
Set the name of remote user to whom all the authenticated local user, who do not have a mapping in localRemoteUserMapping, are mapped. The passed name could be null, in which unmapped authenticated requests are not supported. If not null then the passed name must be a registered remote user.

Parameters:
otherRemoteUserName -

getRemoteUserNames

public java.util.Set<java.lang.String> getRemoteUserNames()
Returns a non null, unmodifiable set of all the registered remote user names.

Returns:

getRemoteUserPassword

public byte[] getRemoteUserPassword(java.lang.String remoteUserName)
Returns the encrypted password for the remote users. If an unencrypted password has been set and the bean has not yet been sent to back to the mbean api then the unencrypted password would be returned (encoded in UTF-8).

Parameters:
remoteUserName -
Returns:

setRemoteUserPassword

public void setRemoteUserPassword(java.lang.String remoteUserName,
                                  byte[] password)
Sets the password for a remote user. The password passed must be encrypted.

Parameters:
remoteUserName -
password -

setUnEncryptedRemoteUserPassword

public void setUnEncryptedRemoteUserPassword(java.lang.String remoteUserName,
                                             java.lang.String password)
Set an uncrypted password for a remote user. The password would be encrypted only when the bean is sent back to the mbean api.

Parameters:
remoteUserName -
password -

deleteRemoteUser

public void deleteRemoteUser(java.lang.String remoteUserName)
Removes all entries for this remote user. This includes the password mapping, any mapping to local user and catch all anonymous and other mappings.

Parameters:
remoteUserName -

getMappedLocalUserNames

public java.util.Set<java.lang.String> getMappedLocalUserNames()
Returns a non-null, unmodifieabled set of all the local user names that have been mapped to some remote user. If identity mapping is enabled it return a non-null, unmodifieabled set of all the remote user names.

Returns:
all mapped local user names.

getMappedRemoteUserForLocalUser

public java.lang.String getMappedRemoteUserForLocalUser(java.lang.String localUserName)
Returns the name of the remote user to whom the passed local user is mapped. Returned value can be null if mapping does not exist. If identity mapping is enabled it return the passed user name if it is one among the registered remote user names.

Parameters:
localUserName -
Returns:
mapped remote user name

setRemoteUserMappingForLocalUser

public void setRemoteUserMappingForLocalUser(java.lang.String localUserName,
                                             java.lang.String remoteUserName)
Mapps the passed local user to the passed remote user. Neither of them should be null and the remote user should already have been registered. Calling this method is not allowed if identity mapping is enabled.

Parameters:
localUserName -
remoteUserName -

removeRemoteUserMappingForLocalUser

public void removeRemoteUserMappingForLocalUser(java.lang.String localUserName)
Remove the mapping for the passed local user name. Calling this method is not allowed if identity mapping is enabled.

Parameters:
localUserName -

isIdentityMappingEnabled

public boolean isIdentityMappingEnabled()
Returns true if identity mapping is enabled. When this is enabled all the remote users are automatically mapped to local users. See various local user methods for details when identity mapping is enabled.

Returns:
true if identity mapping is enabled.

setIdentityMappingEnabled

public void setIdentityMappingEnabled(boolean identityMappingEnabled)
Enables identity mapping. This can be enabled only at the time of the creation of the service account. Once persisted this value cannot be changed.

Parameters:
identityMappingEnabled -

validate

public void validate()
              throws ValidationException
Description copied from interface: Validatable
Validates bean specific attributes.

Specified by:
validate in interface Validatable
Overrides:
validate in class ServiceAccountConfig
Throws:
ValidationException - if the validation fails.


Copyright © 2007 BEA Systems Inc. All Rights Reserved.