Tuesday 10 April 2018

Relay State in OAM



·            'Relay state’ parameter is used to automate the redirection of a user to a specific target page URL as soon as authentication against IDP is completed successfully and SAML assertion is posted to SP.
·            If it is required to show the user a specific landing page other than the home page we can configure it through Relay state.
·            E.g. If we want to take directly the user to a particular training course; we can configure it as /sf/learning/training_module_ 5 etc.
·            We can pass this value using UpdatePrtnerProperty command using wlst as below:  
  
updatePartnerProperty(partnerName="salesforce",partnerType="SP",propName="providerrelaystate",propValue="https:sf/learning/training/internal ",type="string")  

Steps:
cd /opt/oracle/middleware/Oracle_IDM1/common/bin
./wlst.sh
connect ('weblogicuser','password','t3://host:port')
domainRuntime()
updatePartnerProperty(partnerName="SalesforceSP",partnerType="sp", propName="providerrelaystate", propValue="/sf/learning")

·            Relay state values can’t be seen in SAML response but it can be observed in network trace.
·            Press F12 ànetwork àpreserve logàhit the urlàscroll down
·            At the end we can see the parameter as shown below:


RelayState: /sf/learning




 **** Thanks for visiting ****

Configure OUD as a new SYSTEMSTORE for OAM(PS2/PS3)

·         OAM has two User Identity Stores System Store and Default Store.
·    Generally, Default store is used for Authentication of protected Applications and System  Store is used for self-authentication of OAM into /oamconsole as well authentication of protected applications.
·  By Default, in OAM both Default and System store is UserIdentityStore1 which is Embedded_LDAP of WebLogic.
·    Here we want to change the system store to OUD which will be used for login to both oamconsole as well for authenticating into applications. 
 Steps:
1.   First configure OUD as a User Identity store as shown below: 
(host & port in location; user and group search base as per the project) 

·    After configuring OUD as user identity store it should look as below:
·    Check the connection and make it default store; check if it is working.
2.  Then take a backup of oam-config.xml file and weblogic config.xml file before proceed further.
3.   Then Go to weblogic àsecurity realms àmyrealmàproviders
·    Create a new provider for OUD 
     Name: OUDAuthenticator 
     Type: IPlanetAuthenticator 
      Control flag: Sufficient 

·     Provide provider specific details (host, port, user base dn etc.) as shown below. 
·         Reorder the providers as shown below keeping OUDAuthenticator at 2nd position:
·     Restart Admin and Managed servers. 
4.  Then create an oamadmin user for OAM in OUD in the user_search_base specified earlier and also create a oamadmin group in OUD in the group_search_base and keep that user which is needed to be used as system store user.
·   Here cn=OAMAdministrators and uid=oamadmin is used as system store user for OAM.  
 5.  Go to /oamconsole àModulesàLDAPàchange it to OUD from UserIdentityStore1  (Because OAM itself authenticated by LDAP Module(OAMAdminAuthentication scheme points to    LDAP Module which protects OAM); so need to change it to our     new system store)                                                   

6.   Now in oamconsole àUserIdentityStores àchange the system store to OUD and press apply.
 
·    It will ask for add user & group àprovide both the user & group and validate àit should come as successful.  

7.   Now try to access /oamconsole in different browser with oamadmin credentials instead of weblogic user and it should authenticate successfully into oamconsole. 

ISSUES:
Ø  If getting below error in /oamconsole->UserIdentityStore page
MBean operation access denied. MBean: com.oracle.igf:type=Xml,name=IDSConfig Operation: listAllIdentityDirectoryService() Detail: Access Denied. Required roles: Admin, Operator, Monitor, executing subject: principals=[oamadmin, oamadmin_group, OAMSystemAdminGroup]
To resolve this issue, complete the following steps:
1. Login to WebLogic Console (/console) as weblogic user.
2. Navigate to Security Realms -> myrealm
3. Click the Roles and Policies tab.
4. Expand Global Roles and then Roles.
5. Click View Role Conditions on the line for Admin role.
6. Click Add Conditions and add both of the following groups:
  oamadmin_group
  OAMSystemAdminGroup
7. Click Save.
8. Restart both AdminServer and OAM managed servers 


Ø  If getting 2 login pages while accessing /oamconsole URL then:
·         Add the oamadmin user in weblogic users and groups as an Administrator of OAM.




 **** Thanks for visiting ****

   Here we are going to discuss the steps required in detail, to extend a connector in OIM for provisioning to target system. Steps are s...