다음을 통해 공유


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 또는 하위 수준 형식 또는 인증서여야 합니다. 일반적으로 pszUserNameCredUIPromptForCredentials 또는 CredUICmdLinePromptForCredentials에서 수신됩니다.

[out] user

사용자 계정 이름을 수신하는 null로 끝나는 문자열에 대한 포인터입니다.

[in] userBufferSize

종료 null 문자를 포함하여 pszUser 문자열에 쓸 최대 문자 수입니다.

참고 CREDUI_MAX_USERNAME_LENGTH 종료 null 문자를 포함하지 않습니다.
 

[out] domain

도메인 이름을 수신하는 null로 끝나는 문자열에 대한 포인터입니다. pszUserName이 인증서를 지정하면 pszDomainNULL이 됩니다.

[in] domainBufferSize

종료 null 문자를 포함하여 pszDomain 문자열에 쓸 최대 문자 수입니다.

참고 CREDUI_MAX_DOMAIN_TARGET_LENGTH 종료 null 문자를 포함하지 않습니다.
 

반환 값

이 함수는 다음을 반환합니다.

  • NO_ERROR

    사용자 이름이 유효합니다.

  • ERROR_INVALID_ACCOUNT_NAME

    사용자 이름이 잘못되었습니다.

  • ERROR_INSUFFICIENT_BUFFER

    버퍼 중 하나가 너무 작습니다.

  • ERROR_INVALID_PARAMETER
    • ulUserMaxChars 또는 ulDomainMaxChars 는 0입니다.
    • pszUserName, pszUser 또는 pszDomainNULL입니다.

설명

이 함수는 CredUIPromptForCredentialsCredUICmdLinePromptForCredentials 함수에서 반환된 사용자 이름 정보를 구문 분석하여 결과 자격 증명을 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

추가 정보

CredIsMarshaledCredential

CredUICmdLinePromptForCredentials

CredUIPromptForCredentials

LogonUser