Проверка подлинности Azure AD через REST для корпоративного приложения AAD - PullRequest
0 голосов
/ 11 сентября 2018

Я использую ADAL4j для попытки аутентификации в нашем экземпляре onprem sharepoint (который сам использует AAD для аутентификации в качестве корпоративного приложения) для аутентификации пользователей при входе через стандартный поток.

Я настроил свое потребительское приложение AAD так, чтобы ему требовалось разрешение на "доступ к {корпоративному приложению для sharepoint}". Затем я делаю запрос к URL, который выглядит следующим образом:

https://login.microsoftonline.com/{tenant}/oauth2/authorize?
                      response_type=code&scope=user_impersonation&
                      response_mode=form_post&
                      redirect_uri={uri that is registered in my app}&
                      client_id={my app id}&
                      resource={onprem sharepoint enterprise app id}&
                      state={GUID}&nonce={GUID}

Ответ, который я получаю, - 401 НЕСАНКЦИОНИРОВАННО:

{
  "error": "invalid_client",
  "error_description": "Invalid audience Uri '{onprem sharepoint enterprise app id}'."
}  

Есть идеи, что здесь может пойти не так? Мои поиски не были очень плодотворными, и логически кажется, что это должно работать. Есть ли какая-то настройка на стороне приложения для предприятий, чтобы позволить определенным клиентам получать доступ к ресурсу?

Спасибо за помощь!

1 Ответ

0 голосов
/ 12 сентября 2018

Вам следует заменить resource={onprem sharepoint enterprise app id} на App ID URI of onprem sharepoint enterprise app (защищенный ресурс). За подробностями вы можете обратиться к потоку грантов Oauth 2.0 .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...