共用方式為


KERB_EXTERNAL_TICKET結構 (ntsecapi.h)

KERB_EXTERNAL_TICKET結構包含外部票證的相關信息。

外部票證是導出至外部使用者的 Kerberos 票證。 Kerberos 票證定義於因特網 RFC 4120 中。 如需詳細資訊,請參閱 http://www.ietf.org。KERB_RETRIEVE_TKT_RESPONSE 結構會 使用此結構。

語法

typedef struct _KERB_EXTERNAL_TICKET {
  PKERB_EXTERNAL_NAME ServiceName;
  PKERB_EXTERNAL_NAME TargetName;
  PKERB_EXTERNAL_NAME ClientName;
  UNICODE_STRING      DomainName;
  UNICODE_STRING      TargetDomainName;
  UNICODE_STRING      AltTargetDomainName;
  KERB_CRYPTO_KEY     SessionKey;
  ULONG               TicketFlags;
  ULONG               Flags;
  LARGE_INTEGER       KeyExpirationTime;
  LARGE_INTEGER       StartTime;
  LARGE_INTEGER       EndTime;
  LARGE_INTEGER       RenewUntil;
  LARGE_INTEGER       TimeSkew;
  ULONG               EncodedTicketSize;
  PUCHAR              EncodedTicket;
} KERB_EXTERNAL_TICKET, *PKERB_EXTERNAL_TICKET;

成員

ServiceName

包含多個部分標準傳回服務名稱 的KERB_EXTERNAL_NAME 結構。

TargetName

包含多個部分服務主體名稱 (SPN) 的KERB_EXTERNAL_NAME結構。

ClientName

包含票證中用戶端名稱 的KERB_EXTERNAL_NAME 結構。 此名稱相對於目前的網域。

DomainName

UNICODE_STRING,其中包含對應至 ServiceName 成員的功能變數名稱。 這是簽發票證的網域。

TargetDomainName

包含票證有效網域名稱的 UNICODE_STRING 。 對於網域間票證,這是目的地網域。

AltTargetDomainName

包含目的地網域同義字 的UNICODE_STRING 。 每個網域都有兩個名稱:DNS 名稱和 NetBIOS 名稱。 如果票證中傳回的名稱與用來要求票證的名稱不同, (Kerberos 金鑰發佈中心 (KDC) 可能會執行名稱對應) ,此字串會包含原始名稱。

SessionKey

包含票證會話金鑰的KERB_CRYPTO_KEY結構。

TicketFlags

票證旗標,如因特網 RFC 4120 中所定義。 此參數可以是下列一或多個值。

意義
KERB_TICKET_FLAGS_forwardable (0x40000000)
票證授與伺服器可以根據呈現的票證,以不同的網路位址發出新的票證授與票證。
KERB_TICKET_FLAGS_forwarded (0x20000000)
票證已轉寄或根據涉及轉寄票證授與票證的驗證發出。
KERB_TICKET_FLAGS_hw_authent (0x00100000)
用於初始驗證的通訊協定需要使用預期只有具名客戶端擁有的硬體。 硬體驗證方法是由 KDC 選取,而且未指出方法的強度。
KERB_TICKET_FLAGS_initial (0x00400000)
票證是使用驗證服務通訊協議來簽發,而不是以票證授與票證為基礎。
KERB_TICKET_FLAGS_invalid (0x01000000)
票證無效。
KERB_TICKET_FLAGS_may_postdate (0x04000000)
表示票證授與伺服器,根據這個票證授與票證,可以發出張貼的票證。
KERB_TICKET_FLAGS_ok_as_delegate (0x00040000)
票證的目標是由目錄服務信任以進行委派。 因此,用戶端可以將其 認證 委派給伺服器,讓伺服器在與其他服務通訊時做為用戶端。
KERB_TICKET_FLAGS_postdated (0x02000000)
票證已張貼。 終端服務可以檢查票證的 驗證時間 成員,以判斷原始驗證何時發生。
KERB_TICKET_FLAGS_pre_authent (0x00200000)
在初始驗證期間,用戶端會在發出票證之前由 KDC 進行驗證。 預先驗證方法的強度未指出,但 KDC 可接受。
KERB_TICKET_FLAGS_proxiable (0x10000000)
向票證授與伺服器指出,只有非票證授與票證才能使用不同的網路位址發出。
KERB_TICKET_FLAGS_proxy (0x08000000)
票證是 Proxy。
KERB_TICKET_FLAGS_renewable (0x00800000)
票證可更新。 如果設定此旗標,則會在KERB_TICKET_CACHE_INFO結構的 RenewTime 成員中設定更新票證的時間限制。 可更新的票證可用來取得在稍後到期的替代票證。
KERB_TICKET_FLAGS_reserved (0x80000000)
保留供未來使用。 請勿設定此旗標。
KERB_TICKET_FLAGS_reserved1 (0x00000001)
保留的。

Flags

保留供未來使用。 將此成員設定為零。

KeyExpirationTime

FILETIME 結構,其中包含密鑰到期的時間。

StartTime

FILETIME 結構,其中包含票證生效的時間。

EndTime

FILETIME 結構,其中包含票證到期的時間。

RenewUntil

FILETIME 結構,其中包含可以更新票證的最新版本。 此時間之後所傳送的續約要求將會遭到拒絕。

TimeSkew

FILETIME 結構,其中包含發行票證的計算機上目前時間與將使用票證之計算機的測量時間差異。

EncodedTicketSize

編碼票證的大小,以位元組為單位。

EncodedTicket

包含 抽象語法表示法一 (ASN.1) 編碼票證的緩衝區。

規格需求

需求
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限桌面應用程式]
標頭 ntsecapi.h