다음을 통해 공유


LsaRegisterLogonProcess 함수(ntsecapi.h)

LsaRegisterLogonProcess 함수는 LSA 서버에 대한 연결을 설정하고 호출자가 로그온 애플리케이션인지 확인합니다.

구문

NTSTATUS LsaRegisterLogonProcess(
  [in]  PLSA_STRING           LogonProcessName,
  [out] PHANDLE               LsaHandle,
  [out] PLSA_OPERATIONAL_MODE SecurityMode
);

매개 변수

[in] LogonProcessName

로그온 애플리케이션을 식별하는 LSA_STRING 구조체에 대한 포인터입니다. 관리자에게 표시하기에 적합한 인쇄 가능한 이름이어야 합니다. 예를 들어 Windows 로그온 애플리케이션은 "User32LogonProcess"라는 이름을 사용할 수 있습니다. 이 이름은 감사 중에 LSA에서 사용됩니다. LsaRegisterLogonProcess는 이름이 이미 사용 중인지 여부를 검사 않습니다.

이 문자열은 127바이트를 초과하면 안됩니다.

[out] LsaHandle

이후 인증 함수 호출에 사용되는 핸들을 수신하는 포인터입니다.

[out] SecurityMode

반환된 값은 의미가 없으며 무시해야 합니다.

반환 값

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

함수가 실패하면 반환 값은 NTSTATUS 코드입니다. 가능한 오류 코드는 다음과 같습니다.

반환 코드 설명
STATUS_PORT_CONNECTION_REFUSED
호출자에게 이 함수를 호출하는 데 필요한 SeTcbPrivilege 권한이 없습니다.

LsaAddAccountRights를 호출하여 이 권한을 설정할 수 있습니다.

STATUS_NAME_TOO_LONG
지정된 로그온 프로세스 이름이 127바이트를 초과합니다.
 

자세한 내용은 LSA 정책 함수 반환 값을 참조하세요.

LsaNtStatusToWinError 함수는 NTSTATUS 코드를 Windows 오류 코드로 변환합니다.

설명

로그온 프로세스에서 LSA에서 제공하는 다른 로그온 인증 함수를 사용하기 전에 이 함수를 호출해야 합니다.

LsaRegisterLogonProcess 함수는 함수를 호출하는 애플리케이션이 SeTcbPrivilege 권한 집합이 있는지 확인하여 로그온 프로세스인지 확인합니다. 또한 향후 LSA 인증 호출을 예상하여 PROCESS_DUP_HANDLE 액세스를 위한 애플리케이션 프로세스를 엽니다. 자세한 내용은 DuplicateHandle을 참조하세요.

LSA 서버에 대한 연결 사용을 마쳤으면 호출자의 로그온 애플리케이션 컨텍스트를 삭제하고 LsaDeregisterLogonProcess 함수를 호출하여 연결을 닫습니다.

요구 사항

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

추가 정보

LsaAddAccountRights

LsaConnectUntrusted

LsaDeregisterLogonProcess