Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Question

When installing the Server Job Unit Test Harness, I need to ensure a default credential mapping has been set for my DataStage engine. However, our DataStage engine is configured to Share user repository between InfoSphere Information Server and its engine which disables the ability to set the default engine credentials (see screenshot). How can I configure default credential mapping for the Server Unit Testing Harness without disabling user registry sharing?

New IBM InfoSphere Information Server UI

Old IBM InfoSphere Information Server UI


Answer

  1. Log into the host running the Services tier and navigate to <DataStage Install Directory>/ASBServer/bin.

  2. Set the default DataStage credentials mapping for the engine. This can’t be done via the UI when the user registry is shared as the input fields are disabled. Use the following DirectoryCommand to set the credentials from the CLI:
    Unix

    Code Block
    ./DirectoryCommand.sh -url https://<base url to services tier including port> -user isadmin -password <isadmin password> -datastage_server <engine name> -set_default_ds_credentials "dsadm~<dsadm password>"


    Windows

    Code Block
    ./DirectoryCommand.bat -url https://<base url to services tier including port> -user isadmin -password <isadmin password> -datastage_server <engine name> -set_default_ds_credentials "dsadm~<dsadm password>"


    Example output

    Code Block
    ------------------ Executing "set_default_ds_credentials" command. ------------------
    Default DataStage credentials for "<engine name>" set to user "dsadm" and password "********".
    ------------------------------------------------------------.

  3. Run iisAdmin to enable the use of default DataStage credentials mapping when shared credentials are not found. Requires JR59546 which is bundled with DataStage from versions 11.5 SP4 and 11.7.0.2
    Unix

    Code Block
    ./iisAdmin.sh -set -key com.ibm.iis.isf.security.UseUserCredentialIfSharedNotFound -value true


    Windows

    Code Block
    ./iisAdmin.bat -set -key com.ibm.iis.isf.security.UseUserCredentialIfSharedNotFound -value true


    This command needs to run as a user with read access to <DataStage Install Directory>/ASBServer/conf/database.properties. You will receive the following error if you attempt to run this command with a user which doesn’t have permission:

    Code Block
    java.lang.RuntimeException: java.io.IOException: Access to file "database.properties" is restricted to privileged users.

  4. Depending on the version of DataStage, the iisAdmin command from step #3 may not produce any output even when successful. To verify the change has been applied, run the following command:
    Unix

    Code Block
    languagea
    ./iisAdmin.sh -display -key com.ibm.iis.isf.security.UseUserCredentialIfSharedNotFound


    Windows

    Code Block
    ./iisAdmin.bat -display -key com.ibm.iis.isf.security.UseUserCredentialIfSharedNotFound


    Example output:

    Code Block
    com.ibm.iis.isf.security.UseUserCredentialIfSharedNotFound=true
Info

The change applied in Step #3 will take effect without needing to restart your Service or Engine Tiers. However, it can take up to several minutes to be picked up by DataStage engine tiers