Если вы хотите, чтобы код работал в текущей форме без каких-либо обходных путей, проверьте следующее:
Убедитесь, что у вас есть правильный идентификатор GUID tenantId указано в первой строке кода.
Шаги для получения tenantid -
Войдите на портал Azure, перейдите к Azure AD, перейдите к свойствам, как на скриншоте ниже, и идентификатор каталога должен датьВы ГИД.
private final static String AUTHORITY = "https://login.microsoftonline.com/<tenantId>/OAuth2/Authorize";
Убедитесь, что используемое имя пользователя предназначено для пользователя, принадлежащего вашему клиенту AzureAD.
Одной из возможных причин может быть использование учетной записи Microsoft, например xyz@outlook.com, hotmail.com и т. Д. Попробуйте использовать учетную запись, созданную в этом Azure AD, например xyz@yourtenantdomain.onmicrosoft.com.или любой другой подтвержденный домен, который использует ваш арендатор.
Future<AuthenticationResult> future = context.acquireToken("https://graph.microsoft.com", CLIENT_ID, username, password, null);