public abstract class IdRepo extends Object
ldap
and remote
.Constructor and Description |
---|
IdRepo() |
Modifier and Type | Method and Description |
---|---|
abstract int |
addListener(SSOToken token,
IdRepoListener listener)
Adds a listener for changes in the repository
|
abstract void |
assignService(SSOToken token,
IdType type,
String name,
String serviceName,
SchemaType stype,
Map<String,Set<String>> attrMap)
This method is used to assign a service to the given identity.
|
boolean |
authenticate(Callback[] credentials)
Returns
true if the data store successfully authenticates
the identity with the provided credentials. |
void |
changePassword(SSOToken token,
IdType type,
String name,
String attrName,
String oldPassword,
String newPassword)
Changes password of identity.
|
abstract String |
create(SSOToken token,
IdType type,
String name,
Map<String,Set<String>> attrMap)
Creates an identity.
|
abstract void |
delete(SSOToken token,
IdType type,
String name)
Deletes an identity.
|
abstract Set<String> |
getAssignedServices(SSOToken token,
IdType type,
String name,
Map<String,Set<String>> mapOfServicesAndOCs)
Returns the set of services assigned to this identity.
|
abstract Map<String,Set<String>> |
getAttributes(SSOToken token,
IdType type,
String name)
Returns all attributes and values of name object
|
abstract Map<String,Set<String>> |
getAttributes(SSOToken token,
IdType type,
String name,
Set<String> attrNames)
Returns requested attributes and values of name object.
|
abstract Map<String,byte[][]> |
getBinaryAttributes(SSOToken token,
IdType type,
String name,
Set<String> attrNames)
Returns requested binary attributes as an array of bytes.
|
abstract Map<String,byte[][]> |
getBinaryServiceAttributes(SSOToken token,
IdType type,
String name,
String serviceName,
Set<String> attrNames)
Returns the requested binary attribute values of the service attributes
as an array of bytes.
|
Map<String,Set<String>> |
getConfiguration()
Return the configuration map
|
String |
getFullyQualifiedName(SSOToken token,
IdType type,
String name)
Returns the fully qualified name for the identity.
|
abstract Set<String> |
getMembers(SSOToken token,
IdType type,
String name,
IdType membersType)
Returns the memberships of an identity.
|
abstract Set<String> |
getMemberships(SSOToken token,
IdType type,
String name,
IdType membershipType)
Returns the memberships of an identity.
|
Optional<String> |
getObjectId(IdType type,
String name)
Returns an identifier for an identity which can be used as a reference in audit logs.
|
abstract Map<String,Set<String>> |
getServiceAttributes(SSOToken token,
IdType type,
String name,
String serviceName,
Set<String> attrNames)
Returns the attribute values of the service attributes.
|
Set<IdOperation> |
getSupportedOperations(IdType type)
Return supported operations for a given IdType
|
Set<IdType> |
getSupportedTypes() |
void |
initialize(Map<String,Set<String>> configParams)
Initialization paramters as configred for a given plugin.
|
boolean |
isActive(SSOToken token,
IdType type,
String name)
Returns true if the
name object is active. |
abstract boolean |
isExists(SSOToken token,
IdType type,
String name)
Returns true if the
name object exists in the data store. |
abstract void |
modifyMemberShip(SSOToken token,
IdType type,
String name,
Set<String> members,
IdType membersType,
int operation)
Modify membership of the identity.
|
abstract void |
modifyService(SSOToken token,
IdType type,
String name,
String serviceName,
SchemaType sType,
Map<String,Set<String>> attrMap)
Modifies the attribute values of the service attributes.
|
abstract void |
removeAttributes(SSOToken token,
IdType type,
String name,
Set<String> attrNames)
Removes the attributes from the identity.
|
abstract void |
removeListener()
Removes the listener added using
addListener method. |
abstract RepoSearchResults |
search(SSOToken token,
IdType type,
CrestQuery crestQuery,
int maxTime,
int maxResults,
Set<String> returnAttrs,
boolean returnAllAttrs,
int filterOp,
Map<String,Set<String>> avPairs,
boolean recursive)
Search for specific type of identities using a CrestQuery object instead of a string.
|
abstract void |
setActiveStatus(SSOToken token,
IdType type,
String name,
boolean active)
Sets the object's status to
active . |
abstract void |
setAttributes(SSOToken token,
IdType type,
String name,
Map<String,Set<String>> attributes,
boolean isAdd)
Set the values of attributes of the identity.
|
abstract void |
setBinaryAttributes(SSOToken token,
IdType type,
String name,
Map<String,byte[][]> attributes,
boolean isAdd)
Set the values of binary attributes the identity.
|
void |
shutdown()
This method is invoked just before the plugin is removed from the IdRepo
cache of plugins.
|
boolean |
supportsAuthentication()
Returns
true if the data store supports authentication of
identities. |
abstract void |
unassignService(SSOToken token,
IdType type,
String name,
String serviceName,
Map<String,Set<String>> attrMap)
If the service is already assigned to the identity then
this method unassigns the service and removes the related
attributes from the entry.
|
public void initialize(Map<String,Set<String>> configParams) throws IdRepoException
configParams
- The configuration parameters.IdRepoException
- If there was an error during initialization.public void shutdown()
public Set<IdOperation> getSupportedOperations(IdType type)
type
- Identity typepublic Set<IdType> getSupportedTypes()
public abstract boolean isExists(SSOToken token, IdType type, String name) throws IdRepoException, SSOException
name
object exists in the data store.token
- Single sign on token of identity performing the task.type
- Identity type of this object.name
- Name of the object of interest.true
if name object is in data store
else false
IdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public boolean isActive(SSOToken token, IdType type, String name) throws IdRepoException, SSOException
name
object is active.token
- Single sign on token of identity performing the task.type
- Identity type of this object.name
- Name of the object of interest.true
if name object is in active
else false
IdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public abstract void setActiveStatus(SSOToken token, IdType type, String name, boolean active) throws IdRepoException, SSOException
active
.token
- Single sign on token of identity performing the task.type
- Identity type of this object.name
- Name of the object of interest.active
- true if setting to active; false otherwise.IdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public abstract Map<String,Set<String>> getAttributes(SSOToken token, IdType type, String name) throws IdRepoException, SSOException
token
- Single sign on token of identity performing the task.type
- Identity type of this object.name
- Name of the object of interest.IdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public abstract Map<String,Set<String>> getAttributes(SSOToken token, IdType type, String name, Set<String> attrNames) throws IdRepoException, SSOException
token
- Single sign on token of identity performing the task.type
- Identity type of this object.name
- Name of the object of interest.attrNames
- Set of attribute names to be readIdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public abstract Map<String,byte[][]> getBinaryAttributes(SSOToken token, IdType type, String name, Set<String> attrNames) throws IdRepoException, SSOException
token
- Single sign on token of identity performing the task.type
- Identity type of this object.name
- Name of the object of interest.attrNames
- Set of attribute names to be readIdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public abstract String create(SSOToken token, IdType type, String name, Map<String,Set<String>> attrMap) throws IdRepoException, SSOException
token
- Single sign on token of identity performing the task.type
- Identity type of this object.name
- Name of the object of interest.attrMap
- Map of attribute-values assoicated with this object.IdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public abstract void delete(SSOToken token, IdType type, String name) throws IdRepoException, SSOException
token
- Single sign on token of identity performing the task.type
- Identity type of this object.name
- Name of the object of interest.IdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public abstract void setAttributes(SSOToken token, IdType type, String name, Map<String,Set<String>> attributes, boolean isAdd) throws IdRepoException, SSOException
token
- Single sign on token of identity performing the task.type
- Identity type of this object.name
- Name of the object of interest.attributes
- Map of attribute-values to set or add.isAdd
- if true
add the attribute-values; otherwise
replaces the attribute-values.IdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public abstract void setBinaryAttributes(SSOToken token, IdType type, String name, Map<String,byte[][]> attributes, boolean isAdd) throws IdRepoException, SSOException
token
- Single sign on token of identity performing the task.type
- Identity type of this object.name
- Name of the object of interest.attributes
- Map of binary attribute-values to set or add.isAdd
- if true
add the attribute-values; otherwise
replaces the attribute-values.IdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public void changePassword(SSOToken token, IdType type, String name, String attrName, String oldPassword, String newPassword) throws IdRepoException, SSOException
token
- Single sign on token of identity performing the task.type
- identity type of this object.name
- name of the object of interest.attrName
- password attribute nameoldPassword
- old passwordnewPassword
- new passwordIdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public abstract void removeAttributes(SSOToken token, IdType type, String name, Set<String> attrNames) throws IdRepoException, SSOException
token
- Single sign on token of identity performing the task.type
- Identity type of this object.name
- Name of the object of interest.attrNames
- Set of attribute names to remove.IdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public abstract RepoSearchResults search(SSOToken token, IdType type, CrestQuery crestQuery, int maxTime, int maxResults, Set<String> returnAttrs, boolean returnAllAttrs, int filterOp, Map<String,Set<String>> avPairs, boolean recursive) throws IdRepoException, SSOException
token
- Single sign on token of identity performing the task.type
- Identity type of this object.crestQuery
- pattern to search for, of type CrestQuery
.maxTime
- maximum wait time for search.maxResults
- maximum records to return.returnAttrs
- Set of attribute names to return.returnAllAttrs
- return all attributesfilterOp
- filter condition.avPairs
- additional search conditions.IdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public abstract void modifyMemberShip(SSOToken token, IdType type, String name, Set<String> members, IdType membersType, int operation) throws IdRepoException, SSOException
token
- Single sign on token of identity performing the task.type
- Identity type of this object.name
- Name of the object of interest.members
- Set of names to be added as members of namemembersType
- IdType of members.operation
- operations to perform on members ADDMEMBER or REMOVEMEMBER.IdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public abstract Set<String> getMembers(SSOToken token, IdType type, String name, IdType membersType) throws IdRepoException, SSOException
token
- Single sign on token of identity performing the task.type
- Identity type of this object.name
- Name of the object of interest.membersType
- IdType of members of name object.name
IdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public abstract Set<String> getMemberships(SSOToken token, IdType type, String name, IdType membershipType) throws IdRepoException, SSOException
token
- Single sign on token of identity performing the task.type
- Identity type of this object.name
- Name of the object of interest.membershipType
- IdType of memberships to return.name
is a member of.IdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public abstract void assignService(SSOToken token, IdType type, String name, String serviceName, SchemaType stype, Map<String,Set<String>> attrMap) throws IdRepoException, SSOException
token
- Single sign on token of identity performing the task.type
- Identity type of this object.name
- Name of the object of interest.serviceName
- service to assignstype
- The schema type for the service.attrMap
- Map of attribute-values.IdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public abstract Set<String> getAssignedServices(SSOToken token, IdType type, String name, Map<String,Set<String>> mapOfServicesAndOCs) throws IdRepoException, SSOException
token
- Single sign on token of identity performing the task.type
- Identity type of this object.name
- Name of the object of interest.mapOfServicesAndOCs
- The service->objectclass mapping.name
IdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public abstract void unassignService(SSOToken token, IdType type, String name, String serviceName, Map<String,Set<String>> attrMap) throws IdRepoException, SSOException
token
- Single sign on token of identity performing the task.type
- Identity type of this object.name
- Name of the object of interest.serviceName
- Service name to remove.attrMap
- Map of attribute-values to removeIdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public abstract Map<String,Set<String>> getServiceAttributes(SSOToken token, IdType type, String name, String serviceName, Set<String> attrNames) throws IdRepoException, SSOException
token
- Single sign on token of identity performing the task.type
- Identity type of this object.name
- Name of the object of interest.serviceName
- Name of service.attrNames
- Set of attribute names.IdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public abstract Map<String,byte[][]> getBinaryServiceAttributes(SSOToken token, IdType type, String name, String serviceName, Set<String> attrNames) throws IdRepoException, SSOException
token
- Single sign on token of identity performing the task.type
- Identity type of this object.name
- Name of the object of interest.serviceName
- Name of service.attrNames
- Set of attribute names.IdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public abstract void modifyService(SSOToken token, IdType type, String name, String serviceName, SchemaType sType, Map<String,Set<String>> attrMap) throws IdRepoException, SSOException
token
- Single sign on token of identity performing the task.type
- Identity type of this object.name
- Name of the object of interest.serviceName
- Name of service.sType
- The schema type for the service.attrMap
- map of attribute-values.IdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public abstract int addListener(SSOToken token, IdRepoListener listener) throws IdRepoException, SSOException
token
- Single sign on token of identity performing the task.listener
- The listener to register.IdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public abstract void removeListener()
addListener
method. This
is called by the IdRepo framework when the plugin is being shutdown due
to configuration change, so that a new instance can be created with the
new configuration map.public Map<String,Set<String>> getConfiguration()
public String getFullyQualifiedName(SSOToken token, IdType type, String name) throws IdRepoException, SSOException
token
- administrator SSOToken that can be used by the datastore to
determine the fully qualified nametype
- type of the identityname
- name of the identityIdRepoException
- If there are repository related error conditions.SSOException
- If identity's single sign on token is invalid.public Optional<String> getObjectId(IdType type, String name) throws IdRepoException
Unlike IdRepo.getFullyQualifiedName(com.iplanet.sso.SSOToken, com.sun.identity.idm.IdType, java.lang.String)
this reference should not attempt to encode the details of the
store as part of the returned identifier. However, ideally the reference does allow the persisted state
to be located within the store.
The default implementation of this method returns Optional.empty()
.
type
- type of the identityname
- name of the identityIdRepoException
- If there are repository related error conditions.public boolean supportsAuthentication()
true
if the data store supports authentication of
identities. Used by IdRepo framework to authenticate identities.true
if data store supports authentication of of
identities; else false
public boolean authenticate(Callback[] credentials) throws IdRepoException, AuthLoginException
true
if the data store successfully authenticates
the identity with the provided credentials. In case the data store
requires additional credentials, the list would be returned via the
IdRepoException
exception.credentials
- Array of callback objects containing information such as
username and password.true
if data store authenticates the identity;
else false
IdRepoException
AuthLoginException
Copyright © 2010-2018, ForgeRock All Rights Reserved.