+

Search Tips   |   Advanced Search

Lightweight Third-Party Authentication (LTPA)

LTPA is intended for distributed, multiple application server and machine environments. LTPA supports forwardable credentials and single sign-on (SSO). LTPA can support security in a distributed environment through cryptography. This support permits LTPA to encrypt, digitally sign, and securely transmit authentication-related data, and later decrypt and verify the signature. Application servers distributed in multiple nodes and cells can securely communicate using the LTPA protocol. LTPA provides the single sign-on (SSO) feature wherein a user is required to authenticate only once in a domain name system (DNS) domain allowing access resources in other WebSphere Application Server cells without getting prompted.

The realm names on each system in the DNS domain are case sensitive and must match identically. On UNIX, for a local OS, the realm name is the same as the host name. On Windows, for a local OS, the realm name is the domain name, if a domain is in use or the realm name is the machine name. The LDAP realm name is the host:port value of the LDAP server.

The LTPA protocol uses cryptographic keys to encrypt and decrypt user data passing between the servers. These keys must be shared between the different cells for the resources in one cell to access resources in other cells, assuming that all the cells involved use the same LDAP or custom registry.

LTPA tokens are created with the user information and an expiration time, and is signed by the keys. All application servers participating in a protection domain must have their time and date synchronized. If not, LTPA tokens appear prematurely expired and cause authentication or validation failures. Coordinated Universal Time (UTC) is used by default, and all other machines must have the same UTC time. Consult the operating system documentation for information regarding how to ensure this. The LTPA token passes to other application servers, in the same cell or in a different cell using cookies.

If the receiving servers share the same keys as the originating server, the token can be decrypted to obtain the user information, which then is validated to make sure that it has not expired and that the user information in the token is valid in its registry. On successful validation, the resources in the receiving servers are accessible after the authorization check.

Each server must have valid credentials. When the credentials expire, the server is required to communicate to the user registry to authenticate. User registry outages can cause server processes to hang, requiring them to be restarted to recover. Extending the time the LTPA token remains cached reduces this risk, but does present a slightly increased security risk to be considered when defining our security policies.

All of the WAS processes in a cell (deployment manager, nodes, application servers) share the same set of keys. If key sharing is required between different cells, export them from one cell and import them to the other. For security purposes, the exported keys are encrypted with a random generated key and a user-defined password is used to protect the keys. This same password is needed when importing the keys into another cell. The password is only used to protect the keys and is not used to generate the keys.

WAS supports the LTPA and Kerberos protocols.

When security is enabled during profile creation time, LTPA is configured by default.

LTPA requires that the configured user registry be a centrally shared repository such as LDAP or a Windows domain-type registry so that users and groups are the same, regardless of the machine.


Subtopics


Related:

  • Authentication protocols
  • Trust associations
  • Single sign-on for authentication using LTPA cookies
  • Configure the LTPA mechanism
  • LTPA
  • Standalone LDAP registry settings
  • Advanced LDAP user registry settings
  • Identity assertion to the downstream server
  • Security: Resources for learning