This documentation supports the 19.05 version of BMC Digital Workplace Advanced.

To view an earlier version, select the version from the Product Version menu.

Configuring BMC Digital Workplace for Remedy Single Sign-On

Remedy Single Sign-On (Remedy SSO) is an authentication system for a multi-software environment that enables users to present credentials for authentication only once. After Remedy SSO authenticates the users, they can gain access to any other application with automatic authentication without providing the credentials again.

Remedy SSO supports the following authentication methods:

  • BMC Remedy AR System Server
  • SAMLv2
  • LDAP
  • Kerberos (Starting from version 9.1.01)
  • Certificate-based (Starting from version 9.1.01)
  • Remedy SSO authentication or Local authentication (Starting from version 9.1.02)
  • OAuth 2.0 (Starting from version 9.1.04)
  • OpenID Connect (Starting from version 9.1.04).

Related topics

Remedy Single Sign-On

Configuring Remedy SSO for authentication for information about authenticating with SAML, Kerberos, or LDAP

This topic describes how to configure the integration of Remedy Single Sign-On with BMC Digital Workplace.

Based on your organization’s requirement, you can configure any of the authentication methods to authenticate the users for various BMC applications.

As an administrator, you can integrate Remedy SSO with BMC Digital Workplace. After the integration, you can configure the required protocol for authentication. BMC does not support the Kerberos authentication for mobile apps, but you can configure the Kerberos authentication for web apps.

Remedy Single Sign-On authentication applies to browsers and mobile applications. When a user logs in on a mobile device, the user is prompted to enter the host name and port. If the server has SSO enabled, the mobile client opens a browser to the SSO login page. The SSO server sets the SSO cookies after authentication on the device browser. When the user relaunches the application, if the cookies are not expired, the mobile client displays the application. If the cookies are expired, the user is shown the login page again for authentication.

Before you begin

  • Install Remedy Single Sign-On and configure realms. For more information, see the Remedy Single Sign-On documentation.
  • Install BMC Digital Workplace.
  • Verify that access to the Remedy SSO servers and the BMC Digital Workplace server requires the same domain. Otherwise, deploying the Remedy Single Sign-On agent will not work.

Creating the rsso-agent.properties file

To integrate the BMC Digital Workplace with Remedy Single Sign-On, you need create the rsso-agent.properties file on the BMC Digital Workplace server.

Mappings required between the BMC Digital Workplace domain and Remedy Single Sign-On server

