Как мне разрешить доступ к моему API, защищенному Azure AD (то есть платформой MS ID), вызываемым из Postman?

Я следую руководству по защита моего API с помощью MS ID. Он работает, как предполагалось, и выдает код состояния 401, неавторизованный. Но вот в чем дело ...

Как авторизоваться ?! В руководстве об этом ничего не говорится, а следующий шаг полностью касается новой темы. Я говорю об отправке звонка через Swagger или Postman (возможно, последнее, поскольку проще предоставить учетные данные).

Исходный код элегантен и аккуратно упаковывает задачи и тому подобное (аналогично руководству по защита приложения с помощью MS ID. Предостережение - это ощущение черного ящика, где все работает, но я Не совсем уверен, как это сделать. В случае веб-приложения это немного волшебство, но есть графический интерфейс, и это приводит к тому, что принципал получает идентификацию, установленную Azure AD.

Но как мне это сделать в случае API? Это вообще выполнимо? Так должно быть, иначе нет смысла открывать API для начала. Я хотел бы продемонстрировать доступ и отказ от Posty (или Swaggy, если это не слишком сложно), прежде чем я продолжу возиться с безопасностью MS ID на основе SPA.

Есть руководство в MSDN, как получить токен. Запрос включает следующие заголовки (x-www-urlencoded).

grant_type = client_credentials
client_id = e91eecbf-680e-4e35-ac43-c93456a0a44e
client_secret = ljkh () / ¤ #% jL9jlk < / em>

Он выполняет GET на

https://login.microsoftonline.com/6d9c4356-1774-49f3-a6be-ff4c2ec4f2f4/oauth2/token

и создает маркер доступа для указанного ресурса (в их случае - автобусной службы). Я ищу что-то вроде этого, но чтобы пользователю нужно было предоставить свои учетные данные. Другими словами, токен ответа должен содержать GUID (или, по крайней мере, адрес электронной почты) пользователя.

Я нашел аналогичный вопрос, но он касается случая B2C (который, я не уверен, актуален для меня), а также не объясняет, как получить идентификатор API клиента для почтальона. Я также видел этот ответ, но он относится к графическому API, который в моем случае не актуален.


person Konrad Viltersten    schedule 09.07.2021    source источник
comment
У вас есть вопрос о получении токена доступа для вашего API с помощью Postman, который вы можете включить при отправке запросов к вашему API?   -  person Gaurav Mantri    schedule 09.07.2021
comment
@GauravMantri Это не обязательно должен быть Почтальон. Тем не менее, Posty (и Swaggy) - два наиболее широко используемых для этой цели софти. Так что вроде да на ваш вопрос, но это не касается почтальона, нет. Ваш вопрос звучит довольно конкретно. У вас есть что-то чрезвычайно полезное для меня?   -  person Konrad Viltersten    schedule 09.07.2021