2016-06-02 9 views
0

Я выполнил следующие шаги, чтобы подключить Google OAuth к аутентификации Azure. К сожалению, эти инструкции не дают полного решения и не упоминают, что делать с Google OAuth access_token, когда у вас есть это. Я попытался поместить его в заголовок авторизации в качестве маркера несущей (Bearer <access_token>), но это не работает, так как мое приложение, сидящее за сервисом авторизации, просто видит исходный заголовок авторизации, а не ожидаемый X-MS-CLIENT-PRINCIPAL-NAME, , X-MS-TOKEN-GOOGLE-ACCESS-TOKEN и т. Д.Как пройти токен Google OAuth 2 до аутентификации API Azure?

Кроме того, когда я перехожу к /.auth/me с токеном авторизационного носителя, я получаю ответ 401.

К сожалению, вся документация либо специфична для AD (что, похоже, не относится к моему сценарию), либо специфично для серверных визуализированных приложений, а не SPA, которые размещаются отдельно от API, который они вызывают ,

Идеальный ответ скажет мне, что мне нужно сделать с Google OAuth 2 access_token, чтобы получить службу авторизации Azure для аутентификации токена и добавления ожидаемых заголовков.

Редактировать: access_token не является маркером JWT, который может быть частью проблемы. Если это на самом деле проблема, и мне просто нужно получить токен JWT, то как мне это сделать? В настоящее время я использую JavaScript JavaScript для JavaScript (бета-версия). Я попытался получить токен JWT с помощью панели управления Google OAuth 2, но это также как токен-носитель также не работает, несмотря на использование секретности клиента моего приложения для генерации запросов.

ответ

0

Вы можете передать access_token в теле JSON '/.auth/login/google' с ключом как 'access_token'.

Как объяснен в следующую ссылке: https://azure.microsoft.com/en-us/blog/announcing-app-service-authentication-authorization/

сниппает из приведенной выше ссылки:.

«Кроме того, клиент может получить маркер с помощью SDK поставщика и обмен его на маркер сеанса Просто введите HTTP POST на ту же конечную точку с токеном поставщика в корпусе JSON под ключом «access_token» (или «authenticationToken» для учетной записи Microsoft). Это предпочтительное решение для мобильных приложений, если на платформе имеется SDK провайдера, и он также работает для многих веб-приложений и приложений API ».