안녕하십니까.
Netty 사용중 궁금증으로 글을 올립니다.
밑에 올린 인증서 시리얼과 연관된 질문인데 인증서 접근방법을 찾다가
SslContext 에 javax.net.ssl.TrustManagerFactory 를 정의해서 접근을 할수 있을것 같아 보다가 기존에 FingerprintTrustManagerFactory 라는 Class 가 있어서 테스트를 하고 있습니다.
그런데 제가 사용을 잘못 했는지 어떻게 해도 해당 클레스가 호출이 안됩니다.
일단 저는
SslContextBuilder builder = createSslContextBuilder(server);
builder.trustManager(FingerprintTrustManagerFactory.builder("SHA-256")
.fingerprints("1C:53:0E:6B:FF:93:F0:DE:C2:E6:E7:9D:10:53:58:FF:DD:8E:68:CD:82:D9:C9:36:9B:43:EE:B3:DC:13:68:FB")
.build());
와 같이 SslContextBuilder 를 통해 생성을 했으며
ServerSocket 을 통해
if (getSslContext() != null)
{
SSLEngine engine = getSslContext().newEngine(ch.alloc());
engine.setUseClientMode(false);
engine.setNeedClientAuth(true);
SslHandler handler = new SslHandler(engine);
pipeline.addLast(handler);
}
과 같이 SslHandler 를 정의 했습니다.
해당 SSLEngine 에 TrustManager 가 정의한 Class 임을 확인했는데 호출이 안되는 이유가 뭘까요???????
netty-4.1.65.Final 버전을 통해 테스트중입니다.