2017-10-09 11 views
-1

LDAPを使用してユーザーを認証するモジュール 'Module1'があります。このモジュールには、同じログインLDAP資格情報を使用して別のリモートサービスにhttp要求を行うクラスがあります。HTTPヘッダーのログイン資格情報をセキュアサーバーに送信

私は、リモートサービスで認証を実装するLDAPクラスを持っています。

Module1からhttpヘッダーのリモートサービスにログイン資格情報を送信する方法がわかりません。 Module1からLdapログインに使用した資格情報にプログラムでアクセスするにはどうすればよいですか?あなたの応答は非常に簡素化されます。

答えて

1

基本認証では、ユーザーの資格情報がエンコードされ、ヘッダーを介して送信されます。 Module1からリモートサービスへの呼び出しを確保するため、Module1からRemote Serviceへの呼び出しはHTTPS経由で行われます。

0

LDAPを使用している場合は、Basicのように認証を渡すことができます。ユーザー名とパスワードがわかっている場合は、ヘッダ "Authorization"に値 "Basic base64_token"を追加します。

base64トークンは、ユーザー名とパスワードをusername:passwordの形式でbase64でエンコードした文字列です。理想的には、これはうまくいくはずです。それが動作しない場合は教えてください。その場合、SPNEGOを使用してオプションを探索できます。

JAVAでのLDAPのためのコード:

public class Main 
{ 
    public static void main(String[] args) 
    { 
    //Replace username and password with your username and password 
    token = Base64.getEncoder().encodeToString((username + ":" + password).getBytes()) 
    conn = (HttpURLConnection) endpoint.openConnection(); 

    // Set the necessary header fields, which in this case is Basic 
    conn.addRequestProperty("Authorization", "Basic " + token); 

    //Continue to do what you want to do after this. This should authenticate 
    // you to the server 
    } 
} 
関連する問題