Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.BufferedReader;
- import java.io.InputStreamReader;
- import java.util.concurrent.ExecutorService;
- import java.util.concurrent.Executors;
- import java.util.concurrent.Future;
- import javax.naming.ServiceUnavailableException;
- import com.microsoft.aad.adal4j.AuthenticationContext;
- import com.microsoft.aad.adal4j.AuthenticationResult;
- public class Get {
- private final static String AUTHORITY = "https://login.windows.net/common/oauth2/v2.0/authorize";
- private final static String CLIENT_ID = "29275...011a";
- private final static String RESOURCE = "https://graph.windows.net";
- public static void main(String[] args) throws Exception {
- try (BufferedReader br = new BufferedReader(new InputStreamReader(
- System.in))) {
- System.out.print("Enter username: ");
- String username = br.readLine();
- System.out.print("Enter password: ");
- String password = br.readLine();
- AuthenticationResult result = getAccessTokenFromUserCredentials(
- username, password);
- System.out.println("Access Token - " + result.getAccessToken());
- System.out.println("Refresh Token - " + result.getRefreshToken());
- System.out.println("ID Token - " + result.getIdToken());
- System.out.println("Expires in - " + result.getExpiresAfter());
- }
- }
- private static AuthenticationResult getAccessTokenFromUserCredentials(
- String username, String password) throws Exception {
- AuthenticationContext context = null;
- AuthenticationResult result = null;
- ExecutorService service = null;
- try {
- service = Executors.newFixedThreadPool(1);
- context = new AuthenticationContext(AUTHORITY, false, service);
- Future<AuthenticationResult> future = context.acquireToken(RESOURCE, CLIENT_ID, username, password, null);
- result = future.get();
- } finally {
- service.shutdown();
- }
- if (result == null) {
- throw new ServiceUnavailableException(
- "authentication result was null");
- }
- return result;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement