다음을 통해 공유


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이 발생하지 않습니다. 이 시나리오에서 자격 증명 공급자는 사용자의 개인 정보를 업데이트하고 pcpgsrCPGSR_NO_CREDENTIAL_FINISHED 반환해야 합니다.
CPUS_CREDUI 자격 증명 정보는 직렬화되어 호출 애플리케이션에 전달되어야 합니다.
CPUS_LOGON, CPUS_UNLOCK_WORKSTATION 자격 증명 정보는 이진 스트림으로 압축되고 Winlogon 및 결국 LSA로 전송되어야 합니다.
 

자격 증명 공급자 모범 사례

자격 증명 공급자는 로그온을 완료하고 요청을 잠금 해제하기 위해 매우 중요한 사용자 비밀을 처리합니다. 모범 사례로 암호 및 PIN과 같은 비밀 정보는 최대한 주의하여 처리해야 합니다. 자격 증명 공급자 내에서 비밀 정보를 처리하기 위한 적절한 기술은 다음과 같습니다.
  • 항상 안전하게 비밀을 삭제합니다. 이렇게 하려면 비밀을 유지하는 데 사용된 메모리를 해제하기 전에 SecureZeroMemory 를 호출합니다.
  • 비밀을 사용한 후 즉시 안전하게 삭제합니다.
  • 필요한 시간 내에 의도한 용도로 사용되지 않는 경우 비밀을 안전하게 삭제합니다.

요구 사항

   
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 credentialprovider.h