CredUIParseUserNameA 함수(wincred.h)
CredUIParseUserName 함수는 정규화된 사용자 이름에서 도메인 및 사용자 계정 이름을 추출합니다.
구문
CREDUIAPI DWORD CredUIParseUserNameA(
[in] PCSTR userName,
[out] CHAR *user,
[in] ULONG userBufferSize,
[out] CHAR *domain,
[in] ULONG domainBufferSize
);
매개 변수
[in] userName
구문 분석할 사용자 이름을 포함하는 null로 끝나는 문자열에 대한 포인터입니다. 이름은 UPN 또는 하위 수준 형식 또는 인증서여야 합니다. 일반적으로 pszUserName 은 CredUIPromptForCredentials 또는 CredUICmdLinePromptForCredentials에서 수신됩니다.
[out] user
사용자 계정 이름을 수신하는 null로 끝나는 문자열에 대한 포인터입니다.
[in] userBufferSize
종료 null 문자를 포함하여 pszUser 문자열에 쓸 최대 문자 수입니다.
[out] domain
도메인 이름을 수신하는 null로 끝나는 문자열에 대한 포인터입니다. pszUserName이 인증서를 지정하면 pszDomain은 NULL이 됩니다.
[in] domainBufferSize
종료 null 문자를 포함하여 pszDomain 문자열에 쓸 최대 문자 수입니다.
반환 값
이 함수는 다음을 반환합니다.
- NO_ERROR
사용자 이름이 유효합니다.
- ERROR_INVALID_ACCOUNT_NAME
사용자 이름이 잘못되었습니다.
- ERROR_INSUFFICIENT_BUFFER
버퍼 중 하나가 너무 작습니다.
- ERROR_INVALID_PARAMETER
- ulUserMaxChars 또는 ulDomainMaxChars 는 0입니다.
- pszUserName, pszUser 또는 pszDomain 은 NULL입니다.
설명
이 함수는 CredUIPromptForCredentials 및 CredUICmdLinePromptForCredentials 함수에서 반환된 사용자 이름 정보를 구문 분석하여 결과 자격 증명을 LogonUser와 같은 함수에 전달하여 사용자 이름과 도메인을 별도의 문자열로 필요로 합니다.
다음 형식이 지원됩니다.
- <MarshalledCredentialReference>
CredIsMarshaledCredential에 정의된 마샬링된 자격 증명 참조입니다. 이러한 자격 증명은 User 매개 변수에 반환됩니다. Domain 매개 변수는 빈 문자열로 설정됩니다.
- <DomainName>\<UserName>
<UserName> 은 User 매개 변수에 반환되고 <DomainName> 은 Domain 매개 변수로 반환됩니다. UserName에 백슬래시(\)가 포함된 경우 이름은 이 구문을 갖는 것으로 간주됩니다.
- <UserName>@<DNSDomainName>
전체 문자열은 User 매개 변수에 반환됩니다. Domain 매개 변수는 빈 문자열로 설정됩니다. 이 구문의 경우 UserName은 @를 포함할 수 있지만 <DNSDomainName>>은 사용할 수 없으므로 <문자열의 마지막 @이 사용됩니다.
참고
wincred.h 헤더는 CRedUIParseUserName을 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows XP [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | wincred.h |
라이브러리 | Credui.lib |
DLL | Credui.dll |