Kerberos is an authentication protocol that allows two systems to identify each other in a secure way and helps to implement SSO. It works in the client-server model and uses a ticket system for user identity. Kerberos has the Key Distribution Center (KDC), which facilitates authentication between two systems. The KDC consists of two logical parts—the Authentication Server (AS) and the Ticket-Granting Server (TGS).
Kerberos stores and maintains the secret keys of each client and server in the datastore. It establishes a secure session between two systems during their communication and identifies them with the stored secret key. The following diagram illustrates the architecture of Kerberos authentication:
As shown in the preceding diagram, when you want to access a service, the following steps are involved:
- The client sends an access ticket request to the AS as a plaintext request. This request contains the client ID, TGS ID, IP address, and authentication...