tls.Config
にClientCAs
とClientAuth
のオプションを使用して、Go HTTPアプリケーションで証明書ベースのクライアント認証を行っています。クライアントCRLを提供されたCRLと照合することも可能ですか?私はx509
パッケージにCRLの周りのいくつかの機能がありますが、私はそれらを使用するようにHTTPサーバを設定する方法がわかりません(つまり、CRLをも引き起こすようなtls.Config
のオプションはないようです中古)。GolangのCRLに対するクライアント証明書を確認するにはどうすればよいですか?
3
A
答えて
6
クライアント証明書を指定されたCRLと照合することもできますか。
はい、あなたの質問に正しく記載されているように、crypto/x509
パッケージに含まれている機能によって可能です。しかし、crypto/tls.Config
(消費されるnet/http
)のような高レベルのインターフェイスはそれを提供しません。おそらく、CRLに対する検査を実施する良い機会は、net/http.Request.TLS.PeerCertificates
を調べることです。
少し背景:crypto/tls
is maintained by security expert Adam Langleyopinion on revocation checking(元のソースはhis blog)です。私には証拠はありませんが、これは意図的な意思決定であると考えられます。
関連する問題
- 1. CRLで証明書チェーンを確認する方法
- 2. SSLクライアント証明書認証をサポートするにはどうすればよいですか?
- 3. OpenSSL経由でCRLに対する証明書を確認する:証明書を取得できませんCRL
- 4. Silverlightでホストサーバーの証明書を確認するにはどうすればよいですか?
- 5. ローカルCRLファイル(C#)で検証処理中にクライアント証明書失効を確認する方法
- 6. ロールオーバー証明書を確認するにはどうすればよいですか?
- 7. システム証明書ストレージに独自の証明書をインストールするにはどうすればよいですか?
- 8. AZUREポータルのWebテストに認証証明書を追加するにはどうすればよいですか?
- 9. クライアントのNLS_LANGを確認するにはどうすればよいですか?
- 10. 受信リクエストのクライアント証明書を認証するようにHeroku Rack/Railsアプリを設定するにはどうすればよいですか?
- 11. 様々なCRLファイルに対するSSL証明書を確認してください。
- 12. mSSLのWebsphere 8.5.5.9でクライアント側の証明書を設定するにはどうすればよいですか?
- 13. WATIR-WebDriverで証明書ベース認証を使用するにはどうすればよいですか?
- 14. Apacheでクライアント証明書のカスタムエラーを追加するにはどうすればよいですか?
- 15. c#signalrクライアントでhttps証明書の警告を無視するにはどうすればよいですか?
- 16. golang:不正な証明書でhttpsリクエストを行うにはどうすればよいですか?
- 17. Apache HttpClientでSSLクライアント証明書を使用するにはどうすればよいですか? Pythonで
- 18. Axis2 Javaクライアントで自己署名証明書を使用するにはどうすればよいですか?
- 19. システムにインストールされているクライアント証明書を確認する方法
- 20. 異なる証明書を使用する複数のクライアントとのNginxによる証明書/クライアント認証
- 21. 処理のHTTPリクエストクラスの証明書を認証するにはどうすればいいですか
- 22. クライアントがXMLスキーマを確認できるようにするにはどうすればよいですか?
- 23. 証明書が自己署名されているかどうかを確認するにはどうすればよいですか?
- 24. Golangのユーザーエラーと内部エラーを明確に区別するにはどうすればよいですか?
- 25. 信頼できる証明書が安全であるかどうかを確認するにはどうすればよいですか?
- 26. クライアント証明書認証でBASIC認証を使用する
- 27. AWS Lambdaのクライアント証明書を確認する方法
- 28. Spring WSクライアント - サーバーとクライアント証明書による認証
- 29. IISをセットアップしてクライアント証明書を確認し、httpヘッダーとしてバックエンドに渡すにはどうすればよいですか?
- 30. Azure AppServiceでクライアント証明書認証をオプションにする方法
@flowloありがとうございました。あなたが提案したPeerCertificatesオプションについて詳しく説明します。アダムのCRLに関する記事については、クライアント側の視点から彼が何を言っているのかを知ることができます。ただし、サーバー側の認証にcertsを使用する場合、CRLは依然として重要です。 – Bryan
ピア証明書を手動で検証することは有効なアプローチです。サーバーコールスタックのどこかでミドルウェアとして実行するだけで済むでしょう。将来の参考として、https://github.com/cloudflare/cfssl/blob/master/revoke/revoke.goのコードには、実際にピア証明書をCRLと比較する良い例がいくつかあります。 – Bryan