Before you create the rsso-agent.properties file, you should understand the mapping between the BMC Digital Workplace domain and Remedy Single Sign-On server (<domain>:<url>). Using this information, you will update the following properties in the rsso-agent.properties file.


  • sso-external-url
    • Agent redirects the browser (user’s request) to this URL when the agent detects that the request needs to be authenticated.
    • Agent redirects browser to this URL when the agent detects that the application logout is completed (that is, if the request refers to "logout-urls").
  • sso-service-url
    • Agent uses this the URL to call the Remedy Single Sign-On web app APIs to:
      • Retrieve configuration details, such as cookie name, cookie domain, and realm-domain mappings.
      • Check whether the token cookie from the browser (user's request) is valid and if it is valid, retrieve Remedy Single Sign-On.
      • Register the Remedy SSO server to track other application agents. The tracking helps the agent to know the login status of other application agents prior to logging out.


To support multiple Remedy Single Sign-On servers on an agent, set the different values of the domain-to-server mapping as comma-separated strings. For example, assume that the Remedy Single Sign-On server for the domain “firstcompany” is firstcompany-rsso.bmc.com and the Remedy Single Sign-On server for the domain “secondcompany” is secondcompany-rsso.bmc.com. Then, the properties definition will be the following:

sso-external-url=firstcompany:https://firstcompany-rsso.bmc.com:8443/rsso,secondcompany:https://secondcompany-rsso.bmc.com:8443/rsso
sso-service-url=firstcompany:http://firstcompany-rsso.bmc.com:8080/rsso,secondcompany:http://secondcompany-rsso.bmc.com:8080/rsso


To create the rsso-agent.properties file

  1. On the BMC Digital Workplace server, navigate to /opt/apache/tomcat8.5/external-conf.
  2. Create the rsso-agent.properties file.
  3. Copy the following content to the rsso-agent.properties file, and adjust the configuration values as required.

    # For the Agent Identifier, representing an application integrated with BMC Remedy Single Sign-On, set application URL as its value.
    # The value should be the same on all nodes in same application cluster, but should be different for different applications.
    # e.g. agent-id = http://midtier-hostname/arsys
    
    agent-id=myit-agent
    
    # Application URL to trigger RSSO logout, usually is redirected after application logout is completed
    
    logout-urls=/shared/loggedout.jsp
    
    # Application URL patterns NOT going through RSSO web agent filter
    excluded-urlpattern=.*\\.xml|.*\\.gif|.*\\.css|.*\\.ico|/shared/config/.*|/WSDL/.*|/shared/error.jsp|/shared/timer/.*|/shared/login_commn.jsp|/shared/view_form.jsp|
    /shared/ar_url_encoder.jsp|/ThirdPartyJars/.*|/shared/logout.jsp|/shared/doc/.*|/shared/images/.*|/shared/login.jsp|/services/.*|/shared/file_not_found.jsp|/plugins/.*|
    /shared/wait.jsp|/servlet/GoatConfigServlet|/servlet/ConfigServlet|/shared/HTTPPost.class|/shared/FileUpload.jar|/BackChannel.*|/servlet/LicenseReleaseServlet.*
    
    # If this property is set to true, the application context name will not be excluded for checking excluded url pattern
    # context-included=false
    # RSSO webapp external url for redirection
    # To support multiple RSSO webapps, set the value to a comma separated string: each represents a 'domain to server url' mapping, with the format of <domain>:<url>, 
    # e.g. domain1:https://server1:8443/rsso,domain2:https://server2:8443/rsso
    
    sso-external-url=http://testserver.bmc.com:8080/rsso
    
    # RSSO webapp internal url for service call. Use HTTP instead of HTTPS protocol to avoid problems with handshake.
    # To support multiple RSSO webapps, set the value to a comma separated string, each represents a 'domain to server url' mapping, with the format of <domain>:<url>, 
    # e.g. domain1:http://server1:8080/rsso,domain2:http://server2:8080/rsso
    
    sso-service-url=http://testserver.bmc.com:8080/rsso
    
    # Time during that cached token status will be used without verified at SSO server side. Default value is 3 min.
    # token-status-cache-timeout=180
    
    # MSP-related flags
    # Flag to show realm-entry-page for the MSP deployments
    # msp-deployment=true
    # msp-always-show-domain-entry-page=true
    
    # To disable Remedy SSO agent just set value to true. In this case all requests will not being processed by Remedy SSO.
    # skip-filter=false
    
    # That property is mandatory for preauthentication. Put one of the following possible values: GET or POST
    # preauth-type=GET
    
    # Action path mask. If agent detects /_rsso in servlet path. Default value is: /_rsso
    # action-path-mask=/_rsso
    
    use-in-memory-cache=true
  4. Save the changes.

  5. Restart the Tomcat server.

To integrate Remedy SSO with BMC Digital Workplace

For clusters, complete the following procedure for each BMC Digital Workplace server.

  1. Start the DWPTomcat service.
  2. Make sure single sign-on integration is enabled on BMC Digital Workplace database table.
  3. To enable the integration, complete one of the following steps:

    • Edit the set_env.bat (Windows) or set_env.sh (Linux) and set SAML_authentication to True.

    • Run the following SQL query to update the value:

      UPDATE DWP_System.TENANT SET SAML_AUTHENTICATION = 1 where SAML_AUTHENTICATION = 0
  4. Stop the DWPTomcat service.
  5. Copy the following JARs from the installer/Disk1/files/rsso-agent/ into tomcat/external-conf/lib folder:
    • rsso-agent-all.jar
    • rsso-sdk-atsso.jar
    • rsso-client-impl.jar
  6. Restart the Tomcat service.

Was this page helpful? Yes No Submitting... Thank you

Comments

  1. Martin Penev

    Hello,

    Since the Remedy SSO installer no longer has an option for integrating with DWP, we need to set-up the agent manually. This is generally fine but I do not like the part where we should make a manual modification in the database in order to set the value in the SAML_AUTHENTICATION column to True.

    In some cases people that administer and configure DWP do not have access to the database and they need to submit a request to the DBAs in order for this modification to be done. I think it will be easier if an option for enabling/disabling SSO is present in the DWP Admin panel or if there is some kind of .bat/.sh script placed on the DWP machine that can change this option without users having to go to the database and perform any actions in it.

    Best Regards,

    Martin

    Nov 05, 2018 06:39
    1. Daniel Soto

      I think you can do as follows:


      java -jar <DigitalWorkplace_path>/tenant-config/tenant-config-3.1.00.000-jar-with-dependencies.jar updateTenant -server http://<DigitalWorkplaceServer>:<PortNumber>/dwp -username <DigitalWorkplace_Super_Admin_username> -password <DigitalWorkplace_Super_Admin_password> -tenantName 000000000000001 -hostname localhost -samlAuthentication true

      Nov 06, 2018 11:28
      1. Martin Penev

        Hi Daniel,

        Thanks for sharing this command. It is definitely a better option than performing the modification in the database.

        Unfortunately, when I run the command I get the following error: You are not authorized to perform this operation.

        I tried executing the command on two different 18.08 environments and I got the same result on both of them. I am sure that the users I provided in both cases have the MyIT Super Admin permission.

        Best Regards,

        Martin

        Nov 09, 2018 05:35
        1. Daniel Soto

          Hello Martin,

          Not a problem. Please,check you have both: MyIT Admin and MyIT Super Admin under User Form. I noticed that you raised a case for this, too. Let me check further.


          Thanks,

          Daniel

          Nov 09, 2018 08:24
          1. Achim Hilker

            Hi Martin,

            i think it´s too late for you now, but maybe someone could use this. As always BMC is able to deliver world class Documentation and error handling :-) ... anyway, you have to change ./tenant-config/scripts/linux/set_env.sh according to your environment. Then you should be able to execute the scripts in that folder, because the API key is used there. edit_tenant.sh sets the samlAuthentication true param.

            Best Regards, Achim

            Dec 11, 2018 05:32
            1. Ravee Panjwani

              Thanks for your comment, Achim. I am adding the information to the procedure above, and it is currently available here → Configuring multitenancy.

              Thanks,
              Ravee

              Mar 13, 2019 04:04
  2. Thad Esser

    In the "Before you begin" section, this part: "Verify that access to the Remedy SSO servers and the BMC Digital Workplace server requires the same domain."

    Are we verifying that being in the same domain is a requirement or are we verifying that the two servers are in the same domain because that is a requirement?

    Jun 26, 2019 03:00
  3. Thad Esser

    In the section title "Integrating Remedy SSO with BMC Digital Workplace"

    -- Are step 2 and step 3 separate things, or are they the same thing just listed as two different steps? -- In step 3 it says to run the set_env.bat. Where is that located? -- Also in step 3, the SQL says to set the SAML_AUTHENTICATION field to 1. Is that a generic "Use RSSO" flag or is it specific to SAML? We use Kerberos, so does that still need setting?

    Jun 26, 2019 06:21