Configure IdM authentication in the Mobility Client

You need to edit several files of the Mobility Client to enable IdM authentication.

To do this, follow these steps:

  1. Update the security.xml file.
    1. Open the <Mobile application>/WEB-INF/spring/security.xml file in a text editor.
    2. Make sure that the following section is commented out as shown below:

      <!-- <security:custom-filter ref="preAuthenticationFilter" after="SECURITY_CONTEXT_FILTER"/>
          <security:custom-filter ref="lwSsoFilter" before="BASIC_AUTH_FILTER"/>
          <security:custom-filter ref="springSecurity2lwssoIntegrationFilter" position="LAST"/> -->
      

      Tip In the out-of-box configuration, this section is commented out.

  2. Update the lwssofmconf.xml file.
    1. Open the <Mobile application>/WEB-INF/classes/ lwssofmconf.xml file in a text editor.
    2. Set the enableLWSSOFramework parameter to false, as shown in the following.

      <?xml version="1.0" encoding="UTF-8"?>
      <lwsso-config
          xmlns="http://www.hp.com/astsecurity/idmenablmentfw/lwsso/2.0">
          <enableLWSSO enableLWSSOFramework="false" enableCookieCreation="true" 
      cookieCreationType="LWSSO" enableSAML2Support="false"/>
  3. Open the WEB-INF/webtier.properties file in a text editor, and then specify the following parameters.

    Tip For more information about IdM parameters, see Install and configure the standalone IdM service.

    Parameter Default Description
    idm.sso.enabled false

    Indicates if IdM SSO is enabled. To enable IdM SSO, set this parameter to true.

    idm.tenant N/A

    The tenant in which all Service Manager user accounts will reside. This parameter value must match the tenant configured on the IdM service side:

    • For the standalone IdM, you can find the tenant configuration in Install and configure the standalone IdM service;
    • For the Service Portal IdM, the tenant is the name of the organization configured for Service Manager (which you can find from the Identity application).
    idm.token.signingKey N/A

    This is the key used to sign IdM tokens. This parameter value must match the idm.encryptedSigningKey value defined in the \WEB-INF\string\applicationContext.properties file of the IdM service.

    idm.endpoint N/A

    This is the absolute URL of the IdM service. For example: https://localhost:8443/idm-service

    idm.http.user

    idm.http.password

    N/A

    This is the user account used to access the IdM service.

    These parameter values must match the values of the integrationAcctUserName property and integrationAcctPassword property that are specified in the WEB-INF\spring\applicationContext.xml file of the IdM service.

    idm.ssl.trustAll false Indicates whether to verify that the IdM server certificate is trusted. To verify the IdM server certificate, keep the default value (false).

    idm.truststore

    idm.truststore.password

    N/A

    This is the IdM client trust store and password. The IdM client uses this file to validate the IdM server certificate. For more information, see (Optional) Create an IdM client trust store.

    Note You must specify these two parameters if the idm.ssl.trustAll parameter is set to false.

    idm.returnUri N/A

    The absolute URL of the Mobility client to which the IdM service will return after successful authentication. It must not contain the servlet path (/std/*, /ess/*).

    Example: https://www.example.com/mobile-9.x

    Note Normally, this parameter is not required. Only when the Mobility application server is deployed behind a web server (for example, Apache or IIS) or proxy, if the Mobility Client cannot get the host name and port of the web server or proxy, or if the Mobility Client context path is mapped to a different URI in the web server or proxy, you must set this parameter.

    isCustomAuthenticationUsed true

    To enable SAML SSO, set this parameter to false.

    The following is an example.

    idm.sso.enabled=true
    idm.tenant=IDM-SM
    idm.token.signingKey=awscd456!
    idm.endpoint=https://localhost:8443/idm-service
    idm.http.user=idmTransportUser
    idm.http.password=idmTransportUser
    idm.ssl.trustAll=false
    idm.truststore=/WEB-INF/trustStore.keystore
    idm.truststore.password=tomcat1
    isCustomAuthenticationUsed=false
  4. Restart the web application server.

    Once the web application server is restarted, the idm.http.password, idm.token.signingKey, and idm.truststore password parameter values are automatically encrypted.

    Note Later when you need to update any of these values, you need to remove the asterisk symbol (*) before the parameter name, specify a new value for the parameter, and then restart the web application server.