次の方法で共有


コレクション ストア

ユーザーのコレクション内の証明書証明書失効リスト (CRL)、証明書信頼リスト (CCTL) の数が増えるにつれて、それらの証明書のorganizationが問題になります。 考えられる解決策の 1 つは、異なる種類の証明書を保持するために個別の証明書ストアを作成することです。 アプリケーションで特定の証明書を検索するために複数の異なるストアを検索する必要がある場合があるため、このソリューションでは新しい問題が発生します。 論理ストアまたはコレクション ストアを使用すると、この問題が解決されます。

論理ストアとコレクション証明書ストアは、1 つのストアとしてアプリケーションに表示される物理ストアのグループです。 論理ストアまたはコレクション ストアのすべてのメンバー ストアは、 CertFindCertificateInStore または CertEnumCertificatesInStore への 1 つの関数呼び出しで検索または列挙できます。

論理ストアまたはコレクション ストアを使用すると、紙のレコードでは実現が困難な柔軟性も提供されます。 1 つの物理ストア内の証明書は、複数の異なる論理グループのメンバーである必要がある場合があります。 したがって、個々の物理ストアは、次の図に示すように、複数の論理ストアまたはコレクション ストアのメンバーにすることができます。

コレクション ストア

この図は、次の基本的な論理証明書ストアの概念を示しています。

  • コレクション証明書ストアには、そのコレクション ストアの最初のポインター ブロックへのポインターがあります。
  • コレクション ストアの各ポインター ブロックには、兄弟ストアへのポインターと、コレクションの次のポインター ブロックへのポインターがあります。
  • コレクション内の各兄弟ストアは、単純な物理証明書ストアです。
  • 単純な証明書ストアは、さまざまなコレクション ストアのメンバー兄弟ストアにすることができます。
  • コレクション ストアに追加された証明書は、コレクション内の兄弟ストアのいずれかに物理的に追加されます。
  • 兄弟ストア内の証明書には、兄弟ストアがメンバーである任意のコレクション ストアからアクセスできます。

コレクション ストアは、 CertOpenStore を使用してコレクション ストアを開き、 CertAddStoreToCollection を使用して開いている兄弟ストアをコレクション ストアに追加することで、アプリケーション内に構築されます。 兄弟ストアは、 CertRemoveStoreFromCollection を呼び出すことによってコレクション ストアから削除できます。