public class SCIMRequest extends VaultRequest<SCIMRequest>
HTTP_HEADER_AUTHORIZATION, HTTP_HEADER_REFERENCE_ID, HTTP_HEADER_VAULT_CLIENT_ID, referenceId, vaultClient| Modifier and Type | Method and Description |
|---|---|
SCIMUserResponse |
createUser()
Create User with SCIM
Crete users with SCIM. |
SCIMUserBulkResponse |
retrieveAllUsers()
Retrieve All Users with SCIM
|
SCIMUserResponse |
retrieveCurrentUser()
Retrieve Current User with SCIM
Retrieve the currently authenticated user with SCIM. |
SCIMResponse |
retrieveResourceType(String type)
Retrieve Single SCIM Resource Type
Retrieve a single SCIM resource type. |
SCIMResponse |
retrieveResourceTypes()
Retrieve All SCIM Resource Types
Retrieve the types of SCIM resources available. |
SCIMResponse |
retrieveSchema(String schemaId)
Retrieve Single SCIM Schema Information
Retrieve information about a single SCIM schema specification supported by a Vault SCIM service provider |
SCIMResponse |
retrieveSchemaInformation()
Retrieve All SCIM Schema Information
Retrieve information about all SCIM schema specifications supported by a Vault SCIM service provider |
SCIMResponse |
retrieveSCIMProvider()
Retrieve SCIM Provider
|
SCIMResponse |
retrieveSCIMResources(String type)
Retrieve SCIM Resources
Retrieve a single SCIM resource type. |
SCIMResponse |
retrieveSingleSCIMResource(String type,
String id)
Retrieve Single SCIM Resources
Retrieve a single SCIM resource. |
SCIMUserResponse |
retrieveUser(String userId)
Retrieve Single User with SCIM
Retrieve a specific user with SCIM. |
SCIMRequest |
setAttributes(String attributes)
Set parameter for attributes to retrieve for SCIM users
|
SCIMRequest |
setCount(Integer count)
Set parameter for count of retrieved SCIM users
|
SCIMRequest |
setExcludedAttributes(String excludedAttributes)
Set parameter for attributes to exclude from SCIM user retrieval
|
SCIMRequest |
setFilter(String filter)
Set parameter for filtering SCIM user retrieval results
|
SCIMRequest |
setSCIMUser(SCIMUser scimUser)
Set parameter for SCIM User Object for creating or updating SCIM Users
|
SCIMRequest |
setSCIMUserJSON(String scimUserJSON)
Set parameter for SCIM User Json for creating or updating SCIM Users
|
SCIMRequest |
setSortBy(String sortBy)
Set parameter for sorting to retrieve for SCIM users
|
SCIMRequest |
setSortOrder(String sortOrder)
Set parameter for order of sorting to retrieve for SCIM users
|
SCIMRequest |
setStartIndex(Integer startIndex)
Set parameter for start index of retrieved SCIM users
|
SCIMUserResponse |
updateCurrentUser()
Update Current SCIM User
Update the currently authenticated user with SCIM. |
SCIMUserResponse |
updateUser(String userId)
Update SCIM User
Update User with SCIM. |
getBaseObjectMapper, send, send, sendReturnBinary, sendReturnBinary, sendToFile, sendToFile, setHeaderReferenceId, setVaultClientpublic SCIMResponse retrieveSCIMProvider()
Retrieve a JSON that describes the SCIM specification features available on the currently authenticated vault.
GET /api/{version}/scim/v2/ServiceProviderConfigSCIMResponse scimResponse = vaultClient.newRequest(SCIMRequest.class).retrieveSCIMProvider();
System.out.println("Schemas: " + scimResponse.getSchemas());
System.out.println("Documentation URI: " + scimResponse.getDocumentationUri());
System.out.println("Patch: " + scimResponse.getPatch().getSupported());
System.out.println("Bulk - Supported: " + scimResponse.getBulk().getSupported());
System.out.println("Bulk - Max Operations: " + scimResponse.getBulk().getMaxOperations());
System.out.println("Bulk - Max Payload Size: " + scimResponse.getBulk().getMaxPayloadSize());
System.out.println("Filter - Supported: " + scimResponse.getFilter().getSupported());
System.out.println("Filter - Max Results: " + scimResponse.getFilter().getMaxResults());
System.out.println("Change Password supported: " + scimResponse.getChangePassword().getSupported());
System.out.println("Sort supported: " + scimResponse.getSort().getSupported());
System.out.println("eTag supported: " + scimResponse.getEtag().getSupported());
System.out.println("Authentication Schemes: ");
System.out.println("-----");
System.out.println();
System.out.println("Meta - Resource Type: " + scimResponse.getMeta().getResourceType());
System.out.println("Meta - Location: " + scimResponse.getMeta().getLocation());
System.out.println("Schemas: " + scimResponse.getSchemas());
System.out.println("Total Results: " + scimResponse.getTotalResults());
System.out.println("Resources: ");
System.out.println("-----");
List<Resource> schemaResources = scimResponse.getResources();
for (Resource r : schemaResources) {
System.out.println("\tSchemas: " + r.getSchemas());
System.out.println("\tID: " + r.getId());
System.out.println("\tName: " + r.getName());
System.out.println("\tDescription: " + r.getDescription());
System.out.println("\tAttributes:");
System.out.println("-----");
List<Attribute> resourceAttributes = r.getAttributes();
for (Attribute a : resourceAttributes) {
System.out.println("\t\tName: " + a.getName());
System.out.println("\t\tType: " + a.getType());
System.out.println("\t\tMulti Valued: " + a.getMultiValued());
System.out.println("\t\tDescription: " + a.getDescription());
System.out.println("\t\tRequired: " + a.getRequired());
System.out.println("\t\tExact Case: " + a.getCaseExact());
System.out.println("\t\tMutability: " + a.getMutability());
System.out.println("\t\tReturned: " + a.getReturned());
System.out.println("\t\tUniqueness: " + a.getUniqueness());
System.out.println("-----");
}
System.out.println("-----");
}public SCIMResponse retrieveSchemaInformation()
GET /api/{version}/scim/v2/Schemaspublic SCIMResponse retrieveSchema(String schemaId)
schemaId - Schema ID
GET /api/{version}/scim/v2/Schemas/{id}SCIMResponse scimResponse = vaultClient.newRequest(SCIMRequest.class).retrieveSchema(schema);
System.out.println("Schemas: " + scimResponse.getSchemas());
System.out.println("Name: " + scimResponse.getName());
System.out.println("Description: " + scimResponse.getDescription());
System.out.println("Attributes: ");
System.out.println("-----");
if (!scimResponse.hasAttributeErrors()) {
List<Attribute> attributes = scimResponse.getAttributes();
for(Attribute a : attributes) {
System.out.println("Name: " + a.getName());
System.out.println("-----");
}
System.out.println();
}public SCIMResponse retrieveResourceTypes()
GET /api/{version}/scim/v2/ResourceTypesSCIMResponse scimResponse = vaultClient.newRequest(SCIMRequest.class).retrieveResourceTypes();
System.out.println("Total Results: " + scimResponse.getTotalResults());
System.out.println("-----");
if (!scimResponse.hasResourceErrors()) {
List<Resource> resources = scimResponse.getResources();
for(Resource r : resources) {
System.out.println("ID: " + r.getId());
System.out.println("Name: " + r.getName());
System.out.println("-----");
}
}public SCIMResponse retrieveResourceType(String type)
type - Resource Type ID
GET /api/{version}/scim/v2/ResourceTypes/{type}SCIMResponse scimResponse = vaultClient.newRequest(SCIMRequest.class).retrieveResourceType(resourceType);
System.out.println("ID: " + scimResponse.getId());
System.out.println("Name: " + scimResponse.getName());
System.out.println("Description: " + scimResponse.getDescription());public SCIMUserResponse createUser()
POST /api/{version}/scim/v2/Users
Example 1 - JSON
SCIMUserResponse scimResponse = vaultClient.newRequest(SCIMRequest.class)
.setSCIMUserJSON(jsonString)
.createUser();,
Example 2 - SCIM User
SCIMUserResponse scimResponse = vaultClient.newRequest(SCIMRequest.class)
.setSCIMUser(scimUser)
.createUser();
SCIMUser user = scimResponse.getUser();
System.out.println("\tName: " + user.getName().getGivenName() + " " + user.getName().getFamilyName() );
System.out.println("\tDisplay Name: " + user.getDisplayName());
System.out.println("\tUser Name: " + user.getUserName());
for(SCIMUser.Email email : user.getEmails()){
System.out.println("\t" + email.getType() + "Email: " + email.getValue());
}public SCIMUserBulkResponse retrieveAllUsers()
GET /api/{version}/scim/v2/Users
SCIMUserBulkResponse scimResponse = vaultClient.newRequest(SCIMRequest.class)
//.setFilter("userName eq \"bob.jones@verteobiotech.com\"")
//.setAttributes("username,emails")
//.setExcludedAttributes("username,emails")
.setSortBy("name.familyName")
.setSortOrder("descending")
//.setCount(3)
.retrieveAllUsers();
if (scimResponse.isSuccessful()) {
List<SCIMUser> users = scimResponse.getUsers();
for(SCIMUser user : users) {
System.out.println("\tName: " + user.getName().getGivenName() + " " + user.getName().getFamilyName() );
System.out.println("\tDisplay Name: " + user.getDisplayName());
System.out.println("\tUser Name: " + user.getUserName());
for(SCIMUser.Email email : user.getEmails()){
System.out.println("\t" + email.getType() + "Email: " + email.getValue());
}
}
}public SCIMUserResponse retrieveUser(String userId)
userId - Resource Type ID
GET /api/{version}/scim/v2/Users/{id}
SCIMUserResponse scimResponse = vaultClient.newRequest(SCIMRequest.class)
//.setAttributes("username,emails")
//.setExcludedAttributes("username,emails")
.retrieveUser(id);
SCIMUser user = scimResponse.getUser();
System.out.println("\tName: " + user.getName().getGivenName() + " " + user.getName().getFamilyName() );
System.out.println("\tDisplay Name: " + user.getDisplayName());
System.out.println("\tUser Name: " + user.getUserName());
for(SCIMUser.Email email : user.getEmails()){
System.out.println("\t" + email.getType() + "Email: " + email.getValue());
}public SCIMUserResponse retrieveCurrentUser()
GET /api/{version}/scim/v2/Me
SCIMUserResponse scimResponse = vaultClient.newRequest(SCIMRequest.class)
//.setAttributes("username,emails")
//.setExcludedAttributes("username,emails")
.retrieveCurrentUser();
SCIMUser user = scimResponse.getUser();
System.out.println("\tName: " + user.getName().getGivenName() + " " + user.getName().getFamilyName() );
System.out.println("\tDisplay Name: " + user.getDisplayName());
System.out.println("\tUser Name: " + user.getUserName());
for(SCIMUser.Email email : user.getEmails()){
System.out.println("\t" + email.getType() + "Email: " + email.getValue());
}public SCIMUserResponse updateCurrentUser()
PUT /api/{version}/scim/v2/Me
SCIMUserResponse scimResponse = vaultClient.newRequest(SCIMRequest.class)
//.setAttributes("username,emails")
//.setExcludedAttributes("username,emails")
.setSCIMUser(scimUser)
.updateCurrentUser();
SCIMUser user = scimResponse.getUser();
System.out.println("\tName: " + user.getName().getGivenName() + " " + user.getName().getFamilyName() );
System.out.println("\tDisplay Name: " + user.getDisplayName());
System.out.println("\tUser Name: " + user.getUserName());
for(SCIMUser.Email emailresp : user.getEmails()){
System.out.println("\t" + emailresp.getType() + "Email: " + emailresp.getValue());
}public SCIMResponse retrieveSingleSCIMResource(String type, String id)
type - type of resourceid - id of resource
GET /api/{version}/scim/v2/{type}/{id}
SCIMResponse scimResponse = vaultClient.newRequest(SCIMRequest.class)
.retrieveSingleSCIMResource(type, id);
System.out.println("Schemas: " + scimResponse.getSchemas());
System.out.println("\tId: " + scimResponse.getId());
System.out.println("\tDisplay Name: " + scimResponse.getDisplayName());
System.out.println("\tActive: " + scimResponse.getActive());
public SCIMResponse retrieveSCIMResources(String type)
type - type of resource
GET /api/{version}/scim/v2/{type}
SCIMResponse scimResponse = vaultClient.newRequest(SCIMRequest.class)
//.setFilter("userName eq \"username@verteobiotech.com\"")
//.setAttributes("name,description")
.setExcludedAttributes("id,name")
//.setSortBy("name.familyName")
//.setSortOrder("descending")
//.setCount(3)
.retrieveSCIMResources(type);
System.out.println("Schemas: " + scimResponse.getSchemas());
System.out.println("\tName: " + scimResponse.getName());
System.out.println("\tDescription: " + scimResponse.getDescription());
System.out.println("\tEndpoint: " + scimResponse.getEndpoint());
public SCIMUserResponse updateUser(String userId)
userId - id of user
PUT /api/{version}/scim/v2/Users/{id}
Example 1 - SCIM User
SCIMUserResponse scimResponse = vaultClient.newRequest(SCIMRequest.class)
.setSCIMUser(scimUser)
.updateUser(id);,
Example 2 - JSON
SCIMUserResponse scimResponse = vaultClient.newRequest(SCIMRequest.class)
.setSCIMUserJSON(jsonString)
.updateUser(id);SCIMUser user = scimResponse.getUser();
System.out.println("\tName: " + user.getName().getGivenName() + " " + user.getName().getFamilyName() );
System.out.println("\tDisplay Name: " + user.getDisplayName());
System.out.println("\tUser Name: " + user.getUserName());
for(SCIMUser.Email email : user.getEmails()){
System.out.println("\t" + email.getType() + "Email: " + email.getValue());
}public SCIMRequest setFilter(String filter)
filter - the filter to apply to retrieve userspublic SCIMRequest setAttributes(String attributes)
attributes - the attributes to include in retrieving SCIM userspublic SCIMRequest setExcludedAttributes(String excludedAttributes)
excludedAttributes - the attributes to exclude in retrieving SCIM userspublic SCIMRequest setSortBy(String sortBy)
sortBy - the sort parameter to include in retrieving SCIM userspublic SCIMRequest setSortOrder(String sortOrder)
sortOrder - the order to sort retrieved SCIM userspublic SCIMRequest setCount(Integer count)
count - the count of users to retrievepublic SCIMRequest setStartIndex(Integer startIndex)
startIndex - the starting index of users to retrievepublic SCIMRequest setSCIMUser(SCIMUser scimUser)
scimUser - SCIM User defining a new or updated userpublic SCIMRequest setSCIMUserJSON(String scimUserJSON)
scimUserJSON - json definining a SCIM UserCopyright © 2024. All rights reserved.