다음을 통해 공유


KERB_RETRIEVE_TKT_REQUEST 구조체(ntsecapi.h)

KERB_RETRIEVE_TKT_REQUEST 구조에는 티켓을 검색하는 데 사용되는 정보가 포함되어 있습니다.

LsaCallAuthenticationPackage에서 사용됩니다. Kerberos 티켓은 인터넷 RFC 4120에 정의되어 있습니다. 자세한 내용은 http://www.ietf.org를 참조하세요.

구문

typedef struct _KERB_RETRIEVE_TKT_REQUEST {
  KERB_PROTOCOL_MESSAGE_TYPE MessageType;
  LUID                       LogonId;
  UNICODE_STRING             TargetName;
  ULONG                      TicketFlags;
  ULONG                      CacheOptions;
  LONG                       EncryptionType;
  SecHandle                  CredentialsHandle;
} KERB_RETRIEVE_TKT_REQUEST, *PKERB_RETRIEVE_TKT_REQUEST;

멤버

MessageType

KERB_PROTOCOL_MESSAGE_TYPE 요청 유형을 나타내는 값입니다. 이 멤버는 KerbRetrieveEncodedTicketMessage로 설정해야 합니다.

LogonId

로그온 세션 식별자를 포함하는 LUID 구조체입니다. 현재 사용자의 로그온 세션에 대해 0일 수 있습니다. 0이 아니면 호출자에게 SeTcbPrivilege 권한 집합이 있어야 합니다. 이 오류가 발생하면 Kerberos 인증 패키지는 LsaCallAuthenticationPackageProtocolStatus 매개 변수를 STATUS_ACCESS_DENIED 설정합니다.

TargetName

대상 서비스의 이름을 포함하는 UNICODE_STRING.

TicketFlags

검색된 티켓에 대한 사용을 지정하는 플래그를 포함합니다. TicketFlags가 0으로 설정되고 캐시에 일치하는 티켓이 있는 경우 플래그 값에 관계없이 해당 티켓이 반환됩니다. 캐시에 일치하는 항목이 없으면 기본 플래그 값이 있는 새 티켓이 요청됩니다.

이 멤버가 0으로 설정되지 않은 경우 반환된 티켓은 캐시되지 않습니다.

CacheOptions

캐시 검색 옵션을 나타냅니다. 캐시를 검색해야 하며 티켓이 없으면 새 티켓을 요청해야 함을 나타내려면 이 멤버를 0으로 설정합니다.

이 멤버가 0으로 설정되지 않은 경우 반환된 티켓은 캐시되지 않습니다.

CacheOptions는 다음 값을 포함할 수 있습니다.

의미
KERB_RETRIEVE_TICKET_DONT_USE_CACHE
1
항상 새 티켓을 요청합니다. 는 캐시를 검색하지 않습니다.

티켓을 가져온 경우 Kerberos 인증 패키지는 LsaCallAuthenticationPackage 함수의 ProtocolStatus 매개 변수에 STATUS_SUCCESS 반환합니다.

KERB_RETRIEVE_TICKET_USE_CREDHANDLE
4
LogonId 대신 CredentialsHandle 멤버를 사용하여 로그온 세션을 식별합니다. 자격 증명 핸들은 티켓이 검색되는 클라이언트 자격 증명으로 사용됩니다.

참고 이 옵션은 64비트 Windows에서 실행되는 32비트 Windows 기반 애플리케이션에는 사용할 수 없습니다.

KERB_RETRIEVE_TICKET_USE_CACHE_ONLY
2
이전에 캐시된 티켓만 반환합니다.

이러한 티켓을 찾을 수 없는 경우 Kerberos 인증 패키지는 LsaCallAuthenticationPackage 함수의 ProtocolStatus 매개 변수에 STATUS_OBJECT_NAME_NOT_FOUND 반환합니다.

KERB_RETRIEVE_TICKET_AS_KERB_CRED
8
티켓을 Kerberos 자격 증명으로 반환합니다. Kerberos 티켓은 인터넷 RFC 4120 에서 KRB_CRED 정의됩니다. 자세한 내용은 http://www.ietf.org를 참조하세요.
KERB_RETRIEVE_TICKET_WITH_SEC_CRED
10
구현되지 않았습니다.
KERB_RETRIEVE_TICKET_CACHE_TICKET
20
현재 캐시에 있는 티켓을 반환합니다. 티켓이 캐시에 없으면 요청된 다음 캐시됩니다. 이 플래그는 KERB_RETRIEVE_TICKET_DONT_USE_CACHE 플래그와 함께 사용하면 안 됩니다.

WINDOWS XP SP1 이하 및 Windows Server 2003: 이 옵션은 사용할 수 없습니다.

KERB_RETRIEVE_TICKET_MAX_LIFETIME
40
정책에서 허용되는 최대 시간으로 새 티켓을 반환합니다. 시세는 나중에 캐시됩니다. 이 플래그를 사용하면 KERB_RETRIEVE_TICKET_USE_CACHE_ONLY 설정되지 않고 KERB_RETRIEVE_TICKET_CACHE_TICKET 설정됨을 의미합니다.

Windows Vista, Windows Server 2008, WINDOWS XP SP1 이하 및 Windows Server 2003: 이 옵션은 사용할 수 없습니다.

EncryptionType

요청된 티켓에 사용할 암호화 유형을 지정합니다. 이 멤버가 0으로 설정되지 않은 경우 반환된 티켓은 캐시되지 않습니다.

이 멤버는 다음 값 중 하나를 가질 수 있습니다.

의미
KERB_ETYPE_DES_CBC_CRC
CRC-32 체크섬이 있는 암호 블록 체인 모드에서 DES 암호화를 사용합니다.
KERB_ETYPE_DES_CBC_MD4
MD4 체크섬이 있는 암호 블록 체인 모드에서 DES 암호화를 사용합니다.
KERB_ETYPE_DES_CBC_MD5
MD5 체크섬이 있는 암호 블록 체인 모드에서 DES 암호화를 사용합니다.
KERB_ETYPE_NULL
암호화를 사용하지 않습니다.
KERB_ETYPE_RC4_HMAC_NT
Windows에서 사용하는 해시 기반 MAC(메시지 인증 코드)과 함께 RC4 스트림 암호화를 사용합니다.
KERB_ETYPE_RC4_MD4
MD4 해시 함수와 함께 RC4 스트림 암호화를 사용합니다.
>127
127보다 큰 값은 로컬 값에 대해 예약되어 있으며 예고 없이 변경 될 수 있습니다.

CredentialsHandle

로그온 세션 식별자 대신 사용되는 SSPI 자격 증명 핸들입니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
머리글 ntsecapi.h