[12] in GSSAPI Development

home help back first fref pref prev next nref lref last post

Re: On provision of source IP addresses

daemon@ATHENA.MIT.EDU (Theodore Ts'o)
Mon Apr 29 20:15:35 1991

Date: Mon, 29 Apr 91 20:14:32 -0400
From: tytso@ATHENA.MIT.EDU (Theodore Ts'o)
To: "John Linn. 508.486.6588. DTN 226-6588.  29-Apr-1991 1643"
Cc: gssapi-dev@ATHENA.MIT.EDU
In-Reply-To: John Linn. 508.486.6588. DTN 226-6588.  29-Apr-1991 1643's message of Mon, 29 Apr 91 13:43:34 PDT,
Reply-To: tytso@ATHENA.MIT.EDU

   Date: Mon, 29 Apr 91 13:43:34 PDT
   From: linn@zendia.enet.dec.com

   Another use for the IP address would be to provide a value to compare
   against optional entries in a ticket's caddr field (per KV5 draft 4,
   p. 24).  

This is exactly the reason why I'm arguing that the network address
should be included into the gss_accept_security_context().  I agree that
including the IP address is a bit of a layering violation, and it may be
a little bit ugly, but 1) needing to pass information from one layer to
another is not ipso facto a bad idea, and 2) in an OSI environment,
that's probably the least of your problems.  :-)

The alternative, however, is that you would need to document in the GSS
API documentation that due to limitations in the design of the GSS API
1) a site that wishes to use Kerberos V5 and the GSS API must use
zero-address tickets (ref KRBV5 draft 4, page 24) or 2) the GSS API
implementation must explicitly violate the Kerberos protocol spec and
_not_ check the the sender address against addresses contained in the
ticket during a gss_accept_security_context().  It is my belief either
of these possibilities are worse than the minor elegance problem with
putting in the network address into GSS API layer.  After all, we are
intending to use the GSS API in the real world!

In any case, current input_chan_binding_buffer serves no purpose anyway
--- since it is specified as "application specific", an application
could just sign input channel information using gss_sign and then the
application server could compare it as part of the startup of the
application protocol.  So at the very least, even if we don't do
anything else, the input_chan_binding_buffer variable should go away.

						- Ted

home help back first fref pref prev next nref lref last post