Método ICredentialProviderFilter::Filter (credentialprovider.h)

Avalia se uma lista de provedores de credenciais deve ter permissão para fornecer blocos de credenciais.

Sintaxe

HRESULT Filter(
  [in]      CREDENTIAL_PROVIDER_USAGE_SCENARIO cpus,
  [in]      DWORD                              dwFlags,
  [in]      GUID                               *rgclsidProviders,
  [in, out] BOOL                               *rgbAllow,
  [in]      DWORD                              cProviders
);

Parâmetros

[in] cpus

Tipo: CREDENTIAL_PROVIDER_USAGE_SCENARIO

Um ponteiro para um valor CREDENTIAL_PROVIDER_USAGE_SCENARIO que declara os cenários nos quais há suporte para um provedor de credenciais.

[in] dwFlags

Tipo: DWORD

Sinalizadores de cenário de uso. Esse parâmetro só será válido se cpus for CPUS_CREDUI. Eles são definidos em Wincred.h.

CREDUIWIN_GENERIC

O nome de usuário/senha de texto sem formatação está sendo solicitado.

CREDUIWIN_CHECKBOX

Mostrar a caixa de seleção Salvar Credencial .

CREDUIWIN_AUTHPACKAGE_ONLY

Somente os provedores de credenciais que dão suporte ao pacote de autenticação de entrada devem enumerar.

CREDUIWIN_IN_CRED_ONLY

Somente a credencial de entrada para o pacote de autenticação específico deve ser enumerada.

CREDUIWIN_ENUMERATE_ADMINS

Os provedores de credenciais devem enumerar administradores.

CREDUIWIN_ENUMERATE_CURRENT_USER

Somente a credencial de entrada

CREDUIWIN_PACK_32_WOW

[in] rgclsidProviders

Tipo: GUID*

Um ponteiro para uma matriz de CLSIDs do provedor de credenciais.

[in, out] rgbAllow

Tipo: BOOL*

Na entrada, um ponteiro para uma matriz de valores BOOL , um para cada membro correspondente da matriz rgclsidProviders , todos inicializados como TRUE.

Na saída, conterá TRUE se o provedor de credenciais correspondente em rgclsidProviders tiver permissão para fornecer um bloco de credencial; caso contrário, FALSE.

[in] cProviders

Tipo: DWORD

O número de membros em rgbAllow ou rgclsidProviders (eles devem ser os mesmos).

Retornar valor

Tipo: HRESULT

Sempre retorna S_OK.

Comentários

Na entrada, esse método recebe duas matrizes paralelas; rgclsidProviders, que contém o provedor de credenciais CLSIDs e rgbAllow, que contém valores BOOL para os CLSIDs correspondentes. ICredentialProviderFilter::Filter examina cada provedor de credenciais em rgclsidProviders e decide se o provedor de credenciais deve ter permissão para enumerar blocos de credencial para o cenário especificado por dwFlags. Se isso for aceitável, a entrada correspondente em rgbAllow será definida como TRUE. Se isso for inaceitável, ele será definido como FALSE.

Nunca filtre um CLSID para um provedor de credenciais que você não conhece.

Não filtre se cpus for CPUS_CREDUI e um valor dwFlags de CREDUIWIN_GENERIC for passado.

É legítimo retornar o sucesso do método e não modificar rgbAllow.

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