

サインインしているユーザ情報を取得する方法を探しております。

Web Apps に、Javaを使用したWebアプリを設置しており、  
Azure Active Directory を使用して認証を行っております。  
ユーザ情報はJavaで取得しようと思っております。

ユーザ情報ですが、Azure AD に登録している web apps にサインインした後、  
「[web apps] + /.auth/me」と入力してアクセスすると、  
ブラウザにユーザ情報がjsonが表示される為、その情報を取得しようと思っております。

ユーザ情報を取得する為、以下プログラムを作成しましたが取得はできませんでした。  
※Azure AD とのやり取りに、アクセストークンが必要とのことでしたので、事前に取得しております。

[code]

    // アクセストークン
    String accessToken = [取得済];
    
    // 認証済ユーザ情報を取得する用URL
    URL targetUrl = new URL([web app] + "/.auth/me");
    HttpURLConnection connection = (HttpURLConnection) targetUrl.openConnection();
    
    
    // 認証ヘッダーを設定
    connection.setRequestProperty("Authorization", "Bearer " + accessToken);
    connection.setRequestProperty("Content-Type", "application/json");
    connection.setRequestProperty("Accept", "application/json");
    
    // HTTPメソッドの設定
    connection.setRequestMethod("GET");
    
    // 接続
    connection.connect();
    
[/code]

質問ですが、上記プログラムの一部修正を行えば取得が可能なのでしょうか、  
また、他の方法で取得する必要があるのでしょうか。  
ご教授いただければ幸いです。


CC BY-SA 4.0
2018-11-27T15:23:16.087
50683
2022-07-25T13:08:50.980
2018-11-27T19:48:56.343
23994
31184
question
java azure
Azure AD にサインインしているユーザ情報をjavaで取得する方法


ブラウザで取得できて、Javaのプログラムで取得できないとすると、他にも必要なリクエストヘッダーがあるのではないかと思います。

[このページ](https://stackoverflow.com/questions/46152888/azure-ad-get-current-
logged-in-user-in-java-jsp-api-from-auth-
me?rq=1)を参考に、リクエストヘッダーを追加するコードを実装してみて下さい。


CC BY-SA 4.0
2018-11-27T18:17:34.290
50689
2018-11-27T18:17:34.290
21092
50683
answer