RFC 927 PROPOSED STANDARD TELNET · AUTHENTICATION

TACACS Telnet option: TACACS user identification Telnet option

A Telnet option for passing an authenticated user's identifier to another host.

On rfc-editor.org ↗
PUBLISHED
December 1984
AUTHORS
B.A. Anderson
STREAM
Legacy
TELNET OPTION CODE
26
UUID SIZE
32 bits
DOI
10.17487/RFC0927

RFC text

Contents
Original text · RFC Editor View on rfc-editor.org ↗
Network Working Group                                  Brian A. Anderson
Request for Comments: 927                                            BBN
                                                           December 1984

                TACACS User Identification Telnet Option


Status of this Memo

   This RFC suggests a proposed protocol for the ARPA-Internet
   community, and requests discussion and suggestions for improvements.
   Distribution of this memo is unlimited.

Introduction

   The following is the description of a TELNET option designed to
   facilitate double login avoidance.  It is intended primarily for TAC
   connections to target hosts on behalf of TAC users, but it can be
   used between any two consenting hosts.  For example, all hosts at one
   site (e.g., BBN) can use this option to avoid double login when
   TELNETing to one another.

1. Command name and code

   TUID     26

2. Command Meanings

   IAC WILL TUID

      The sender (the TELNET user) proposes to authenticate the user and
      send the identifing UUID; or, the sender (the TELNET user) agrees
      to authenticate the user on whose behalf the connection is
      initiated.

   IAC WON'T TUID

      The sender (the TELNET user) refuses to authenticate the user on
      whose behalf the connection is initiated.

   IAC DO TUID

      The sender (the TELNET server) proposes that the recipient (the
      TELNET user) authenticate the user and send the identifing UUID;
      or, the sender (the TELNET server) agrees to accept the
      recipient's (the TELNET user's) authentication of the user
      identified by his UUID.

TUID Telnet Option


   IAC DON'T TUID

      The sender (the TELNET server) refuses to accept the recipient's
      (the TELNET user) authentication of the user.

   IAC SB TUID <uuid> IAC SE

      The sender (the TELNET user) sends the UUID <uuid> of the user on
      whose behalf the connection is established to the host to which he
      is connected.  The <uuid> is a 32 bit binary number.

3. Default

   WON'T TUID

      A TELNET user host (the initiator of a TELNET connection) not
      implementing or using the TUID option will reply WON'T TUID to a
      DO TUID.

   DON'T TUID

      A TELNET server host (the recipient of a TELNET connection) not
      implementing or using the TUID option reply DON'T TUID to a WILL
      TUID.

4. Motivation for the Option

   Under TACACS (the TAC Access Control System) a user must be
   authenticated (give a correct name/password pair) to a TAC before he
   can connect to a host via the TAC.  To avoid a second authentication
   by the target host, the TAC can pass along the user's proven identity
   (his UUID) to the that host.  Hosts may accept the TAC's
   authentication of the user or not, at their option.

   The same option can be used between any pair of cooperating hosts for
   the purpose of double login avoidance.

5. Description for the Option

   At the time that a host establishes a TELNET connection for a user to
   another host, if the latter supports the TUID option and wants to
   receive the user's UUID, it sends an IAC DO TUID to the the user's
   host.  If the user's host supports the TUID option and wants to
   authenticate the user by sending the user's UUID, it responds IAC
   WILL TUID; otherwise it responds with IAC WON'T TUID.  If both the
   user and server TELNETs agree, the user TELNET will then send the
   UUID to the server TELNET by sub-negotiation.

TUID Telnet Option


6. Examples

   There are two possible negotiations that result in the double login
   avoidance authentication of a user.  Both the server and the user
   TELNET support the TUID option.

      S = Server, U = User

      Case 1:

         S-> IAC DO TUID
         U-> IAC WILL TUID
         U-> IAC SB TUID <32-bit UUID> IAC SE

      Case 2:

         U-> IAC WILL TUID
         S-> IAC DO TUID
         U-> IAC SB TUID <32-bit UUID> IAC SE

   There are also two possible negoitiations that do not result in the
   authentication of a user.  In the first example the server supports
   TUID and the user TELNET doesn't.  In the second example the user
   TELNET supports TUID but the server TELNET doesn't.

      S = Server, U = User

      Case 3:

         S-> IAC DO TUID
         U-> IAC WONT TUID

      Case 4:

         U-> IAC WILL TUID
         S-> IAC DONT TUID

   The TUID is transmitted with the subnegotiation command.  For
   example, if the UUID had the value 1 the following string of octets
   would be transmitted:

      IAC SB TUID 0 0 0 1 IAC SE

   If the UUID had the value 255 the following string of octets would be
   transmitted:

      IAC SB TUID 0 0 0 IAC IAC IAC SE

TUID Telnet Option


   If the UUID had the value of all ones the following string of octets
   would be transmitted:

      IAC SB TUID IAC IAC IAC IAC IAC IAC IAC IAC IAC SE

ISO Plain Language

On this page
PROBLEMA TACACS user may authenticate to a terminal access controller and then face another login at the target host.
MECHANISMAfter both Telnet sides agree to TUID, the user side sends the user's 32-bit UUID in a subnegotiation.
THE TRADE-OFFA host may accept or decline the TAC's authentication; the memo requests discussion of the proposed protocol.

§1Avoiding a Second Login

Under the TAC Access Control System (TACACS), a user authenticates to a terminal access controller before connecting through it to another host. To avoid asking the user to authenticate again, the controller can pass the user's proven identity, represented by a UUID, to the target host.

The target host may accept or reject that authentication. The option is intended mainly for TAC connections but may be used by any two consenting hosts.

The first system can send the user's identifier to the next host. That host decides whether to accept the earlier authentication.

§2TUID Negotiation

The Telnet option is named TUID and has code 26. The server can send IAC DO TUID to request the identifier; the user side can answer IAC WILL TUID to agree or IAC WON'T TUID to refuse. The user side may also offer with WILL, and the server can accept with DO.

If a host does not implement the option, the default response is WON'T on the user side or DON'T on the server side. The UUID is sent only when both sides agree.

Both sides must agree before the user identifier is sent. A side that does not support TUID refuses the negotiation.

§3UUID Subnegotiation

The user Telnet sends IAC SB TUID <uuid> IAC SE. The UUID is a 32-bit binary number. The RFC's examples show the value 1 as four octets 0 0 0 1; Telnet's IAC byte is doubled when it appears within the value.

The memo describes two successful negotiation orders and two refusals. It is a proposed protocol for the ARPA-Internet community and asks for discussion and suggestions.

Once both sides agree, the user side sends the 32-bit identifier in a Telnet subnegotiation. The RFC also shows how a command byte inside the value is escaped.