資格情報の種類
Credentials Management API は、次の 2 種類の資格情報で動作します。
ドメイン資格情報
ドメイン資格情報はオペレーティング システムによって使用され、ローカル セキュリティ機関 (LSA) によって認証されます。 通常、Kerberos プロトコルなどの登録済みセキュリティ パッケージがユーザーによって提供されるログオン データを認証すると、ユーザーのドメイン資格情報が確立されます。 ログオン資格情報はオペレーティング システムによってキャッシュされるため、シングル サインオンを使用すると、ユーザーはさまざまなリソースにアクセスできます。 たとえば、ネットワーク接続は透過的に行われ、保護されたシステム オブジェクトへのアクセスは、ユーザーのキャッシュされたドメイン資格情報に基づいて付与できます。
資格情報管理機能は、ユーザーがログオンした後にユーザーにドメイン資格情報の入力を求め、ユーザーが提供する情報をオペレーティング システムで認証するためのメカニズムをアプリケーションに提供します。
ドメイン資格情報のシークレット部分であるパスワードは、オペレーティング システムによって保護されます。 LSA でインプロセスで実行されているコードのみが、ドメイン資格情報の読み取りと書き込みを行うことができます。 アプリケーションは、ドメイン資格情報の書き込みに限定されます。
Windows では、スマート カードと証明書資格情報の拡張使用がサポートされています。 セキュリティを確保するために、Credentials Management API はスマート カード PIN をコンピューターに保存しません。
汎用資格情報
汎用資格情報は、これらのタスクをオペレーティング システムに委任するのではなく、承認とセキュリティを直接管理するアプリケーションによって定義および認証されます。 たとえば、アプリケーションでは、アプリケーションによって提供されるユーザー名とパスワードを入力したり、Web サイトにアクセスするための 証明書 を生成したりする必要があります。
アプリケーションでは、Credentials Management 関数を使用して、ユーザー名、証明書、スマート カード、パスワードなどのアプリケーション定義、汎用、資格情報の入力をユーザーに求めます。 ユーザーが入力した情報は、認証のためにアプリケーションに返されます。
Credentials Management は、汎用資格情報のカスタマイズ可能なキャッシュ管理と長期ストレージを提供します。 汎用資格情報は、ユーザー プロセスによって読み取りと書き込みが可能です。