次の方法で共有


ICredentialProvider::GetCredentialCount メソッド (credentialprovider.h)

この資格情報プロバイダーで使用できる資格情報の数を取得します。

構文

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

パラメーター

[out] pdwCount

型: DWORD*

資格情報の数を受け取る DWORD 値へのポインター。

[out] pdwDefault

型: DWORD*

既定値として使用する資格情報のインデックスを受け取る DWORD 値へのポインター。 既定値が設定されていない場合は、この値を CREDENTIAL_PROVIDER_NO_DEFAULTに設定する必要があります。

[out] pbAutoLogonWithDefault

種類: BOOL*

pdwDefault によって識別される既定の資格情報を自動ログオンの試行に使用するかどうかを示す BOOL 値へのポインター。 自動ログオン試行とは、ログオン UI または資格情報 UI がプロバイダーの既定のタイルで GetSerialization を 直ちに呼び出します。

戻り値

型: HRESULT

このメソッドは、成功すると S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。

注釈

このメソッドは必須です。

ログオン UI または資格情報 UI がユーザー操作の準備ができたら、既定で既定の資格情報が選択されます。 各資格情報プロバイダーは既定の資格情報を提供するため、 pdwDefault がフォーカスを受け取るか、資格情報が自動的にログインするかを決定する規則を次に示します。

  • 既定の資格情報が既に指定されている場合、その資格情報は自動ログオンに使用されるものではなく、 pdwDefault は自動ログオンに使用され、 pdwDefault が既定として使用されます。
  • pdwDefault が最後にログオンしたプロバイダーのものであり、自動ログオンの既定値がまだない場合は、pdwDefault が既定値として使用されます。
  • 既定値が指定されていない場合は、 pdwDefault が既定値として使用されます。
有効な資格情報の数が変更された場合、資格情報プロバイダーは、アドバイスで提供されている ICredentialProviderEvents インスタンスで CredentialsChanged を呼び出す必要があります。

資格情報プロバイダーのベスト プラクティス

資格情報プロバイダーは、ログオンとロック解除の要求を完了するために、非常に機密性の高いユーザー シークレットを処理します。 ベスト プラクティスとして、パスワードや PIN などのシークレット情報は細心の注意を払って処理する必要があります。 資格情報プロバイダー内でシークレット情報を処理するための適切な手法は次のとおりです。
  • シークレットは常に安全に破棄します。 これを行うには、シークレットを保持するために使用されるメモリを解放する前に 、SecureZeroMemory を呼び出します。
  • シークレットを使用した後、すぐに安全に破棄します。
  • 意図した目的に使用されていないシークレットは、予想される時間内に安全に破棄します。

要件

要件
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー credentialprovider.h