2.2.17.2 RDSTLS Authentication Request PDU with Password Credentials

The RDSTLS Authentication Request PDU is sent by the client to the server and is used to request user authentication using data acquired from the Server Redirection Packet (section 2.2.13.1).


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

Version

PduType

DataType

RedirectionGuidLength

RedirectionGuid (variable)

...

UserNameLength

UserName (variable)

...

DomainLength

Domain (variable)

...

PasswordLength

Password (variable)

...

Version (2 bytes): A 16-bit unsigned integer that specifies the RDSTLS version. This field MUST be set to RDSTLS_VERSION_1 (0x0001).

PduType (2 bytes): A 16-bit unsigned integer that specifies the RDSTLS PDU type. This field MUST be set to RDSTLS_TYPE_AUTHREQ (0x0002).

DataType (2 bytes): A 16-bit unsigned integer that specifies the type of data contained in the PDU. This field MUST be set to RDSTLS_DATA_PASSWORD_CREDS (0x0001).

RedirectionGuidLength (2 bytes): A 16-bit unsigned integer that specifies the length, in bytes, of the RedirectionGuid field.

RedirectionGuid (variable): A variable-length array of bytes containing a Base64-encoded ([RFC4648] Section 4) GUID ([MS-DTYP] section 2.3.4) in Unicode format that functions as a unique identifier for the current redirected connection. This value SHOULD be acquired from the RedirectionGuid field of the Server Redirection Packet (section 2.2.13.1).

UserNameLength (2 bytes): A 16-bit unsigned integer that specifies the length, in bytes, of the UserName field.

UserName (variable): A variable-length array of bytes containing the username of the user in Unicode format, including a null-terminator. This value SHOULD be acquired from the UserName field of the Server Redirection Packet (section 2.2.13.1).

DomainLength (2 bytes): A 16-bit unsigned integer that specifies the length, in bytes, of the Domain field.

Domain (variable): A variable-length array of bytes containing the domain to which the user connected in Unicode format, including a null-terminator. This value SHOULD be acquired from the Domain field of the Server Redirection Packet (section 2.2.13.1).

PasswordLength (2 bytes): A 16-bit unsigned integer that specifies the length, in bytes, of the Password field.

Password (variable): A variable-length array of bytes containing an encrypted password blob. This value SHOULD be acquired from the Password field of the Server Redirection Packet (section 2.2.13.1).