The Authenticator Pattern

A server system acting as a repository of objects available to a variety of unrelated distributed clients is likely to require a means to restrict access based on the identity of the requesting client. Identification and authentication protocols are often missing from currently available distributed object systems. The Authenticator pattern describes a general mechanism for providing identification and authentication to a server from a client. It has the added feature of allowing protocol negotiation to take place using the same procedures. The pattern operates by offering an authentication negotiation object which then provides the protected object only after authentication is successful.