Setting Up Single Sign-On for the Web Client
Status: | Published |
---|---|
Version: | 1.3 |
Authors: | HTL QA |
Applies to: | Supportworks ESP Version 7.5.0 and later, Web Client Version 1.1.0 and later |
Setting Up Single Sign-On for the Web Client
It is possible to set up a Web Client single-sign-on mechanism that will allow analysts in one or more domains of an organisation to access the Web Client without having to explicitly enter their login credentials. Instead of displaying the login page at the Web Client URL, the system authenticates transparently against the user's Windows network credentials and takes the user directly to the Web Client home page.
Note: It is assumed that each analyst who uses the Web Client and requires single sign-on has either the Active Directory or NT means of Windows authentication specified in their Supportworks analyst record. Other authentication options are not supported for single sign-on.
The key to single-sign-on capability is the Apache Web Server's SSPI module. This allows a Web-based application to authenticate using any of the authentication protocols built into the Windows Security Support Provider Interface.
The procedure for setting up single sign-on for the Web Client comprises a series of checks and adjustments performed in three separate areas of the system:
- Web server configuration
- One of the Web Client PHP files
- Main server configuration
In addition, it is worthwhile checking that certain local-intranet security options are set on any Web browsers that are expected to connect to the Web Client.
These sets of checks and adjustments are detailed in the following sections.
Checks/Adjustments to Perform in the Web Server Configuration
Carry out the actions relating to Web server configuration as follows:
- Open the text file ...\Hornbill\Core Services\SwHttpServer\conf\httpd.conf for editing.
- Near the top of the file (in Section 1), make sure the following values are set (normally, only
KeepAliveTimeout
will need to be changed - from 15 to 1 - due to a minor issue with Internet Explorer):Timeout 300
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 1
- Search for the text
mod_auth_sspi.so
, which should appear within aLoadModule
statement. You may find that this is commented out, so ensure that the line reads simply as follows:LoadModule sspi_auth_module modules/mod_auth_sspi.so
- In Section 3 of the file, within each Virtual Host block being used for the Web Client, add a Directory directive resembling the following after the listed
Alias
statements:- <Directory "C:\Program Files\Hornbill\Supportworks Server\html\webclient\sspi">
AllowOverride None
AuthType SSPI
AuthName "Company-name"
SSPIAuth On
SSPIAuthoritative On
SSPIPerRequestAuth On
SSPIOfferBasic On
SSPIDomain DOMAIN-NAME
require valid-user
- </Directory>
- Note that you must use the directory path that applies to your Supportworks installation, the company name that applies in your case, and the network domain where the analysts' Windows accounts reside. The domain name should just be that of the lowest-level domain. For multiple-domain support, your network administrator must ensure that the domains concerned have trust relationships with the domain you specify here.
- Save the httpd.conf file.
- Restart the Web server (SwHttpServer).
Checks/Adjustments to Perform in the Relevant Web Client PHP File
Here is the procedure to carry out on the Web Client module itself (within the Supportworks server):
- Open the text file ...\Hornbill\Supportworks Server\html\webclient\php\_wcconfig.php and uncomment the following line:
define("_WC_TRUSTEDLOGON","TRUE");
- If your Windows network is set up to use Active Directory for authentication and the User Principle Name (UPN - which may contain spaces and other characters not allowed in analyst IDs) is not identical to the corresponding analyst ID, then uncomment the following lines as well:
define("_WC_UPN_SUPPORT","TRUE");
define("_WC_TOPLEVEL_DOMAIN","top-level-domain-name");
- (where
top-level-domain-name
comprises the last two components of the domain name - for example,hornbill.com
) - Also, in this case, you must ensure that the Active Directory means of authentication and the relevant fully qualified User Principle Name (UPN) are specified in each of the Supportworks analyst records.
- Save the _wcconfig.php file.
Adjustments to Perform in the Main Server Configuration
To allow trust checking to occur between the Supportworks main server and the Web server, you have to configure the main server for "trusted authentication". Instructions are given in the chapter of the Supportworks ESP Configuration Guide entitled Configuring the Server for Trusted Authentication.
Analysts in the relevant domains should now be able to access the Web Client transparently. However, a lot depends on your environment, security settings and so on, so the above as given may not necessarily work. If analysts are having problems, you should at least check the browser-based settings indicated in the following section.
Checks to Perform in a Web Browser's Internet Options
The Internet options you will be checking here would normally have been set as defaults in your domain policy. Follow these instructions on an individual Web browser:
- Select Tools > Internet Options and click the Security tab.
- Select the "Local intranet" zone.
- Click the Sites button, followed by Advanced.
- In the list of websites, ensure that you can see the DNS name or IP address of the Supportworks Web server. If not, then add it to the zone.
- Click Close and then OK.
- With "Local intranet" still selected, click the "Custom level" button.
- Scroll down to the User Authentication > Logon section.
- Ensure that "Automatic logon only in Intranet zone" is selected.
- Click OK and then OK again.
- Restart the Web browser.
If there are still problems after this, please contact the Support Team for assistance.