2.9. Troubleshooting Secure Global Desktop Authentication

Use the information in this section to troubleshoot problems when users log in to SGD. This section includes the following topics:

2.9.1. Setting Log Filters for Authentication Problems

To help diagnose problems with Secure Global Desktop authentication, use one or more of the log filters shown in the following table to obtain more information.

Log Filter

Purpose

server/directoryservices/*

Information about authentication mechanisms that use directory services.

Applies to Active Directory, LDAP, and third-party authentication.

server/login/*

Information about what happens when users attempt to log in.

Applies to all authentication mechanisms.

server/securid/*

Information about connections to RSA Authentication Manager.

Applies to SecurID authentication.

For information about setting log filters, see Section 7.4.3, “Using Log Filters to Troubleshoot Problems With an SGD Server”.

2.9.2. Denying Users Access to SGD After Failed Login Attempts

SGD Administrators can enable a login failure handler so that users are denied access to SGD after three failed login attempts. See Section 2.9.2.1, “How to Enable the Login Failure Handler”. This additional security measure only works if users have their own user profile objects in the local repository. It does not work for the default profile objects in the System Objects organization. See for details

The number of login attempts is configurable, see Section 2.9.2.2, “How to Change the Number of Login Attempts”. By default users get three attempts. The number of login attempts is local to each SGD server and is not copied across the array. Only when the login limit is reached on a server, is the user denied access across the array. For example, a user could try to log in on each SGD server two times, but only when they fail for the third time on a server are they denied access to the other members of the array.

If a user is denied access, they are only denied access to SGD. They are not denied access to the host on which SGD is installed

When a user is denied access, SGD deselects the Login check box on the General tab (--enabled false) for the user profile object in the Administration Console. To give a user access again, you must select the check box (--enabled true).

For security reasons, users are not given any indication that their account is disabled. They see the same message as if they had typed an incorrect password.

2.9.2.1. How to Enable the Login Failure Handler

You can only enable the login failure handler from the command line.

  1. Use the following command:

    $ tarantella config edit \
    --tarantella-config-components-loginfailurehandler 1 \
    --tarantella-config-components-loginfailurefilter 1

2.9.2.2. How to Change the Number of Login Attempts

Ensure that no users are logged in to the SGD servers in the array and that there are no running application sessions, including suspended application sessions.

  1. Log in to the primary SGD server as superuser (root).

  2. Stop the primary SGD server.

  3. Set the number of login attempts.

    Use the following command:

    # tarantella config edit \
    --com.sco.tta.server.login.LoginFailureHandler.properties-attemptsallowed num
    
  4. Start the primary SGD server.

  5. Do a warm restart of all secondary SGD servers.

    Use the following command:

    # tarantella restart sgd --warm

2.9.3. Troubleshooting Web Authentication

Common problems that users experience when they log in to SGD using web authentication include the following:

2.9.3.1. Web Authentication Fails

If a user fails to authenticate to the web server, they might see a message such as “401 Authorization Required”. This indicates that either there is a problem with the user name and password, or there is a problem with the web server configuration.

Check the following:

  • Does the user have an entry in the web server password file?

  • Is the web server configured to use the correct password file?

  • If you are using the SGD web server, is the password file accessible by the ttaserv user? If this user cannot read the password file, web authentication fails.

2.9.3.2. Users See the Standard SGD Login Page

If web authentication is not set up correctly or it fails for any reason, SGD displays the standard login page. Use the following checklist to resolve the problem.

Questions

Questions and Answers

2.9.3.2.1: Is the right SGD URL protected?

For the webtop, you must set up your web server to protect the /sgd URL.

2.9.3.2.2: Is Tomcat configured to trust the web authentication?

The Tomcat component of the SGD web server has to be configured to trust Apache web server authentication.

On each array member, edit the /opt/tarantella/webserver/tomcat/tomcat-version/conf/server.xml file. Add the tomcatAuthentication="false" attribute to the <Connector> element for the AJP 1.3 Connector.

2.9.3.2.3: Does the user have a user profile in the local repository?

If your configuration of SGD relies on users having user profile objects in the local repository and you have not enabled one of the fallback profile objects, users might not be able to log in. If this happens and you have enabled logging, search the log file for messages that indicate that SGD could not find a match for the authenticated user.

Either create a user profile for the user or enable one of the fallback profile objects. See Section 2.6.1, “How Third-Party Authentication Works” for more details.

2.9.3.2.4: Is the user an SGD Administrator?

By default, SGD Administrators cannot access SGD if they have been authenticated by a web server. To change this behavior, see Section 2.6.8, “SGD Administrators and Third-Party Authentication” for details.

2.9.3.2.5: Have you changed the trusted user?

If you have changed the user name and password of the trusted user, have you verified that the new user works? See Section 2.6.9, “Trusted Users and Third-Party Authentication” for details.

2.9.3.3. Users Get the Wrong Webtop

With web authentication, SGD performs a search to establish the user identity and login profile. The first matching user profile found is used.

Search the SGD log files for messages that indicate an ambiguous user. This indicates that more than one user identity matched the user.

To resolve the situation, you can do either of the following:

  • Accept the first match

  • Attempt to manually resolve the ambiguity, for example by creating or amending user profiles

2.9.4. Users Cannot Log In to Any SGD Server

If all users, including the UNIX system root user, cannot log in to any SGD server, this might be caused by either of the following:

  • All authentication mechanisms are disabled

  • User logins to all SGD servers are disabled

To check whether all authentication mechanisms are disabled, use the following command:

$ tarantella config list | grep login

If all authentication mechanisms are disabled, enable the UNIX system authentication mechanism from the command line, as follows:

$ tarantella config edit --login-ens 1

Once the UNIX system authentication mechanism is enabled, you can log in to the Administration Console with the user name Administrator and the UNIX system root user's password. You can then reconfigure authentication.

To check whether user logins are disabled for an SGD server, use the following command:

$ tarantella config list --server serv... --server-login

If user logins to all SGD servers are disabled, use the following command to enable user logins:

$ tarantella config edit --array --server-login 1

2.9.5. Using Shared Accounts for Guest Users

SGD enables more than one user to log in using the same user name and password, for example to share an account for guest users.

Note

Anonymous users are always treated as using a shared account, see Section 2.3, “Anonymous User Authentication”.

Users that share a user profile object share the same application server passwords. Guest users cannot add or change entries in the password cache. This means that, unless an SGD Administrator has cached application server passwords for them, guest users are prompted for a password every time they start an application. Use the Administration Console or the tarantella passcache command to manage application server passwords for guest users.

2.9.5.1. How to Share a User Profile Between Users

  1. In the Administration Console, go to the User Profiles tab.

  2. Select the user profile that is to be shared.

    The General tab is displayed.

  3. For Login, select the Multiple check box.

  4. Click Save.

2.9.6. Oracle Solaris Users Cannot Log in When Security is Enabled

If users with Oracle Solaris client devices find that they cannot log in to an SGD server when SGD security services are enabled, check that the /dev/random device is present on the client device.

SGD security services require the /dev/random device. If it is missing, install the Oracle Solaris patch that contains this device.

2.9.7. An Ambiguous User Name Dialog Is Displayed When a User Tries to Log in

The Ambiguous User Name dialog is displayed only for users who share person object attributes and also have the same password.

For example, there are two users with the name John Smith (cn=John Smith) and they have chosen the same password. Their email addresses and user names are different. If they log in with the name John Smith, SGD displays the Ambiguous User Name dialog which asks them to provide either an email address or a user name. The dialog displays because the credentials they supply match more than one user. If they log in using an email address or a user name, they are logged in.

The Ambiguous User Name dialog is displayed only if you are using LDAP authentication or UNIX system authentication that searches for the user ID in the local repository.

The solution is to ensure that users have unique passwords. Alternatively, configure the user profiles to have unique attributes. SGD uses the Name (--name), Login Name (--user) and Email Address (--email) to identify and disambiguate users.