Indy コンポーネントには、スマート カード (CAC) の資格情報を検証する機能のねじれがありますか? と組み合わせて使用する必要があると想定していますInitializeSecurityContext
。
私は C++ Builder Seattle で使用していますが、Delphi の例も歓迎します。
これが私がこれまでに理解したことです:
- システム証明書ストアを開き (
CertOpenSystemStore
)、ユーザーに証明書を選択させます (CryptUIDlgSelectCertificateFromStore
)。 - 資格情報ハンドルを取得します (
AcquireCredentialsHandle
)。 - セキュア ポート 443 を使用
TIdTCPClient
してサーバーに接続します。TIdSSLIOHandlerSocketOpenSSL
- SEC_I_CONTINUE_NEEDED
InitializeSecurityContext
を返す呼び出し。
その後、何をサーバーに送信する必要があり、何を期待するのかわかりません。また、どの時点でシステムがユーザーに PIN を要求する必要がありますか?
ありがとうございました