Использование Azure Bot Bearer Token для запроса GET к внешнему API - PullRequest
0 голосов
/ 07 января 2020

У меня есть Azure Настройка бота, которая аутентифицирует пользователя с помощью oAuth2. Отсюда я получаю токен доступа. У меня также есть веб-приложение, которое использует аутентификацию oAuth2 и тот же активный каталог, что и бот Azure. С этим токеном доступа, служащим токеном на предъявителя, я хотел бы сделать запрос POST и GET к моему веб-приложению от Azure Bot.

Я попробовал следующее, но похоже, что мои запросы не являются аутентификация, поскольку я не получаю желаемый результат.

 RestClient client = new RestClient(BaseURL);
                    RestRequest request = new RestRequest("api/dashboard/GetUserName", Method.GET);
                    request.AddParameter("Authorization",
                    string.Format("Bearer " + tokenResponse.Token),
                                ParameterType.HttpHeader);
                    var response = client.Execute(request);

Я неправильно понимаю назначение или функцию токенов на предъявителя?

1 Ответ

0 голосов
/ 07 января 2020

Насколько я понимаю, вы просто получаете токен доступа от Azure бота, но хотите запросить у Azure бота другое веб-приложение. Поэтому вам нужно получить другой токен доступа из веб-приложения и использовать этот токен доступа в качестве токена-носителя.

В противном случае вам не нужно запрашивать другой токен доступа. Вы можете обновить sh токен, обратившись к этому учебнику , , но вам нужно изменить свойство "scope", изменив его с области действия Azure Bot на область действия из Интернета. application.

Обновление:

Для ваших требований вам необходимо использовать OAuth 2.0 от имени потока, пожалуйста, обратитесь к этому учебнику . enter image description here

На приведенном выше изображении потока «Web API A» представляет вашего Azure бота, а «Web API B» представляет ваше веб-приложение. Вам необходимо получить первый токен доступа для Web API A, а затем получить второй токен для Web API B. После этого вы можете запросить Web API B.

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