Package com.pingidentity.sdk.provision
Interface IdentityStoreProvisioner
- All Superinterfaces:
ConfigurablePlugin,DescribablePlugin,Plugin
- All Known Subinterfaces:
IdentityStoreProvisionerWithFiltering
The primary Identity Store Provisioner interface. Used to provision and deprovision users and groups to an external data store.
- Since:
- 7.3
-
Method Summary
Modifier and TypeMethodDescriptioncreateGroup(CreateGroupRequestContext createRequestCtx) Create a group.createUser(CreateUserRequestContext createRequestCtx) Create a user.voiddeleteGroup(DeleteGroupRequestContext deleteRequestCtx) Delete a group.voiddeleteUser(DeleteUserRequestContext deleteRequestCtx) Delete a user.The PingFederate server will invoke this method on your IdentityStoreProvisioner implementation to discover metadata about the implementation.booleanIndicate if group provisioning is implemented or not.readGroup(ReadGroupRequestContext readRequestCtx) Read a group.readUser(ReadUserRequestContext readRequestCtx) Read a user.updateGroup(UpdateGroupRequestContext updateRequestCtx) Update a group.updateUser(UpdateUserRequestContext updateRequestCtx) Update a user.Methods inherited from interface com.pingidentity.sdk.ConfigurablePlugin
configureMethods inherited from interface com.pingidentity.sdk.DescribablePlugin
getPluginDescriptor
-
Method Details
-
getIdentityStoreProvisionerDescriptor
IdentityStoreProvisionerDescriptor getIdentityStoreProvisionerDescriptor()The PingFederate server will invoke this method on your IdentityStoreProvisioner implementation to discover metadata about the implementation. This includes the provisioner's user and group attribute contracts and a description of what configuration fields to render in the GUI.
The descriptor returned here should be the same object returned by theDescribablePlugin.getPluginDescriptor()method. Your implementation of this method should return the same IdentityStoreProvisionerDescriptor object from call to call - behaviour of the system is undefined if this convention is not followed.- Returns:
- an IdentityStoreProvisionerDescriptor object that describes this Identity store provisioner implementation.
-
createUser
UserResponseContext createUser(CreateUserRequestContext createRequestCtx) throws IdentityStoreException Create a user. At a minimum, theUserResponseContextshould contain the following attributes within the user attribute map:Constants.IDConstants.WHEN_CHANGED- returned as aDateConstants.WHEN_CREATED- returned as aDate
- Parameters:
createRequestCtx- The Request Context containing all the information needed to fulfill the request, e.g. user attributes.- Returns:
- A
UserResponseContextcontaining the results of an Identity Store provisioning operation. - Throws:
IdentityStoreException- An exception indicating that the Identity Store Provisioner operation failed.
-
readUser
Read a user. At a minimum, theUserResponseContextshould contain the following attributes within the user attribute map:Constants.IDConstants.WHEN_CHANGED- returned as aDateConstants.WHEN_CREATED- returned as aDate
- Parameters:
readRequestCtx- The Request Context containing all the information needed to fulfill the request, e.g. user id.- Returns:
- A
UserResponseContextcontaining the results of an Identity Store provisioning operation. - Throws:
IdentityStoreException- An exception indicating that the Identity Store Provisioner operation failed.
-
updateUser
UserResponseContext updateUser(UpdateUserRequestContext updateRequestCtx) throws IdentityStoreException Update a user. At a minimum, theUserResponseContextshould contain the following attributes within the user attribute map:Constants.IDConstants.WHEN_CHANGED- returned as aDateConstants.WHEN_CREATED- returned as aDate
- Parameters:
updateRequestCtx- The Request Context containing all the information needed to fulfill the request, e.g. user attributes.- Returns:
- A
UserResponseContextcontaining the results of an Identity Store provisioning operation. - Throws:
IdentityStoreException- An exception indicating that the Identity Store Provisioner operation failed.
-
deleteUser
Delete a user. Note: The plugin implementation fordeleteUserMAY choose not to permanently delete the user, but MUST return aNotFoundExceptionfor allreadUser,updateUser, anddeleteUseroperations associated with the previously deleted ID. In addition, the plugin MUST not consider the deleted user in conflict calculation. For example, acreateUserrequest for a user with a previously deleted id should NOT throw aConflictException.- Parameters:
deleteRequestCtx- The Request Context containing all the information needed to fulfill the request, e.g. user id.- Throws:
IdentityStoreException- An exception indicating that the Identity Store Provisioner operation failed.
-
readGroup
GroupResponseContext readGroup(ReadGroupRequestContext readRequestCtx) throws IdentityStoreException Read a group. At a minimum, theGroupResponseContextshould contain the following attributes within the group attribute map:Constants.IDConstants.WHEN_CHANGED- returned as aDateConstants.WHEN_CREATED- returned as aDate
- Parameters:
readRequestCtx- The Request Context containing all the information needed to fulfill the request, e.g. group id.- Returns:
- A
GroupResponseContextcontaining the results of an Identity Store provisioning operation. - Throws:
IdentityStoreException- An exception indicating that the Identity Store Provisioner operation failed.
-
createGroup
GroupResponseContext createGroup(CreateGroupRequestContext createRequestCtx) throws IdentityStoreException Create a group. At a minimum, theGroupResponseContextshould contain the following attributes within the group attribute map:Constants.IDConstants.WHEN_CHANGED- returned as aDateConstants.WHEN_CREATED- returned as aDate
- Parameters:
createRequestCtx- The Request Context containing all the information needed to fulfill the request, e.g. group attributes.- Returns:
- A
GroupResponseContextcontaining the results of an Identity Store provisioning operation. - Throws:
IdentityStoreException- An exception indicating that the Identity Store Provisioner operation failed.
-
deleteGroup
Delete a group. Note: The plugin implementation fordeleteGroupMAY choose not to permanently delete the group, but MUST return aNotFoundExceptionfor allreadGroup,updateGroup, anddeleteGroupoperations associated with the previously deleted ID. In addition, the plugin MUST not consider the deleted group in conflict calculation. For example, acreateGrouprequest for a group with a previously deleted id should NOT throw aConflictException.- Parameters:
deleteRequestCtx- The Request Context containing all the information needed to fulfill the request, e.g. group id.- Throws:
IdentityStoreException- An exception indicating that the Identity Store Provisioner operation failed.
-
updateGroup
GroupResponseContext updateGroup(UpdateGroupRequestContext updateRequestCtx) throws IdentityStoreException Update a group. At a minimum, theGroupResponseContextshould contain the following attributes within the group attribute map:Constants.IDConstants.WHEN_CHANGED- returned as aDateConstants.WHEN_CREATED- returned as aDate
- Parameters:
updateRequestCtx- The Request Context containing all the information needed to fulfill the request, e.g. group attributes.- Returns:
- A
GroupResponseContextcontaining the results of an Identity Store provisioning operation. - Throws:
IdentityStoreException- An exception indicating that the Identity Store Provisioner operation failed.
-
isGroupProvisioningSupported
boolean isGroupProvisioningSupported()Indicate if group provisioning is implemented or not. If group provisioning is not implemented thenreadGroup,createGroup,updateGroup, anddeleteGroupshould throwNotImplementedException.- Returns:
- true if group provisioning is supported by the plugin implementation and false otherwise.
- Throws:
IdentityStoreException- An exception indicating that the Identity Store Provisioner operation failed.
-