KERB_TICKET_LOGON 结构 (ntsecapi.h)

KERB_TICKET_LOGON 结构包含网络登录的配置文件信息。

它由 LsaLogonUser 函数使用。

语法

typedef struct _KERB_TICKET_LOGON {
  KERB_LOGON_SUBMIT_TYPE MessageType;
  ULONG                  Flags;
  ULONG                  ServiceTicketLength;
  ULONG                  TicketGrantingTicketLength;
  PUCHAR                 ServiceTicket;
  PUCHAR                 TicketGrantingTicket;
} KERB_TICKET_LOGON, *PKERB_TICKET_LOGON;

成员

MessageType

KERB_LOGON_SUBMIT_TYPE 标识所发出的登录请求类型的值。 此成员必须设置为 KerbTicketLogon

Flags

可设置为 的 ULONG KERB_LOGON_FLAG_ALLOW_EXPIRED_TICKET允许锁定的工作站使用过期票证重新登录。 将忽略其他值。

ServiceTicketLength

指示 ServiceTicket 缓冲区的长度。

TicketGrantingTicketLength

指示 TicketGrantingTicket 缓冲区的长度。 对于空缓冲区,必须设置为零。

ServiceTicket

服务“主机”或计算机帐户 服务主体名称 的必需票证 (SPN) 以 ASN.1 编码 Kerberos 票证的形式。 如果 Flags 成员设置为 KERB_LOGON_FLAG_ALLOW_EXPIRED_TICKET,则可以接受过期票证。

TicketGrantingTicket

可选缓冲区,其中包含 ASN.1 编码的KRB_CRED消息,其中包含用于初始化凭据缓存的用户 Kerberos 票证授予票证 (KRBTGT) 。 票证必须在票证选项中设置“已转发”标志。 KRB_CRED消息在 Internet RFC 4120 的第 5.8 节中定义。 有关详细信息,请参阅 http://www.ietf.org

注解

服务票证必须为计算机的主机 SPN。 如果票证包含 PAC) (Windows Privilege 属性证书,则它将用于构造用户的登录令牌。 否则,将使用票证中的客户端主体名称创建匿名令牌。

如果票证授予票证 (TGT) 作为KRB_CRED消息提供,则会将其置于 登录会话 凭据缓存中。 如果省略 TGT,则登录将仅适用于本地计算机。

要求

要求
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
标头 ntsecapi.h