Skip to main content

Create User through SCIM-REST OIM PS3

Below are the Parameters to create a user in OIM through REST:


Authentication:  Username(xelsysadm): Password

Request Type: Post

Request Content: Application/scim+json

Request Body:

{ "schemas": [
"urn:ietf:params:scim:schemas:extension:oracle:2.0:OIG:User",
"urn:ietf:params:scim:schemas:core:2.0:User",
"urn:ietf:params:scim:schemas:extension:oracle:2.0:IDM:User",
"urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"
],
"userName": "USER_LOGIN",
"password":"PASSWORD",
"name": {
"givenName": "FIRST_NAME",
"familyName": "LAST_NAME"
},
"emails": [
{ "value": "EMAIL",
"type": "work"
}
],
"userType": "Full-Time",
"urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
"organization": "Xellerate Users"
}

}


The same request can be sent using curl command as well:

curl -i -X POST -d @newuser.txt -k -u xelsysadm:PASSWORD -H "Content-Type:application/scim+json" http://OIM_HOST:14000/idaas/im/scim/v1/Users

newuser.txt file should be at the location from where this command is run. Content of the file should be same as Request Body above.

command to show the users are:

curl -i -k -u xelsysadm:PASSWORD -H "Accept:application/scim+json" http://OIM_HOST:14000/idaas/im/scim/v1/Users

Comments

  1. Can you provide an example for not using http basic as security, instead using OAM issued JWT (JWTAuthentication service provider)

    ReplyDelete
  2. Can we encrypt the "password":"PASSWORD" field and sent? If yes then how to do that

    ReplyDelete

Post a Comment

Popular posts from this blog

Developing Prepopulate Adapter with OIM 11g R2

1.      Prepopulate Adapter in OIM uses the plugin point oracle.iam.request.plugins.PrePopulationAdapte r. 2.      Write the Java code which returns the value which has to be populated on the form. 3.      This code will implement the plugin point oracle.iam.request.plugins.PrePopulationAdapte r. Code Snippet: - package com.oracle.oim.utility.eventhandler; import java.io.Serializable; import java.util.Iterator; import java.util.List; import java.util.logging.Logger; import oracle.iam.identity.exception.NoSuchUserException; import oracle.iam.identity.exception.UserLookupException; import oracle.iam.identity.usermgmt.api.UserManager; import oracle.iam.identity.usermgmt.vo.User; import oracle.iam.platform.Platform; import oracle.iam.platform.authz.exception.AccessDeniedException; import oracle.iam.request.exception.RequestServiceException; import oracle.iam.request.vo.Beneficiary; import oracle.iam.request.vo.RequestData; public c

OIM Tuning

Application Module tuning is a critical setting which will affect the UI performance. Following are the recommended application module settings for OIM and these are already set out-of-box (OOB) in later releases of OIM 11g R2. Ensure that these settings are implemented as recommended in your environment. -Djbo.ampool.doampooling=true -Djbo.ampool.minavailablesize=1 -Djbo.ampool.maxavailablesize=120 -Djbo.recyclethreshold=60 - Djbo.ampool.timetolive=-1 -Djbo.load.components.lazily=true - Djbo.doconnectionpooling=true -Djbo.txn.disconnect_level=1 - Djbo.connectfailover=false -Djbo.max.cursors=5 - Doracle.jdbc.implicitStatementCacheSize=5 - Doracle.jdbc.maxCachedBufferSize=19 open DOMAIN_HOME/bin/setDomainEnv.sh file for the WebLogic Server instance.find these lines: JAVA_OPTIONS="${JAVA_OPTIONS}" export JAVA_OPTIONS and change it to: JAVA_OPTIONS="-Djbo.ampool.doampooling=true -Djbo.ampool.minavailablesize=1 -Djbo.ampool.maxavailablesize=120 -D

Creating Role through OIM API - 11gR2

package com.oim.utilities; import java.util.HashMap; import oracle.iam.identity.rolemgmt.api.RoleManager; import oracle.iam.identity.rolemgmt.api.RoleManagerConstants; import oracle.iam.identity.rolemgmt.vo.Role; import oracle.iam.platform.OIMClient; public class RoleManagement  { static RoleManager roleManager=null; static OIMClient client=null; @SuppressWarnings("null") public static void createRole(String roleName){ System.out.println("RoleManagement :: createRole :: role name is "+roleName); try  { if (roleName!=null) { HashMap<String, Object> mapAttrs = new HashMap<String, Object>();; mapAttrs.put(RoleManagerConstants.ROLE_NAME, roleName); mapAttrs.put(RoleManagerConstants.ROLE_DISPLAY_NAME,roleName); mapAttrs.put(RoleManagerConstants.ROLE_DESCRIPTION, roleName); Role role = new Role(mapAttrs); // Initialising the OIM Connection client=ClientOIM.initialise(); System.out.println("RoleManagemen