問題タブ [mutual-authentication]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 双方向 SSL 認証を使用した PHP SOAP Web サービス呼び出し
curl API を使用して、2 つの SSL 認証で SOAP Web サービスを呼び出し、SOAP ヘッダーで UserName、PasswordDigest、および Nounce を使用しています。
curl API コードは次のとおりです。
CACERTS は既に php.ini ファイルに設定されています。
応答は常にポリシーが偽装されています。SSLKEY が適切に設定されており、アウトバウンド POST メッセージがこのキーで暗号化されることを確認してください。
完全な応答は次のとおりです。
注: ネストされた XSD が名前空間を再度定義するために WSDL の解析に失敗するため、SOAPClient を使用しない
ssl - 相互 SSL 経由で接続すると、着信 changeCipherSpec の読み取りに失敗する
相互 SSL を使用してサーバーに接続する必要がありますが、何らかの理由でリクエストを作成しようとすると次のエラーが発生します。
秘密鍵と CSR は私たちによって提起され、証明書は私たちが接続している人々によって返されました。
キーと証明書を pem ファイルに結合し、そのようにリクエストに追加すると、それぞれのキー証明書とターゲットを使用して他のスクリプトで問題なく動作します。
ただし、この例では pemSuccess が 0 を返すだけでなく、これを変更したり行を完全に削除してもエラーが変わらないことに気付きました。
残念ながら、このレベルのプロセスに関する私の知識は限られており、問題に対処する方法がわかりません。
いくつかのグーグルは、DLL を更新し、.pem が正しいキーと証明書を使用していることを確認することを提案するチルカット サポート ページにつながりましたが、これらはどちらも本来あるべきものです。
編集 08/06/2015: -----BEGIN CERTIFICATE----- ヘッダー/フッターの形式を ---BEGIN CERTIFICATE----- に変更すると、SetSslClientCertPem は true を返すことができましたが、それ以外の場合は LastErrorText に変更はありません...
完全な LastErrorText:
java - weblogic - 相互認証 - HTTP ヘッダーから証明書を読み取る
X509 証明書を使用した相互認証で保護する必要がある Java サーブレットがいくつかあります。hereの情報を使用して相互認証を実装しましたが、私のマシンでは正常に動作します。
現在、統合環境には、weblogic へのトラフィックをロード バランシングするための BigIP があります。SSL は BigIP で終了し、元の https 要求で取得したクライアントの証明書ではなく、内部証明書を使用して https 要求を weblogic に転送します。したがって、相互認証は機能していません。
BigIP チームは、クライアントの証明書を HTTP ヘッダー (SSL_CLIENT_CERT) に入れることができると言っていますが、http ヘッダーからクライアントの証明書を読み取るように weblogic を構成する方法がわかりません。
カスタム ID アサーション プロバイダを作成して weblogic で構成する必要がありますか? これが最善のアプローチですか、それとも他に選択肢はありますか?
これに関するヘルプは大歓迎です!!
node.js - 双方向セキュリティ (マルチプロトコル)
1 対多のマルチプロトコル サーバー (+ クライアント) を実装しており、双方向のセキュリティを追加したいと考えています。これが私が達成したいことです:
- クライアントとサーバーの両方が安全な方法で相互に認証します。クライアント側で人的介入はありません。
- クライアントのコード チェックサムはサーバー上で検証されます。
- クライアントのコードはインタープリター言語 (python や javascript など) で記述されている可能性があるため、誰かがクライアントにアクセスした後にネットワークが危険にさらされる可能性を防ぎたいと考えています (ただし、これはやり過ぎかもしれません。アクションの結果を報告するだけで、サーバー上で何かを実行することはありません)
認証フローをどのように設計すればよいですか? どのテクニックを使用/グーグルする必要がありますか、または - より低いレベルで - どの既存のソリューションを試すことができますか? (私のプロトタイプは node.js を使用して記述されています)
ruby - Jruby Manticore による相互認証
相互認証が必要なリモート サーバーに接続しようとしています。サーバーから .p12 ファイルを受け取り、次のコマンドを使用して秘密鍵とクライアント証明書を生成しました。
そして、次のコードを使用して Manticore Client をセットアップしました。
私が得ている応答は次のとおりです。
私は相互認証の使用に非常に慣れていないため、どこが間違っているのか正確にはわかりません。clientCert と privateKey を正しく抽出しましたか? キーと証明書をマンティコアに正しく供給していますか?
java - Grpc Java SSL 相互認証
Grpc Client がサーバーで SSL 認証を行うために、GrpcSslContext に何を設定する必要があるか知りたいですか?
現在、次のコードは、サーバーからクライアントへの通常の一方向 SSL 認証で機能しています。
サーバーでは、
クライアントでは、
https://github.com/grpc/grpc-java/blob/master/SECURITY.mdのgRPC によると、
相互認証が必要な場合は、適切な SslContext を作成することでこれをサポートすることもできます。
GrpcSslContexts を正しく初期化したのだろうか?
アドバイス/コメントをお待ちしております。
[アップデート]
さらにトラブルシューティングを行ったところ、CertificateRequest メッセージ ( https://en.wikipedia.org/wiki/Transport_Layer_Security#Client-authenticated_TLS_handshakeに記載) が、クライアント認証を開始するためにクライアントに送信されていないことに気付きました。
私のサーバー ログの抜粋は次のとおりです。
gRPC に固有のバグである可能性があるのではないかと疑い始めています。
java - javax.net.ssl.SSLHandshakeException: 致命的なアラートを受信しました: handshake_failure
に次のコネクタ構成がありますserver.xml
。
クライアント側では、システム プロパティを次のように設定しました。
しかし、クライアントで HTTPS URL にアクセスすると、次のハンドシェイク例外が発生します。
さまざまなフォーラムで同様のケースで提案されているように、サポートされている暗号スイートを追加しましたが、それでもこのエラーが発生します。