public class SecurityServerClientImpl extends Object implements SecurityServerClient
This class with establish a connection with the Crowd security server,
authenticate the application client and store the authentication token
for the client for server operations. If the token becomes invalid,
a new authentication token will be obtained and the request will run again.
If the request fails a InvalidAuthorizationTokenException
exception will be thrown.
This bean should be used in a singleton fashion.
for a singleton factory implementation.
Modifier and Type | Field and Description |
---|---|
protected AuthenticatedToken |
applicationToken |
protected org.codehaus.xfire.client.XFireProxyFactory |
factory |
protected org.codehaus.xfire.service.Service |
service |
Constructor and Description |
---|
SecurityServerClientImpl(SoapClientProperties clientProperties) |
Modifier and Type | Method and Description |
---|---|
void |
addAllPrincipals(Collection<SOAPPrincipalWithCredential> principals)
Adds principals to the application's assigned directory.
|
void |
addAttributeToGroup(String group,
SOAPAttribute attribute)
Adds an attribute to a group that is in the application's assigned directory.
|
void |
addAttributeToPrincipal(String principal,
SOAPAttribute attribute)
Adds an attribute to a principal who is in the application's assigned directory.
|
SOAPGroup |
addGroup(SOAPGroup group)
Adds a group to the application's assigned directory.
|
SOAPPrincipal |
addPrincipal(SOAPPrincipal principal,
PasswordCredential credential)
Adds a principal to the application's assigned directory.
|
void |
addPrincipalToGroup(String principal,
String group)
Adds a principal to a group for the application's assigned directory.
|
void |
addPrincipalToRole(String principal,
String role)
Adds the principal to a role for the application's assigned directory.
|
SOAPRole |
addRole(SOAPRole role)
Adds a role to the application's assigned directory.
|
void |
authenticate()
Authenticate the client using the application name and password
from crowd.properties.
|
String |
authenticatePrincipal(UserAuthenticationContext userAuthenticationContext)
Authenticates a principal who is in the application's assigned directory.
|
String |
authenticatePrincipalSimple(String username,
String password)
Authenticates a principal without SSO details utilizing centralized authentication only.
|
String |
createPrincipalToken(String username,
ValidationFactor[] validationFactors)
Authenticates a principal without validating a password.
|
String[] |
findAllGroupNames()
Finds all of the groups who are visible in the application's assigned directory.
|
SOAPNestableGroup[] |
findAllGroupRelationships()
Finds all of the groups who are visible in the application's assigned directory.
|
SOAPGroup[] |
findAllGroups()
Retrieves all groups in the application's assigned directories.
|
String[] |
findAllPrincipalNames()
Finds all of the principals who are visible in the application's assigned directory.
|
SOAPPrincipal[] |
findAllPrincipals()
Retrieves all principals in the application's assigned directories.
|
String[] |
findAllRoleNames()
Finds all of the roles who are visible in the application's assigned directory.
|
SOAPRole[] |
findAllRoles()
Retrieves all roles in the application's assigned directories.
|
SOAPGroup |
findGroupByName(String name)
Find a group by name for the application's assigned directory.
|
String[] |
findGroupMemberships(String principalName)
Finds all the groups the principal is a direct member of.
|
SOAPGroup |
findGroupWithAttributesByName(String name)
Find a group by name for the application's assigned directory.
|
SOAPPrincipal |
findPrincipalByName(String name)
Finds a principal by name who is in the application's assigned directory.
|
SOAPPrincipal |
findPrincipalByToken(String key)
Finds a principal by token.
|
SOAPPrincipal |
findPrincipalWithAttributesByName(String name)
Finds a principal by name who is in the application's assigned directory.
|
SOAPRole |
findRoleByName(String name)
Finds a role by name for the application's assigned directory.
|
String[] |
findRoleMemberships(String principalName)
Finds all the roles the principal is a member of.
|
AuthenticatedToken |
getApplicationToken()
Retrieve the current application token.
|
long |
getCacheTime()
Gets the amount of time a client should cache security information from the Crowd server.
|
SOAPCookieInfo |
getCookieInfo()
Returns information needed to set the SSO cookie correctly.
|
String |
getDomain()
This will return the domain configured in Crowd or null if no domain has been set.
|
String[] |
getGrantedAuthorities()
Will return the List of group names that have been given access to connect to the application
|
protected SecurityServer |
getSecurityServer()
Create and return an instance to the Crowd SecurityServer.
|
SoapClientProperties |
getSoapClientProperties()
Retrieve the SOAP client properties used to connect to the Crowd Security Server.
|
void |
invalidateToken(String token)
Invalidates a principal token for all integrated applications.
|
boolean |
isCacheEnabled()
Checks if the client application should cache security information from the Crowd server.
|
boolean |
isGroupMember(String group,
String principal)
Checks if a principal is a member of a group for the application's assigned directory.
|
boolean |
isRoleMember(String role,
String principal)
Checks if a principal is a member of a role for the application's assigned directory.
|
boolean |
isValidToken(String principalToken,
ValidationFactor[] validationFactors)
Checks if the principal's current token is still valid.
|
void |
removeAttributeFromGroup(String group,
String attribute)
Removes an attribute from a group that is in the application's assigned directory.
|
void |
removeAttributeFromPrincipal(String principal,
String attribute)
Removes an attribute from a principal who is in the application's assigned directory.
|
void |
removeGroup(String group)
Removes a group from the application's assigned directory.
|
void |
removePrincipal(String principal)
Removes a principal from the application's assigned directory.
|
void |
removePrincipalFromGroup(String principal,
String group)
Removes a principal from a group for the application's assigned directory.
|
void |
removePrincipalFromRole(String principal,
String role)
Removes a principal from a role for the application's assigned directory.
|
void |
removeRole(String role)
Removes a role from the application's assigned directory.
|
void |
resetPrincipalCredential(String principal)
Resets a principal's password credential to a random password and emails the new password who is in the application's assigned directory.
|
SOAPGroup[] |
searchGroups(SearchRestriction[] searchRestrictions)
Searches for groups that are in the application's assigned directory.
|
SOAPPrincipal[] |
searchPrincipals(SearchRestriction[] searchRestrictions)
Searches for principals that are in the application's assigned directory.
|
SOAPRole[] |
searchRoles(SearchRestriction[] searchRestrictions)
Searches for roles that are in the application's assigned directory.
|
void |
updateGroup(String group,
String description,
boolean active)
Updates the first group located from the list of directories assigned to an application
Available fields that can be updated are
description and active |
void |
updateGroupAttribute(String name,
SOAPAttribute attribute)
Updates an attribute for a group that is in the application's assigned directory.
|
void |
updatePrincipalAttribute(String name,
SOAPAttribute attribute)
Updates an attribute for a principal who is in the application's assigned directory.
|
void |
updatePrincipalCredential(String principal,
PasswordCredential credential)
Updates the password credential for a principal who is in the application's assigned directory.
|
protected AuthenticatedToken applicationToken
protected org.codehaus.xfire.service.Service service
protected org.codehaus.xfire.client.XFireProxyFactory factory
public SecurityServerClientImpl(SoapClientProperties clientProperties)
clientProperties
- properties used to configure the client.protected SecurityServer getSecurityServer() throws RemoteException
RemoteException
- there is a problem connecting to the Crowd Security Server.public AuthenticatedToken getApplicationToken() throws RemoteException, InvalidAuthorizationTokenException, InvalidAuthenticationException
If this client is not authenticated, then authenticate prior to returning the token.
RemoteException
- there was a problem communicating with the Crowd Security Server.InvalidAuthorizationTokenException
- incorrect credentials were used to authenticate the client.
Ensure the application.password in crowd.properties matches the one defined in the Crowd console.InvalidAuthenticationException
- if the application name/password combination is invalidpublic void authenticate() throws RemoteException, InvalidAuthorizationTokenException, InvalidAuthenticationException
SecurityServerClient
NOTE: this will perform an explicit authentication call to the server. There is no reason to directly call this as all the methods will automatically attempt to authenticate when required.
authenticate
in interface SecurityServerClient
RemoteException
- there was a problem communicating with the Crowd Security Server.InvalidAuthorizationTokenException
- the newly created application token is invalid.InvalidAuthenticationException
- application authentication is not valid. Ensure the application.password
in crowd.properties matches the one defined in the Crowd console.public String authenticatePrincipal(UserAuthenticationContext userAuthenticationContext) throws RemoteException, InvalidAuthorizationTokenException, InvalidAuthenticationException, InactiveAccountException, ApplicationAccessDeniedException, ExpiredCredentialException
SecurityServerClient
authenticatePrincipal
in interface SecurityServerClient
userAuthenticationContext
- The principal's authentication details.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.InvalidAuthenticationException
- The principal's authentication details were invalid.InactiveAccountException
- The principal's account is not active.ApplicationAccessDeniedException
- if the user does not have access to this application.ExpiredCredentialException
- The user's credentials have expired.public boolean isValidToken(String principalToken, ValidationFactor[] validationFactors) throws RemoteException, InvalidAuthorizationTokenException, ApplicationAccessDeniedException, InvalidAuthenticationException
SecurityServerClient
isValidToken
in interface SecurityServerClient
principalToken
- The token to check.validationFactors
- The known identity factors used when creating the principal's token.true
if and only if the token is active, otherwise false
.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.ApplicationAccessDeniedException
- if the user does not have access to this application.InvalidAuthenticationException
- application authentication is not validpublic void invalidateToken(String token) throws RemoteException, InvalidAuthorizationTokenException, InvalidAuthenticationException
SecurityServerClient
invalidateToken
in interface SecurityServerClient
token
- The token to invalidate.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.InvalidAuthenticationException
- application authentication is not validpublic SOAPGroup[] searchGroups(SearchRestriction[] searchRestrictions) throws RemoteException, InvalidAuthorizationTokenException, InvalidAuthenticationException
SecurityServerClient
searchGroups
in interface SecurityServerClient
searchRestrictions
- The search restrictions to use when performing this search.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.InvalidAuthenticationException
- application authentication is not validpublic SOAPPrincipal[] searchPrincipals(SearchRestriction[] searchRestrictions) throws RemoteException, InvalidAuthorizationTokenException, InvalidAuthenticationException
SecurityServerClient
searchPrincipals
in interface SecurityServerClient
searchRestrictions
- The search restrictions to use when performing this search.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.InvalidAuthenticationException
- application authentication is not validpublic SOAPRole[] searchRoles(SearchRestriction[] searchRestrictions) throws RemoteException, InvalidAuthorizationTokenException, InvalidAuthenticationException
SecurityServerClient
searchRoles
in interface SecurityServerClient
searchRestrictions
- The search restrictions to use when performing this search.RemoteException
- An unknown remote exception occured.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.InvalidAuthenticationException
- application authentication is not validpublic SOAPGroup[] findAllGroups() throws RemoteException, InvalidAuthorizationTokenException, InvalidAuthenticationException
SecurityServerClient
findAllGroups
in interface SecurityServerClient
RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.InvalidAuthenticationException
- application authentication is not validpublic SOAPRole[] findAllRoles() throws RemoteException, InvalidAuthorizationTokenException, InvalidAuthenticationException
SecurityServerClient
findAllRoles
in interface SecurityServerClient
RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.InvalidAuthenticationException
- application authentication is not validpublic SOAPPrincipal[] findAllPrincipals() throws RemoteException, InvalidAuthorizationTokenException, InvalidAuthenticationException
SecurityServerClient
findAllPrincipals
in interface SecurityServerClient
RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.InvalidAuthenticationException
- application authentication is not validpublic SOAPGroup addGroup(SOAPGroup group) throws RemoteException, InvalidGroupException, InvalidAuthorizationTokenException, ApplicationPermissionException, InvalidAuthenticationException
SecurityServerClient
addGroup
in interface SecurityServerClient
group
- The group to add.RemoteException
- An unknown remote exception occurred.InvalidGroupException
- An error occured adding the group to the directory server.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.ApplicationPermissionException
- The application does not have the proper permissions to add the entity to the directory server.InvalidAuthenticationException
- application authentication is not validpublic void updateGroup(String group, String description, boolean active) throws RemoteException, InvalidAuthorizationTokenException, GroupNotFoundException, ApplicationPermissionException, InvalidAuthenticationException
SecurityServerClient
description
and active
updateGroup
in interface SecurityServerClient
group
- The name of the group to update.description
- the new description of the group.active
- the new active flag for the group.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.GroupNotFoundException
- no groups matching the supplied name is found.ApplicationPermissionException
- The application does not have the proper permissions to update the entity to the directory server.InvalidAuthenticationException
- application authentication is not validpublic SOAPGroup findGroupByName(String name) throws RemoteException, InvalidAuthorizationTokenException, GroupNotFoundException, InvalidAuthenticationException
SecurityServerClient
findGroupByName
in interface SecurityServerClient
name
- The name of the group.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.GroupNotFoundException
- Unable to find the specific group.InvalidAuthenticationException
- application authentication is not validpublic SOAPGroup findGroupWithAttributesByName(String name) throws RemoteException, InvalidAuthorizationTokenException, GroupNotFoundException, InvalidAuthenticationException
SecurityServerClient
This will retrieve the group and all its attributes.
findGroupWithAttributesByName
in interface SecurityServerClient
name
- The name of the group.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.GroupNotFoundException
- Unable to find the specific group.InvalidAuthenticationException
- application authentication is not validpublic SOAPRole addRole(SOAPRole role) throws RemoteException, InvalidAuthorizationTokenException, InvalidRoleException, ApplicationPermissionException, InvalidAuthenticationException
SecurityServerClient
addRole
in interface SecurityServerClient
role
- The name of the role.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.InvalidRoleException
- An error occured adding the role to the directory server.ApplicationPermissionException
- The application does not have the proper permissions to add the entity to the directory server.InvalidAuthenticationException
- application authentication is not validpublic SOAPRole findRoleByName(String name) throws RemoteException, InvalidAuthorizationTokenException, GroupNotFoundException, InvalidAuthenticationException
SecurityServerClient
findRoleByName
in interface SecurityServerClient
name
- The name of the role.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.GroupNotFoundException
- Unable to find the specified role.InvalidAuthenticationException
- application authentication is not validpublic SOAPPrincipal findPrincipalByToken(String key) throws RemoteException, InvalidTokenException, InvalidAuthorizationTokenException, InvalidAuthenticationException
SecurityServerClient
findPrincipalByToken
in interface SecurityServerClient
key
- The principal's token.RemoteException
- An unknown remote exception occurred.InvalidTokenException
- Unable to find the specified token.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.InvalidAuthenticationException
- application authentication is not validpublic void updatePrincipalAttribute(String name, SOAPAttribute attribute) throws RemoteException, ApplicationPermissionException, InvalidAuthorizationTokenException, UserNotFoundException, InvalidAuthenticationException
SecurityServerClient
Note: This is the same as calling addAttributeToPrincipal
updatePrincipalAttribute
in interface SecurityServerClient
name
- The name of the principal.attribute
- The name of the attribute to update.RemoteException
- An unknown remote exception occurred.ApplicationPermissionException
- The application does not have the proper permissions to update the entity in the directory server.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.UserNotFoundException
- Unable to find the specified principal.InvalidAuthenticationException
- application authentication is not validpublic void updateGroupAttribute(String name, SOAPAttribute attribute) throws RemoteException, ApplicationPermissionException, InvalidAuthorizationTokenException, GroupNotFoundException, InvalidAuthenticationException
SecurityServerClient
Note: This is the same as calling addAttributeToGroup
updateGroupAttribute
in interface SecurityServerClient
name
- The name of the group.attribute
- The name of the attribute to update.RemoteException
- An unknown remote exception occurred.ApplicationPermissionException
- The application does not have the proper permissions to update the entity in the directory server.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.GroupNotFoundException
- Unable to find the specified principal.InvalidAuthenticationException
- application authentication is not validpublic SOAPPrincipal findPrincipalByName(String name) throws RemoteException, InvalidAuthorizationTokenException, UserNotFoundException, InvalidAuthenticationException
SecurityServerClient
findPrincipalByName
in interface SecurityServerClient
name
- The name of the principal.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.UserNotFoundException
- Unable to find the specified principal.InvalidAuthenticationException
- application authentication is not validpublic SOAPPrincipal findPrincipalWithAttributesByName(String name) throws RemoteException, InvalidAuthorizationTokenException, UserNotFoundException, InvalidAuthenticationException
SecurityServerClient
This will retrieve the principal and all its attributes.
findPrincipalWithAttributesByName
in interface SecurityServerClient
name
- The name of the principal.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.UserNotFoundException
- Unable to find the specified principal.InvalidAuthenticationException
- application authentication is not validpublic SOAPPrincipal addPrincipal(SOAPPrincipal principal, PasswordCredential credential) throws RemoteException, InvalidAuthorizationTokenException, InvalidCredentialException, InvalidUserException, ApplicationPermissionException, InvalidAuthenticationException
SecurityServerClient
addPrincipal
in interface SecurityServerClient
principal
- The populated principal object to added.credential
- The password for the principal.RemoteException
- An unknown remote exception occured.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.InvalidCredentialException
- The supplied password is invalid.InvalidUserException
- The supplied principal is invalid.ApplicationPermissionException
- The application does not have the proper permissions to add the entity to the directory server.InvalidAuthenticationException
- application authentication is not validpublic void addAllPrincipals(Collection<SOAPPrincipalWithCredential> principals) throws InvalidAuthorizationTokenException, RemoteException, ApplicationPermissionException, BulkAddFailedException, InvalidAuthenticationException
SecurityServerClient
addAllPrincipals
in interface SecurityServerClient
principals
- Array of SOAPPrincipalWithCredential
InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.RemoteException
- An unknown remote exception occurred.ApplicationPermissionException
- thrown when no Create User Permission for any of the directories.BulkAddFailedException
- throw when it failed to create a user in of the directories.InvalidAuthenticationException
- application authentication is not validpublic void addPrincipalToGroup(String principal, String group) throws RemoteException, InvalidAuthorizationTokenException, ApplicationPermissionException, GroupNotFoundException, UserNotFoundException, InvalidAuthenticationException
SecurityServerClient
addPrincipalToGroup
in interface SecurityServerClient
principal
- The name of the principal.group
- The name of the group.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.ApplicationPermissionException
- The application does not have the proper permissions to update the entity in the directory server.GroupNotFoundException
- Unable to find group by name.UserNotFoundException
- Unable to find user by name.InvalidAuthenticationException
- application authentication is not validpublic void updatePrincipalCredential(String principal, PasswordCredential credential) throws RemoteException, InvalidAuthorizationTokenException, InvalidCredentialException, ApplicationPermissionException, UserNotFoundException, InvalidAuthenticationException
SecurityServerClient
updatePrincipalCredential
in interface SecurityServerClient
principal
- The name of the principal.credential
- The password.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.InvalidCredentialException
- The supplied password is invalid.ApplicationPermissionException
- The application does not have the proper permissions to update the entity in the directory server.UserNotFoundException
- Unable to find the specified principal.InvalidAuthenticationException
- application authentication is not validpublic void resetPrincipalCredential(String principal) throws RemoteException, InvalidEmailAddressException, InvalidCredentialException, ApplicationPermissionException, InvalidAuthorizationTokenException, UserNotFoundException, InvalidAuthenticationException
SecurityServerClient
resetPrincipalCredential
in interface SecurityServerClient
principal
- The name of the principal.RemoteException
- An unknown remote exception occurred.InvalidEmailAddressException
- invalid email addressInvalidCredentialException
- Unable to reset the principal's password.ApplicationPermissionException
- The application does not have the proper permissions to update the entity in the directory server.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.UserNotFoundException
- Unable to find the specified principal.InvalidAuthenticationException
- application authentication is not validpublic void removeGroup(String group) throws RemoteException, InvalidAuthorizationTokenException, ApplicationPermissionException, GroupNotFoundException, InvalidAuthenticationException
SecurityServerClient
removeGroup
in interface SecurityServerClient
group
- The name of the group.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.ApplicationPermissionException
- The application does not have the proper permissions to remove the entity from the directory server.GroupNotFoundException
- Unable to find the specified group.InvalidAuthenticationException
- application authentication is not validpublic void removeRole(String role) throws RemoteException, InvalidAuthorizationTokenException, ApplicationPermissionException, GroupNotFoundException, InvalidAuthenticationException
SecurityServerClient
removeRole
in interface SecurityServerClient
role
- The name of the role.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.ApplicationPermissionException
- The application does not have the proper permissions to remove the entity from the directory server.GroupNotFoundException
- The specified role is invalid.InvalidAuthenticationException
- application authentication is not validpublic void removePrincipal(String principal) throws RemoteException, InvalidAuthorizationTokenException, ApplicationPermissionException, UserNotFoundException, InvalidAuthenticationException
SecurityServerClient
removePrincipal
in interface SecurityServerClient
principal
- The name of the principal.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.ApplicationPermissionException
- The application does not have the proper permissions to remove the entity from the directory server.UserNotFoundException
- The specified principal is invalid.InvalidAuthenticationException
- application authentication is not validpublic void addPrincipalToRole(String principal, String role) throws RemoteException, InvalidAuthorizationTokenException, ApplicationPermissionException, UserNotFoundException, GroupNotFoundException, InvalidAuthenticationException
SecurityServerClient
addPrincipalToRole
in interface SecurityServerClient
principal
- The name of the principal.role
- The name of the role.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.ApplicationPermissionException
- The application does not have the proper permissions to update the entity to the directory server.UserNotFoundException
- Unable to user by nameGroupNotFoundException
- Unable to group (of type Role) by name.InvalidAuthenticationException
- application authentication is not validpublic boolean isGroupMember(String group, String principal) throws RemoteException, InvalidAuthorizationTokenException, InvalidAuthenticationException
SecurityServerClient
isGroupMember
in interface SecurityServerClient
group
- The name of the group.principal
- The name of the principal.true
if and only if the principal is a group member, otherwise false
.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.InvalidAuthenticationException
- application authentication is not validpublic boolean isRoleMember(String role, String principal) throws RemoteException, InvalidAuthorizationTokenException, InvalidAuthenticationException
SecurityServerClient
isRoleMember
in interface SecurityServerClient
role
- The name of the role.principal
- The name of the principal.true
if and only if the principal is a role member, otherwise false
.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.InvalidAuthenticationException
- application authentication is not validpublic void removePrincipalFromGroup(String principal, String group) throws RemoteException, InvalidAuthorizationTokenException, ApplicationPermissionException, UserNotFoundException, GroupNotFoundException, MembershipNotFoundException, InvalidAuthenticationException
SecurityServerClient
removePrincipalFromGroup
in interface SecurityServerClient
principal
- The name of the principal.group
- The name of the group.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.ApplicationPermissionException
- The application does not have the proper permissions to update the entity in the directory server.UserNotFoundException
- Unable to find user by nameGroupNotFoundException
- Unable to find group by name.MembershipNotFoundException
- Unable to find the membershipInvalidAuthenticationException
- application authentication is not validpublic void removePrincipalFromRole(String principal, String role) throws RemoteException, InvalidAuthorizationTokenException, ApplicationPermissionException, UserNotFoundException, GroupNotFoundException, MembershipNotFoundException, InvalidAuthenticationException
SecurityServerClient
removePrincipalFromRole
in interface SecurityServerClient
principal
- The name of the principal.role
- The name of the role.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.ApplicationPermissionException
- The application does not have the proper permissions to remove the entity from the directory server.UserNotFoundException
- Unable to find user by nameGroupNotFoundException
- Unable to find group (of type Role) by name.MembershipNotFoundException
- Unable to find the membershipInvalidAuthenticationException
- application authentication is not validpublic void addAttributeToPrincipal(String principal, SOAPAttribute attribute) throws RemoteException, InvalidAuthorizationTokenException, ApplicationPermissionException, UserNotFoundException, InvalidAuthenticationException
SecurityServerClient
Note: This is the same as calling updatePrincipalAttribute
addAttributeToPrincipal
in interface SecurityServerClient
principal
- The name of the principal.attribute
- The name attribute to add.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.ApplicationPermissionException
- The application does not have the proper permissions to update the entity in the directory server.UserNotFoundException
- The specified principal is invalid.InvalidAuthenticationException
- application authentication is not validpublic void removeAttributeFromPrincipal(String principal, String attribute) throws RemoteException, InvalidAuthorizationTokenException, ApplicationPermissionException, UserNotFoundException, InvalidAuthenticationException
SecurityServerClient
removeAttributeFromPrincipal
in interface SecurityServerClient
principal
- The name of the principal.attribute
- The name of the attribute.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.ApplicationPermissionException
- The application does not have the proper permissions to remove the entity from the directory server.UserNotFoundException
- The specified principal is invalid.InvalidAuthenticationException
- application authentication is not validpublic void addAttributeToGroup(String group, SOAPAttribute attribute) throws RemoteException, InvalidAuthorizationTokenException, ApplicationPermissionException, GroupNotFoundException, InvalidAuthenticationException
SecurityServerClient
Note: This is the same as calling updateGroupAttribute
addAttributeToGroup
in interface SecurityServerClient
group
- The name of the group.attribute
- The name attribute to add.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.ApplicationPermissionException
- The application does not have the proper permissions to update the entity in the directory server.GroupNotFoundException
- The specified group is invalid.InvalidAuthenticationException
- application authentication is not validpublic void removeAttributeFromGroup(String group, String attribute) throws RemoteException, InvalidAuthorizationTokenException, ApplicationPermissionException, GroupNotFoundException, InvalidAuthenticationException
SecurityServerClient
Note: This is the same as calling updateGroupAttribute
removeAttributeFromGroup
in interface SecurityServerClient
group
- The name of the group.attribute
- The name of the attribute.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.ApplicationPermissionException
- The application does not have the proper permissions to remove the entity from the directory server.GroupNotFoundException
- The specified principal is invalid.InvalidAuthenticationException
- application authentication is not validpublic long getCacheTime() throws RemoteException, InvalidAuthorizationTokenException, InvalidAuthenticationException
SecurityServerClient
getCacheTime
in interface SecurityServerClient
RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.InvalidAuthenticationException
- application authentication is not validpublic boolean isCacheEnabled() throws RemoteException, InvalidAuthorizationTokenException, InvalidAuthenticationException
SecurityServerClient
isCacheEnabled
in interface SecurityServerClient
true
if and only if the cache is enabled, otherwise false
.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.InvalidAuthenticationException
- application authentication is not validpublic String getDomain() throws RemoteException, InvalidAuthorizationTokenException, InvalidAuthenticationException
SecurityServerClient
getDomain
in interface SecurityServerClient
RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.InvalidAuthenticationException
- application authentication is not validpublic String[] findAllPrincipalNames() throws RemoteException, InvalidAuthorizationTokenException, InvalidAuthenticationException
SecurityServerClient
findAllPrincipalNames
in interface SecurityServerClient
RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.InvalidAuthenticationException
- application authentication is not validpublic String[] findAllGroupNames() throws RemoteException, InvalidAuthorizationTokenException, InvalidAuthenticationException
SecurityServerClient
findAllGroupNames
in interface SecurityServerClient
String
listing of the group names.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.InvalidAuthenticationException
- application authentication is not validpublic SOAPNestableGroup[] findAllGroupRelationships() throws RemoteException, InvalidAuthorizationTokenException, InvalidAuthenticationException
SecurityServerClient
findAllGroupRelationships
in interface SecurityServerClient
SOAPNestableGroup
listing of the groups, plus any direct sub-groups.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.InvalidAuthenticationException
- application authentication is not validpublic String[] findAllRoleNames() throws RemoteException, InvalidAuthorizationTokenException, InvalidAuthenticationException
SecurityServerClient
findAllRoleNames
in interface SecurityServerClient
String
listing of the role names.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.InvalidAuthenticationException
- application authentication is not validpublic String[] findGroupMemberships(String principalName) throws RemoteException, InvalidAuthorizationTokenException, UserNotFoundException, InvalidAuthenticationException
SecurityServerClient
findGroupMemberships
in interface SecurityServerClient
principalName
- The name of the principal to use when performing the lookup.String
listing of the principal's group memberships.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.UserNotFoundException
- The principal was not foundInvalidAuthenticationException
- application authentication is not validpublic String[] findRoleMemberships(String principalName) throws RemoteException, InvalidAuthorizationTokenException, UserNotFoundException, InvalidAuthenticationException
SecurityServerClient
findRoleMemberships
in interface SecurityServerClient
principalName
- The name of the principal to use role performing the lookup.String
listing of the principal's group memberships.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.UserNotFoundException
- The principal was not foundInvalidAuthenticationException
- application authentication is not validpublic String authenticatePrincipalSimple(String username, String password) throws RemoteException, InvalidAuthorizationTokenException, InvalidAuthenticationException, InactiveAccountException, ApplicationAccessDeniedException, ExpiredCredentialException
SecurityServerClient
authenticatePrincipalSimple
in interface SecurityServerClient
username
- The username of the principal.password
- The password credential.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- An invalid authentication occurred.InvalidAuthenticationException
- An invalid authentication occurred.InactiveAccountException
- The principal's account is inactive.ApplicationAccessDeniedException
- user does not have access to the application.ExpiredCredentialException
- The user's credentials have expired. The user must change their credentials in order to successfully authenticate.public String createPrincipalToken(String username, ValidationFactor[] validationFactors) throws RemoteException, InvalidAuthorizationTokenException, InvalidAuthenticationException, InactiveAccountException, ApplicationAccessDeniedException
SecurityServerClient
createPrincipalToken
in interface SecurityServerClient
username
- The username to create an authenticate token for.validationFactors
- The known attributes of the user to use when creating a token, such as their remote IP address and user-agent.RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- An invalid authentication occurred.InvalidAuthenticationException
- An invalid authentication occurred.InactiveAccountException
- The principal's account is inactive.ApplicationAccessDeniedException
- user does not have access to authenticate against applicationpublic String[] getGrantedAuthorities() throws InvalidAuthorizationTokenException, RemoteException, InvalidAuthenticationException
SecurityServerClient
getGrantedAuthorities
in interface SecurityServerClient
InvalidAuthorizationTokenException
- An invalid authentication occurred.RemoteException
- An unknown remote exception occurred.InvalidAuthenticationException
- application authentication is not validpublic SOAPCookieInfo getCookieInfo() throws RemoteException, InvalidAuthorizationTokenException, InvalidAuthenticationException
SecurityServerClient
getCookieInfo
in interface SecurityServerClient
RemoteException
- An unknown remote exception occurred.InvalidAuthorizationTokenException
- The calling application's applicationToken
is invalid.InvalidAuthenticationException
- application authentication is not validpublic SoapClientProperties getSoapClientProperties()
SecurityServerClient
getSoapClientProperties
in interface SecurityServerClient
Copyright © 2021 Atlassian. All rights reserved.