共用方式為


ICredentialProviderFilter::Filter 方法 (credentialprovider.h)

評估是否應該允許認證提供者清單提供認證磚。

語法

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

參數

[in] cpus

類型: CREDENTIAL_PROVIDER_USAGE_SCENARIO

CREDENTIAL_PROVIDER_USAGE_SCENARIO值的指標,宣告支持認證提供者的案例。

[in] dwFlags

類型: DWORD

使用案例旗標。 只有當 cpus 是CPUS_CREDUI時,這個參數才有效。 它們定義於 Wincred.h 中。

CREDUIWIN_GENERIC

要求純文字用戶名稱/密碼。

CREDUIWIN_CHECKBOX

顯示 [ 儲存認證] 複選框。

CREDUIWIN_AUTHPACKAGE_ONLY

只有支援輸入驗證套件的認證提供者應該列舉。

CREDUIWIN_IN_CRED_ONLY

只應該列舉特定驗證套件的傳入認證。

CREDUIWIN_ENUMERATE_ADMINS

認證提供者應該列舉系統管理員。

CREDUIWIN_ENUMERATE_CURRENT_USER

僅傳入認證

CREDUIWIN_PACK_32_WOW

[in] rgclsidProviders

類型: GUID*

認證提供者 CLID 陣列的指標。

[in, out] rgbAllow

類型: BOOL*

在專案上, BOOL 值的數位指標,一個用於 rgclsidProviders 陣列的每個對應成員,全部都初始化為 TRUE

結束時,如果允許 rgclsidProviders 中的對應認證提供者提供認證磚,則會包含 TRUE;否則為 FALSE

[in] cProviders

類型: DWORD

rgbAllowrgclsidProviders 中的成員數目, (它們應該是相同的) 。

傳回值

類型: HRESULT

一律會傳回S_OK。

備註

在輸入時,這個方法會收到兩個平行陣列; rgclsidProviders,其中包含認證提供者 CLSID 和 rgbAllow,其中包含對應 CLSID 的 BOOL 值。 ICredentialProviderFilter::Filter 會查看 rgclsidProviders 中的每個認證提供者,並決定是否允許認證提供者列舉 dwFlags 所指定案例的認證磚。 如果這是可接受的, rgbAllow 中的對應項目會設定為 TRUE。 如果無法接受,則會將它設定為 FALSE

絕對不要篩選出您不知道的認證提供者 CLSID。

如果 cpu 是 CPUS_CREDUI,而且會傳入CREDUIWIN_GENERIC的 dwFlags 值,請勿篩選。

從方法傳回成功,而不是修改 rgbAllow 是合法的。

規格需求

需求
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 [僅限傳統型應用程式]
目標平台 Windows
標頭 credentialprovider.h