Compartilhar via


Método ICredentialProvider::GetCredentialCount (credentialprovider.h)

Obtém o número de credenciais disponíveis nesse provedor de credenciais.

Sintaxe

HRESULT GetCredentialCount(
  [out] DWORD *pdwCount,
  [out] DWORD *pdwDefault,
  [out] BOOL  *pbAutoLogonWithDefault
);

Parâmetros

[out] pdwCount

Tipo: DWORD*

Um ponteiro para um valor DWORD que recebe a contagem de credenciais.

[out] pdwDefault

Tipo: DWORD*

Um ponteiro para um valor DWORD que recebe o índice da credencial a ser usada como padrão. Se nenhum valor padrão tiver sido definido, esse valor deverá ser definido como CREDENTIAL_PROVIDER_NO_DEFAULT.

[out] pbAutoLogonWithDefault

Tipo: BOOL*

Um ponteiro para um valor BOOL que indica se a credencial padrão identificada por pdwDefault deve ser usada para uma tentativa de logon automático. Uma tentativa de logon automático significa que a interface do usuário de logon ou a interface do usuário de credencial chamarão imediatamente GetSerialization no bloco padrão do provedor.

Retornar valor

Tipo: HRESULT

Se o método for bem-sucedido, ele retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.

Comentários

Esse método é necessário.

Quando uma interface do usuário de logon ou uma interface do usuário de credencial está pronta para interação do usuário, uma credencial padrão é selecionada por padrão. Como cada provedor de credenciais fornece uma credencial padrão, as regras a seguir determinam se pdwDefault receberá o foco ou se a credencial será conectada automaticamente.

  • Se uma credencial padrão já tiver sido especificada, essa credencial não se destina a ser usada para logon automático e o pdwDefault é usado para logon automático, então pdwDefault será usado como padrão.
  • Se pdwDefault for do último provedor conectado e ainda não houver um padrão com logon automático, pdwDefault será usado como padrão.
  • Se nenhum padrão tiver sido especificado, pdwDefault será usado como o padrão.
Se o número de credenciais válidas for alterado, o provedor de credenciais deverá chamar CredentialsChanged na instância ICredentialProviderEvents fornecida em Advise.

Práticas recomendadas do provedor de credenciais

Os provedores de credenciais lidam com segredos de usuário extremamente confidenciais para concluir solicitações de logon e desbloqueio. Como prática recomendada, informações secretas, como senhas e PINs, devem ser tratadas com o máximo de cuidado. As técnicas adequadas para lidar com informações secretas em um provedor de credenciais são:
  • Sempre descarte segredos com segurança. Para fazer isso, chame SecureZeroMemory antes de liberar a memória usada para manter qualquer segredo.
  • Descarte os segredos com segurança imediatamente depois que eles forem usados.
  • Descarte segredos com segurança se eles não forem usados para a finalidade pretendida dentro de um período esperado.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho credentialprovider.h