ICredentialProviderCredential::GetSerialization 메서드(credentialprovider.h)
이 자격 증명을 기본 인증 엔진에 제출하려는 시도에 대한 응답으로 호출됩니다.
구문
HRESULT GetSerialization(
[out] CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE *pcpgsr,
[out] CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION *pcpcs,
[out] LPWSTR *ppszOptionalStatusText,
[out] CREDENTIAL_PROVIDER_STATUS_ICON *pcpsiOptionalStatusIcon
);
매개 변수
[out] pcpgsr
형식: CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE*
자격 증명을 직렬화하려는 시도의 성공 또는 실패를 나타냅니다.
[out] pcpcs
형식: CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION*
자격 증명에 대한 포인터입니다. 결과에 따라 유효한 자격 증명이 없을 수 있습니다.
[out] ppszOptionalStatusText
형식: LPWSTR*
serialization 후 로그온 UI에서 표시할 유니코드 문자열 값에 대한 포인터입니다. NULL일 수 있습니다.
[out] pcpsiOptionalStatusIcon
형식: CREDENTIAL_PROVIDER_STATUS_ICON*
GetSerialization 호출이 반환된 후 자격 증명에서 표시할 아이콘에 대한 포인터입니다. 이 값은 NULL일 수 있습니다.
반환 값
형식: HRESULT
메서드가 성공하면 S_OK를 반환하고, 그러지 않으면 HRESULT 오류 코드를 반환합니다.
설명
이 메서드는 필수입니다.
CREDENTIAL_PROVIDER_USAGE_SCENARIO 사용자가 자격 증명을 제출하려고 할 때 적절한 응답을 나타냅니다. 다음 표에서는 사용 시나리오에 따라 응답하는 방법을 나타냅니다.
CPUS_CHANGE_PASSWORD | 이 시나리오에서는 자격 증명 serialization이 발생하지 않습니다. 이 시나리오에서 자격 증명 공급자는 사용자의 개인 정보를 업데이트하고 pcpgsr로 CPGSR_NO_CREDENTIAL_FINISHED 반환해야 합니다. |
CPUS_CREDUI | 자격 증명 정보는 직렬화되어 호출 애플리케이션에 전달되어야 합니다. |
CPUS_LOGON, CPUS_UNLOCK_WORKSTATION | 자격 증명 정보는 이진 스트림으로 압축되고 Winlogon 및 결국 LSA로 전송되어야 합니다. |
자격 증명 공급자 모범 사례
자격 증명 공급자는 로그온을 완료하고 요청을 잠금 해제하기 위해 매우 중요한 사용자 비밀을 처리합니다. 모범 사례로 암호 및 PIN과 같은 비밀 정보는 최대한 주의하여 처리해야 합니다. 자격 증명 공급자 내에서 비밀 정보를 처리하기 위한 적절한 기술은 다음과 같습니다.- 항상 안전하게 비밀을 삭제합니다. 이렇게 하려면 비밀을 유지하는 데 사용된 메모리를 해제하기 전에 SecureZeroMemory 를 호출합니다.
- 비밀을 사용한 후 즉시 안전하게 삭제합니다.
- 필요한 시간 내에 의도한 용도로 사용되지 않는 경우 비밀을 안전하게 삭제합니다.
요구 사항
지원되는 최소 클라이언트 | Windows Vista [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2008 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | credentialprovider.h |