Finding OID Parameters

  1. Connect to the database as IKB
  2. Call the GET_GROUP_INSTALL_BASE and GET_SUBSCRIBER_BASE functions in the WWSEC_OID package in the PORTAL schema:
    select portal.wwsec_oid.get_group_install_base from dual;
    select 'cn=Users,' || portal.wwsec_oid.get_subscriber_base from dual;
    
    Sample output:
    GET_GROUP_INSTALL_BASE
    ------------------------------------------------------------
    cn=portal.080916.233623.703000000,cn=groups,dc=disney,dc=com
    
    'CN=USERS,'||PORTAL.WWSEC_OID.GET_SUBSCRIBER_BASE
    -------------------------------------------------
    cn=Users,dc=disney,dc=com
    

Synchronize Users

  1. Set External Key for groups in iKnowBase:

  2. Add External Key IKB_DIM_ORG to dimension "Organization" in iKnowBase
  3. Add External Key IKB_DIM_ORG_XNET to dimension "Organization > xNet Departement" in iKnowBase
  4. Add External Key IKB_EMAIL to attribute "iKB Email" in iKnowBase

  5. Optional: Add Attribute First Name with External Key FIRST_NAME in iKnowBase
  6. Optional: Add Attribute Last Name with External Key LAST_NAME in iKnowBase

  7. Go to iKnowBase Development Desktop

  8. Click Advanced OID synchronizing

  9. Click Create new synchronization profile

  10. Click Apply

  11. Attributes tab:

    1. Enter the following attribute mappings for users: Note: If you synchronize users from AD to OID, you can use "displayName" instead of "sn" in the above mapping.

    2. Check the three fields: Create iKB group, Create Portal group, and Create org.card

    3. Enter the following attribute mappings for organizations:

    4. Enter the following optional attribute mappings (all with iKB attribute type=Text and Type=Person):

    5. Click OK and note the ID of the synchronization profile (e.g. 15212)

  12. Connect to the database as IKB and run the synchronization, e.g.:
    exec oid_sync.synchronize_users(15212);
    
    As an alternative, schedule a background job using e.g.:
    begin
    	dbms_scheduler.create_job (
    		job_name        => 'OID_SYNC_JOB'
    	,	job_type        => 'PLSQL_BLOCK'
    	,	job_action      => 'BEGIN oid_sync.synchronize_users(15212); END;'
    	,	repeat_interval => 'FREQ=MINUTELY; INTERVAL=5'
    	,	enabled         => true
    	);
    end;
    /
    
    If you need to temporarily disable the background job, here's how:
    exec dbms_scheduler.disable('OID_SYNC_JOB');
    exec dbms_scheduler.enable('OID_SYNC_JOB');
    

  13. If you would like to synchronize first name, last name and email, here are two options:
    1. Synchronize all users in the IKB_XNET_USERS group from OID to iKnowBase using
    2. Create a PL/SQL procedure OID_SYNC_CUSTOM.POSTUSERADD using and include it in the "Function that runs post-usersynchronization" field in the configuration above (step 11).