Java 웹 서비스는 양방향 SSL 인증을 지원합니다. 따라서 신뢰할 수있는 저장소에 서버 인증서가 있고 신뢰할 수있는 저장소에 클라이언트 인증서가있는 서버 키 저장소가있는 클라이언트 키 저장소 (client.p12)가 있습니다.양방향 SSL 인증을위한 Ruby 클라이언트
나는 쉽게 브라우저 또는 우편 배달부 (브라우저 인증서 관리에서 client.p12을 가져와야 함)를 사용하여 내 서비스를 쉽게 호출 할 수 있지만 루비 클라이언트에 문제가 있습니다.
나의 현재 버전 :
connect_nonblock': SSL_connect SYSCALL returned=5 errno=0 state=unknown state (OpenSSL::SSL::SSLError)
내 클라이언트 코드에 어떤 문제가 :
require 'rest_client'
p12 = OpenSSL::PKCS12.new(File.read('client.p12'), 'password')
client = RestClient::Resource.new('https://localhost:8080/service',
:ssl_client_cert => p12.certificate,
:ssl_cert_key => p12.key,
:verify_ssl => OpenSSL::SSL::VERIFY_NONE,
:ssl_version => 'TLSv1_2',
:ssl_ciphers => 'ECDHE-RSA-AES128-GCM-SHA256').get
는 실패?
하려면 openssl s_client가 출력 :
$ openssl s_client -connect localhost:8080
....
SSL-Session:
Protocol : TLSv1.2
Cipher : ECDHE-RSA-AES128-GCM-SHA256
...
테스트 용도로 적합합니다. 그러나 들어오는 요청이 많을 때 Curl이 시간 초과되어 중단되면 확장 성이 문제가됩니다. –