다음을 통해 공유


LSA_CONVERT_AUTH_DATA_TO_TOKEN 콜백 함수(ntsecpkg.h)

ConvertAuthDataToToken 함수는 GetAuthDataForUser 또는 GetUserAuthData 함수에서 반환된 권한 부여 데이터에서 액세스 토큰을 만듭니다.

구문

LSA_CONVERT_AUTH_DATA_TO_TOKEN LsaConvertAuthDataToToken;

NTSTATUS LsaConvertAuthDataToToken(
  [in]  PVOID UserAuthData,
  [in]  ULONG UserAuthDataSize,
  [in]  SECURITY_IMPERSONATION_LEVEL ImpersonationLevel,
  [in]  PTOKEN_SOURCE TokenSource,
  [in]  SECURITY_LOGON_TYPE LogonType,
  [in]  PUNICODE_STRING AuthorityName,
  [out] PHANDLE Token,
  [out] PLUID LogonId,
  [out] PUNICODE_STRING AccountName,
  [out] PNTSTATUS SubStatus
)
{...}

매개 변수

[in] UserAuthData

GetAuthDataForUser 또는 GetUserAuthData 함수에서 받은 권한 부여 데이터에 대한 포인터입니다.

[in] UserAuthDataSize

UserAuthData 매개 변수에 지정된 권한 부여 데이터의 크기(바이트)입니다.

[in] ImpersonationLevel

만들 토큰의 가장 수준을 지정하는 SECURITY_IMPERSONATION_LEVEL 값입니다.

[in] TokenSource

토큰에 기록할 원본을 지정하는 TOKEN_SOURCE 구조체에 대한 포인터입니다.

[in] LogonType

토큰에 기록할 로그온 유형을 나타내는 SECURITY_LOGON_TYPE 값입니다.

[in] AuthorityName

이 사용자에게 권한을 부여한 기관의 이름(일반적으로 도메인 이름)을 지정하는 UNICODE_STRING 구조체에 대한 포인터입니다.

[out] Token

사용자 토큰 핸들을 수신하는 HANDLE에 대한 포인터입니다.

사용자 토큰 사용을 마쳤으면 CloseHandle을 호출하여 핸들을 해제합니다.

[out] LogonId

토큰에 대한 로그온 식별자를 수신하는 LUID에 대한 포인터입니다.

[out] AccountName

UserAuthData 매개 변수에 인코딩된 계정 이름을 수신하는 UNICODE_STRING 구조체에 대한 포인터입니다.

[out] SubStatus

함수 호출의 반환 값에 대한 추가 정보를 수신하는 변수에 대한 포인터입니다.

반환 값

함수가 성공하면 반환 값이 STATUS_SUCCESS.

함수가 실패하면 반환 값은 실패한 이유를 나타내는 NTSTATUS 코드입니다.

설명

ConvertAuthDataTotoken 함수에 대한 포인터는 SpInitialize 함수에서 받은 LSA_SECPKG_FUNCTION_TABLE 구조체에서 사용할 수 있습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 ntsecpkg.h

추가 정보

GetAuthDataForUser

GetUserAuthData

LSA_SECPKG_FUNCTION_TABLE

SECURITY_IMPERSONATION_LEVEL

SECURITY_LOGON_TYPE

SpInitialize

TOKEN_SOURCE

UNICODE_STRING