다음을 통해 공유


CredEnumerateA 함수(wincred.h)

CredEnumerate 함수는 사용자의 자격 증명 집합에서 자격 증명을 열거합니다. 사용되는 자격 증명 집합은 현재 토큰의 로그온 세션과 연결된 자격 증명 집합입니다. 토큰에 사용자의 SID를 사용하지 않도록 설정해서는 안 됩니다.

구문

BOOL CredEnumerateA(
  [in]  LPCSTR       Filter,
  [in]  DWORD        Flags,
  [out] DWORD        *Count,
  [out] PCREDENTIALA **Credential
);

매개 변수

[in] Filter

반환된 자격 증명에 대한 필터를 포함하는 null로 끝나는 문자열에 대한 포인터입니다. 필터와 일치하는 TargetName 자격 증명만 반환됩니다. 필터는 이름 접두사 뒤에 별표가 잇도록 지정합니다. instance 경우 필터 "FRED*"는 "FRED" 문자열로 시작하는 TargetName을 사용하여 모든 자격 증명을 반환합니다.

NULL을 지정하면 모든 자격 증명이 반환됩니다.

[in] Flags

이 매개 변수의 값은 비트 OR 연산과 결합된 다음 값 중 0개 이상일 수 있습니다.

의미
CRED_ENUMERATE_ALL_CREDENTIALS
0x1
이 함수는 사용자의 자격 증명 집합에 있는 모든 자격 증명을 열거합니다. 각 자격 증명의 대상 이름은 "namespace:attribute=target" 형식으로 반환됩니다. 이 플래그가 설정되고 Filter 매개 변수가 NULL이 아니면 함수가 실패하고 ERROR_INVALID_FLAGS 반환합니다.

Windows Server 2003 및 Windows XP: 이 플래그는 지원되지 않습니다.

[out] Count

자격 증명 배열에서 반환된 자격 증명 의 수입니다.

[out] Credential

자격 증명에 대한 포인터 배열에 대한 포인터입니다. 반환된 자격 증명은 할당된 단일 블록입니다. 버퍼 내에 포함된 모든 포인터는 이 단일 할당된 블록 내의 위치에 대한 포인터입니다. 반환된 단일 버퍼는 CredFree를 호출하여 해제해야 합니다.

반환 값

함수는 성공 시 TRUE 를 반환하고 실패 시 FALSE 를 반환합니다. GetLastError 함수를 호출하여 보다 구체적인 상태 코드를 가져올 수 있습니다. 다음 상태 코드를 반환할 수 있습니다.

반환 코드/값 설명
ERROR_NOT_FOUND
1168(0x490)
지정된 필터와 일치하는 자격 증명이 없습니다.
ERROR_NO_SUCH_LOGON_SESSION
1312 (0x520)
로그온 세션이 없거나 이 로그온 세션과 연결된 자격 증명 집합이 없습니다. 네트워크 로그온 세션에는 연결된 자격 증명 집합이 없습니다.
ERROR_INVALID_FLAGS
1004(0x3EC)
잘못된 플래그가 Flags 매개 변수에 대해 지정되었거나 Flags 매개 변수에 대해 CRED_ENUMERATE_ALL_CREDENTIALS 지정되었으며 Filter매개 변수NULL이 아닙니다.

설명

참고

wincred.h 헤더는 UNICODE 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 CredEnumerate를 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.

요구 사항

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

추가 정보

CredFree

GetLastError