DsClientMakeSpnForTargetServerA 함수(ntdsapi.h)
DsClientMakeSpnForTargetServer 함수는 인증에 사용할 특정 서버를 식별하는 SPN(서비스 사용자 이름)을 생성합니다.
통사론
NTDSAPI DWORD DsClientMakeSpnForTargetServerA(
[in] LPCSTR ServiceClass,
[in] LPCSTR ServiceName,
[in, out] DWORD *pcSpnLength,
[out] LPSTR pszSpn
);
매개 변수
[in] ServiceClass
서비스에서 정의한 대로 서비스의 클래스를 포함하는 null로 끝나는 문자열에 대한 포인터입니다. 이 문자열은 서비스에 고유한 문자열일 수 있습니다.
[in] ServiceName
DNS(고유 이름 서비스) 호스트 이름을 포함하는 null로 끝나는 문자열에 대한 포인터입니다. 이 이름은 인터넷 표준 형식의 정규화된 이름 또는 IP 주소일 수 있습니다.
보안 문제가 발생할 수 있으므로 ServiceName IP 주소를 사용하지 않는 것이 좋습니다. SPN을 생성하기 전에 DNS 이름 확인을 통해 IP 주소를 컴퓨터 이름으로 변환해야 합니다. DNS 이름 확인을 스푸핑하여 의도한 컴퓨터 이름을 권한이 없는 컴퓨터 이름으로 바꿀 수 있습니다.
[in, out] pcSpnLength
항목에서 pszSpn 버퍼
[out] pszSpn
SPN을 수신하는 문자열 버퍼에 대한 포인터입니다.
반환 값
이 함수는 표준 Windows 오류 코드를 반환합니다.
발언
이 함수를 사용하는 경우 서비스 클래스와 DNS 호스트 이름의 일부를 제공합니다.
이 함수는 DsMakeSpn 함수의 간소화된 버전입니다. ServiceName DNS를 통해 확인하여 정식으로 만들어집니다.
GUID 기반 DNS 이름은 지원되지 않습니다. 생성되는 경우 간소화된 SPN은 다음과 같습니다.
ServiceClass / ServiceName / ServiceName
인스턴스 이름 부분(두 번째 위치)은 항상 기본값으로 설정됩니다. 포트 및 참조자 필드는 사용되지 않습니다.
메모
ntdsapi.h 헤더는 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 DsClientMakeSpnForTargetServer를 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입대한
요구 사항
요구 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista |
지원되는 최소 서버 | Windows Server 2008 |
대상 플랫폼 | Windows |
헤더 | ntdsapi.h |
라이브러리 | Ntdsapi.lib |
DLL | Ntdsapi.dll |