[285] in Kerberos_V5_Development
GSS API V-C.3
jtkohl@ATHENA.MIT.EDU (jtkohl@ATHENA.MIT.EDU)
Fri Sep 14 16:17:17 1990
This is in /mit/krb5/doc/gss/gssapi_c3.ps
Date: Fri, 14 Sep 90 14:08:18 EDT
From: "John Linn. 508-264-5491. DTN 293-5491. 14-Sep-1990 1402" <linn@zendia.enet.dec.com>
To: auth-api-ext@crl.dec.com
Subject: GSSAPI revision (C.3) to follow
A companion message will carry a PostScript copy of Version C.3 of the Generic
Security Service Application Program Interface (GSSAPI), responding to a number
of comments and observations on the 27 April 1990 Version C.2 draft. If you
have difficulty accomodating the received PostScript, send me your physical
address and I'll see that a hardcopy gets to you. Your comments on this
revision are solicited.
John Linn
Digital Equipment Corporation
85 Swanson Rd., BXB1-2/D04
Boxborough, MA 01719-1326
Linn@ultra.enet.dec.com
SUMMARY OF CHANGES FROM GSSAPI VERSION C.2 TO VERSION C.3:
Clarification of intended scope as relating to underlying cryptographically
based mechanisms (e.g., not to weak authentication using passwords exchanged
between peers).
Prefixed GSSAPI routine names and major_status returns with "GSS_".
Renamed RETRY feature to CONTINUE.
Additional material on tokens and recommendation for mechanism-independent
encapsulating format allowing indication of mechanism type (Appendix B).
Additional discussion on mechanism types. Changed data type of mech_type from
INTEGER to OBJECT IDENTIFIER. Added mech_type return value to
GSS_Init_sec_context(), allowing callers that requested the default mechanism
to identify the mechanism selected, and allowed specification of default
acceptor_cred_handle to GSS_Accept_sec_context().
Added discussion on naming issues. An object ID argument is included along
with names transferred across the GSSAPI in order to identify the type of those
names, and new GSS_BAD_NAMETYPE and GSS_BAD_NAME major_status codes are
incorporated. As a provisional extension in the interests of portability of a
subclass of applications across naming environments, new GSS_Compare_name() and
GSS_Display_name() calls are defined (comments on the utility and sufficiency
of these primitives to support porting of candidate GSSAPI applications are
especially invited).
Added GSS_Indicate_mechs() call so that a caller can determine the set of
mechanisms supported on the local system, to help in formulating input to
GSS_Acquire_cred().
Additional discussion re credential management and lifetimes. Added to
GSS_Acquire_cred() the ability to accept a "default" desiredname specifier.
Added a new input indicator to GSS_Acquire_cred(), allowing callers to
distinguish requests for "INITIATE-AND-ACCEPT", "INITIATE-ONLY", and
"ACCEPT-ONLY" credentials. Added discussion about disambiguation among multiple
credential sets corresponding to the same principal identity.
Added clarifying text to GSS_Release_cred() discussion, noting that (given the
fact that multiple callers are not precluded from gaining authorized access to
the same credentials) invocation of the release operation does not guarantee
that credentials are deleted on a system-wide basis.
Added "NO_CRED" as possible major status code from GSS_Init_sec_context() and
GSS_Accept_sec_context() calls.
Described composition of major_status return as bit vector, allowing failure
cases to identify multiple status conditions. Added GSS_Display_status() call
to provide printable representations for returned status codes.
Added text to emphasize mechanism-specific nature of non-default QOP
specifications.
Added conf_avail return value from GSS_Init_sec_context() and
GSS_Accept_sec_context() to indicate whether the context supports per-message
confidentiality services (i.e., whether a request for encryption through the
conf_req_flag input to GSS_Seal() will be honored.).
Added GSS_Context_time() call and time_rec returns from GSS_Init_sec_context()
and GSS_Accept_sec_context() to allow callers to determine the length of time
for which a newly established or ongoing context will be valid.
Added DEFECTIVE_CREDENTIAL major_status return for GSS_Init_sec_context() and
GSS_Accept_sec_context() calls.
Various editorial changes.
--jl