Showing posts with label LDAP. Show all posts
Showing posts with label LDAP. Show all posts

Tuesday, 2 February 2021

Rest / OSLC API Authentications Native or LDAP (Basic/Form) | Maximo

The most common forms of authentication to use with REST API are:

  • Native - (MaxUser Tables)
  • LDAP - (Directory service authentication)

Update: In Mas Manage, The former methods of utilizing maxauth (native authentication) or basic auth (LDAP) are no longer supported because MAS provides its own OIDC identity provider OOB. So we need to utilize API key and utilize the /maximo/api route. 

Native Authentication
   is configured to manage users' credentials within Maximo MaxUsers tables. Maximo is responsible for authenticating all the incoming REST calls. 

The Below System property tells us the application security is off. Also, the HTTP request header and return are shown below:

System Property

 

mxe.useAppSecurity

0

URL call

 

http://localhost/maximo/oslc/login

Request Headers

 

MAXAUTH

<BASE64encoded user:password>

Response in Return

 

JSESSIONID

As cookie to maintain the same session



NOTE: Postman automatically save these cookies and utilize them for subsequent calls, but it can be handled programmatically. 

LDAP
The Below System property tells us the application security is ON.

System Property

 

mxe.useAppSecurity

1

in LDAP Maximo uses directory authentication and validates users' credentials from the directory configured in WebSphere.

In this case, security settings are defined in WEB.XML file in below mentioned 4 files

  • maximo/application/maximoweb.xml
  • maximo/application/maxrestweb.xml
  • maximo/application/mboweb.xml
  • maximo/application/meaweb.xml
  •     in these files <login-config> section needs to be uncommented to use either FORM or BASIC authentication. 

     

    Tuesday, 19 May 2020

    Enabling and Configuring your Maximo system to use the SAML web single sign-on (SSO) | IBM Maximo

    Install the SAML ACS application.
    Choose one of the following approaches:

    Using the administrative console, install the app_server_root/installableApps/WebSphereSamlSP.ear file to your application server or cluster.

    Install the SAML ACS application by using the python script.
        
    Navigate to the app_server_root/bin directory.
        
    Run the installSamlACS.py script.

    wsadmin -f installSamlACS.py install <nodeName> <serverName>
     or
    wsadmin -f installSamlACS.py install <clusterName>

    Copy where node Name is the node name of the target application server, server Name is the server name of the target application server, and cluster Name is the name of the application server cluster.

    Enable SAML

    You can enable SAML by using either the wsadmin command utility or the administrative console.

     Enable SAML using the wsadmin command utility.

    Start the WebSphere Application Server.

    Start the wsadmin command utility from the app_server_root/bin directory by entering the command:
    wsadmin -lang jython.

    At the wsadmin prompt, enter the following command: AdminTask.addSAMLTAISSO('-enable true -acsUrl https://<hostname>:<sslport>/samlsps/<any URI pattern string>')

    where host name is the host name of the system where WebSphere Application is installed and SSL port is the web server SSL port number (WC_defaulthost_secure).

     Save the configuration by entering the following command: AdminConfig.save().

    Exit the wsadmin command utility by entering the following command: quit.
        
    Restart the WebSphere Application Server.

     Enable SAML using the administrative console.
        
    Log on to the WebSphere Application Server administrative console.
        
    Click SecurityGlobal security.
        
    Expand Web and SIP security and click Trust association.
        
    Under the General Properties heading, select the Enable trust association check box and click Interceptors.
       
    Click New and enter com.ibm.ws.security.web.saml.ACSTrustAssociationInterceptor in the Interceptor class name field.

    Under Custom properties, fill in the following custom property information:

    Name: sso_1.sp.acsUrl and
    Value: https://<hostname>:<sslport>/samlsps/<any URI pattern string>
    where host name is the host name of the system where WebSphere Application is installed and sslport is the web server SSL port number (WC_defaulthost_secure).

    Note: 
    If you need to have multiple, similar entry points for your SAML workflows, you can specify a wildcard value instead of a specific URI pattern string at the end of the URL specified as the value of this property.
    Specifying a wildcard as part of the value of this property eliminates the need to separately configure each of the similar entry points.
    Following are some examples of valid ways to include a wildcard as part of the value for this property:
    https://<server>/<context_root>/ep1/path1/p*
    https://<server>/<context_root>/ep1/path1/*
    https://<server>/<context_root>/ep1/*


    Warning: 


    If you are using metadata to configure your SSO, wildcards cannot be used in the acsUrl definition.

    Click New and enter the following custom property information:
    Name: sso_1.sp.idMap and Value: idAssertion.
    Click OK.

    Go back to SecurityGlobal security and click Custom properties.

    Click New and define the following custom property information under General properties:
    Name: com.ibm.websphere.security.DeferTAItoSSO and
    Value: com.ibm.ws.security.web.saml.ACSTrustAssociationInterceptor.

    Warning:

    The property com.ibm.websphere.security.DeferTAItoSSO,
    was previously used in the default configuration of all installed servers.
    Now it is only used as part of the SAML configuration. Therefore, even if this property already exists in your system configuration,
    you must change its value to com.ibm.ws.security.web.saml.ACSTrustAssociationInterceptor.

    Multiple values, separated with commas, cannot be specified for this property. It must be set to a single SAML

    Click New and define the following custom property information under General properties:
    Name: com.ibm.websphere.security.InvokeTAIbeforeSSO and
    Value: com.ibm.ws.security.web.saml.ACSTrustAssociationInterceptor.
    Click OK.


    Restart WebSphere Application Server.

    The SAML is now enabled for WebSphere Application Server.


    For Reference Please visit: IBM Knowledge center 

    https://www.ibm.com/support/knowledgecenter/SS7K4U_9.0.5/com.ibm.websphere.zseries.doc/ae/twbs_enablesamlsso.html