2017-06-24 19 views
0

これはあいまいまたは不明瞭ですが、私は尋ねなければなりません。私はJavaを介してKerberos化されたサービスを認証したいと思っています。 krb5.confとサーバーのkeytabファイルを持っている場合、これを実行する具体的な方法はありますか?Java Kerberos認証

または、これを実行するにはどのような方法をお勧めしますか?

+1

_ "Kerberos対応ネットワーク" とは何ですか_? –

+0

Kerberosでネ​​ットワークを保護 – thatrockbottomprogrammer

+1

もう一度、それはどういう意味ですか? Kerberosは、セキュリティ保護されていないネットワーク(Wikipedia参照)にわたって、特定のクライアントと特定のサービスの安全な相互認証を可能にします。それは、ネットワークそのものを確保することとは何の関係もありません。 –

答えて

0

私はこれを行う方法を考え出しました。

このように、​​があります。これは、「Windows認証とJavaでの統合」を可能にします。サーバーにサービスアカウントがある場合は、その資格情報をJavaコードに渡して、サーバーに認証させることができます。これは、Mavenの中で利用可能です - Spnego API Docs

public static void main(final String[] args) throws Exception { 
     System.setProperty("java.security.krb5.conf", "krb5.conf"); 
     System.setProperty("sun.security.krb5.debug", "true"); 
     System.setProperty("java.security.auth.login.config", "login.conf"); 

     SpnegoHttpURLConnection spnego = null; 

     try { 
      spnego = new SpnegoHttpURLConnection("spnego-client", "username", "password"); 
      spnego.connect(new URL("http://medusa:8080/index.jsp")); 

      System.out.println(spnego.getResponseCode()); 

     } finally { 
      if (null != spnego) { 
       spnego.disconnect(); 
      } 
     } 
    } 

から取られた参照用Spnego Maven Dependency

サンプルコード、助けをArunav Sanyalに感謝:)

関連する問題