gssapi.5 (2010 09)
g
gssapi(5) gssapi(5)
NAME
gssapi - Generic Security Service Application Programming Interface
DESCRIPTION
This introduction includes general information about the Generic Security Service Application Program-
ming Interface (GSSAPI) defined in RFC 2743, "Generic Security Service Application Programming Inter-
face," and RFC 2744, "Generic Security Service API: C-bindings." It also includes an overview of error
handling, data types, and calling conventions, including the following:
Integer types
String and other similar data types
Object identifiers (OIDs)
Object identifier sets (OID sets)
Credentials
Contexts
Authentication tokens
Major status values
Minor status values
Names
Channel bindings
Optional parameters
General Information
The Generic Security Service Application Programming Interface (GSSAPI) provides security services to
applications using peer-to-peer communications. Using GSSAPI routines, applications can perform the
following operations:
Enable an application to authenticate another application’s user.
Enable an application to delegate access rights to another application.
Apply security services, such as confidentiality and integrity, on a per-message basis.
GSSAPI supports a secure connection between two communicating applications. The application that
establishes the secure connection is called the context initiator . The application that accepts the secure
connection is the context acceptor
There are four stages involved in using the GSSAPI:
The context initiator acquires a credential with which it can prove its identity to other processes.
Similarly, the context acceptor acquires a credential to enable it to accept a security context. Either
application may omit this credential acquisition and use their default credentials in subsequent
stages. See the "Credentials" section in this manual page for more information.
The applications use credentials to establish their global identity. The global identity can be, but is not
necessarily, related to the local user name under which the application is running. Credentials can con-
tain either of the following:
Login Context The login context includes a principal’s network credentials, as well as other
account information.
Security Context The communicating applications establish a joint security context by exchanging
authentication tokens.
The security context is a pair of GSSAPI data structures that contain information that is shared between
the communicating applications. The information describes the state of each application. This security
context is required for per-message security services.
To establish a security context, the context initiator calls the
gss_init_sec_context() routine to
get a token . The token is cryptographically protected, opaque data. The context initiator transfers the
token to the context acceptor, which in turn passes the token to the
gss_accept_sec_context()
routine to decode and extract the shared information.
As part of establishing the security context, the context initiator is authenticated to the context acceptor.
The context initiator can require the context acceptor to authenticate itself in return.
The context initiator can delegate rights to allow the context acceptor to act as its agent. Delegation
means the context initiator gives the context acceptor the ability to initiate additional security contexts
as an agent of the context initiator. To delegate, the context initiator sets a flag on the
gss_init_sec_context() routine indicating that it wants to delegate and sends the returned token
HP-UX 11i Version 3: September 2010 − 1 − Hewlett-Packard Company 1