現在、FileinputstreamのところでNO such file or directoryというエラーがでます。
やりたいこととしては、SSL通信で、LDAPサーバーに接続することです。
参照サイト
http://tt4cs.blogspot.jp/2014/01/how-to-connect-to-ldap-via-ssl-tls.html
crtファイルを読み込もうとしていますが、ファイルが存在しないといわれます。
ファイルの置き方がいけないんでしょうか??
相対パスの書き方教えてください
java
1 private void testConnection(SocketFactory socketFactory) { 2 LDAPConnection conn = null; 3 try { 4 conn = new LDAPConnection(socketFactory, "IPアドレス", 636); 5 conn.bind("cn=Manager,dc=maxcrc,dc=com", "secret"); 6 7 String base ="dc=maxcrc,dc=com"; 8 SearchScope scope = SearchScope.SUB; 9 Filter filter 10 = Filter.createANDFilter(Filter.createEqualityFilter("uid", "14F2009"),Filter.createEqualityFilter("userPassword", "5963")); 11 SearchResult result = conn.search(base, scope, filter); 12 13 List entries=result.getSearchEntries(); 14 System.out.println(entries); 15 if(entries.isEmpty()){ 16 System.out.println("空っぽです。"); 17 } 18 System.out.println("Connection successful."); 19 } catch (LDAPException e) { 20 System.out.println("ERROR MESSAGE : " + e.getMessage()); 21 e.printStackTrace(); 22 } 23 if (conn != null) 24 conn.close(); 25 } 26 private void useInMemoryTrustStore() { 27 SocketFactory socketFactory = null; 28 try(InputStream in = new FileInputStream("C:\Users\ryo\Desktop\ldap_1\app\server.crt")) { 29 CertificateFactory certificateFactory 30 = CertificateFactory.getInstance("X.509"); 31 Certificate certificate 32 = certificateFactory.generateCertificate(in); 33 KeyStore trustStore 34 = KeyStore.getInstance(KeyStore.getDefaultType()); 35 trustStore.load(null); 36 trustStore.setCertificateEntry("openldap", certificate); 37 TrustManagerFactory trustManagerFactory 38 = TrustManagerFactory.getInstance("PKIX"); 39 trustManagerFactory.init(trustStore); 40 TrustManager[] trustManagers 41 = trustManagerFactory.getTrustManagers(); 42 SSLUtil sslUtil = new SSLUtil(trustManagers); 43 socketFactory = sslUtil.createSSLSocketFactory(); 44 } catch (GeneralSecurityException | IOException e) { 45 System.out.println("ERROR MESSAGE : " + e.getMessage()); 46 e.printStackTrace(); 47 } 48 if (socketFactory != null) 49 testConnection(socketFactory); 50 }
assetsファイルにserver.crtを置きました
](c7285d4749fda80a22b565ddfec7b840.png)
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。