証明書の登録制御
証明書の登録制御は、名前付きサブジェクトに対して証明書の発行を要求する必要があるアプリケーションで使用できます。 バイナリ文字列 (BSTR) の形式でデータを受け入れるように設計されています。 データは、Web ページから取得することも、Visual Basic または Visual C++ 開発システムのユーザー インターフェイスから取得することもできます。 証明書登録制御からの出力は、証明機関 (CA) に送信できる PKCS #10 証明書要求です。
証明書の登録制御する
ユーザー (証明書のサブジェクト) に関する必要な情報は、ユーザー インターフェイスによって収集されます。 この情報は、証明書登録コントロールへの BSTR 入力として提供されます。 証明書登録コントロールは、適切な署名キー、キー交換キー、または両方のキー ペアを生成します。 次に、生成された 秘密キーを使用して、PKCS #10 証明書要求 を生成して署名します。 次に、証明書登録コントロールは、発行された証明書が証明機関から返されるまで、要求ストアに格納されている一時的なダミー証明書にキー ペアをリンクします。 最後に、アプリケーションは PKCS #10 証明書要求を CA に送信します。
CA が証明書要求を承認すると、CA は公開キーを含む証明書を作成します。 CA も署名し、証明書を返します。
要求された証明書が CA から返されると、アプリケーションは PKCS #7 メッセージを証明書登録コントロールに渡します。ここで、証明書または証明書チェーンは PKCS #7 メッセージから抽出されます。 信頼チェーン内の証明書とその他の証明書は、証明書ストアに格納されます。 返された証明書は変更されません。 証明書対応アプリケーションは、ストアからこの証明書にアクセスできるようになりました。
スマート カード登録制御は、スマート カード ユーザーの代わりに登録するために管理者によって使用されます。 登録プロセスにより、ユーザーのスマート カードに保存されている証明書が発行されます。
スマート カード登録コントロールは、Scrdenrl.dll に含まれており、SCrdEnr 1 つのオブジェクトで構成されます。 他のオブジェクトは Scrdenrl.dllに含まれません。 このスマート カード登録オブジェクトは、Visual Basic Scripting Edition (VBScript) などのスクリプト言語で使用できます。
スマート カード登録コントロールを実行しているコンピューターに スマート カード リーダー をインストールする必要があります。
さらに、スマート カード発行者は、"EnrollmentAgent" 証明書テンプレートに基づいて署名証明書を取得している必要があります。 この署名証明書は、スマート カード受信者の代わりに生成された証明書要求に署名するために使用されます。 既定では、ドメイン管理者には、"登録エージェント" テンプレートに基づいて証明書を要求するアクセス許可が付与されます。 別のユーザーには、(Active Directory サイトとサービス MMC スナップインを使用して) "EnrollmentAgent" 証明書を登録するアクセス許可を付与できます。ただし、これにより、このユーザーはドメイン管理者特権を持つスマート カードを自己発行できます。