Azure AD Аутентификация Angular приложения с MVC Core на Azure AppService - PullRequest
1 голос
/ 24 февраля 2020

Я изучаю варианты добавления аутентификации AzureAD в Angular приложение SPA с базовым бэкэндом NET. Я использую VS 2019 MVC проект с Angular (так же, как dotnet new Angular производит). Он использует. NET Core 3.1 и Angular 8.

Из того, что я узнал до сих пор, у меня есть 3 варианта:

  1. Встроенный Azure Аутентификация службы приложений
  2. Adal. js - выглядит как старший брат,
  3. MSAL. js - который после внесения он работает локально с Azure AD. Я узнал на этой странице , что "В настоящее время AAD V2 (включая MSAL) не поддерживается для Azure служб приложений и Azure функций. Пожалуйста, Следите за обновлениями. " Я не смог заставить его работать на Azure сегодня, так что, возможно, это примечание по уважительной причине.

РЕДАКТИРОВАТЬ: Интересно, что сейчас пункт 3 работает для меня на Azure Служба приложений, поэтому я не уверен, что означает эта заметка.

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

Ответы [ 2 ]

1 голос
/ 25 февраля 2020

Мои требования на данный момент заключаются в том, чтобы пользователи не могли видеть экран, если они не вошли в систему, и что я смогу прочитать информацию о них из Azure AD - роли, группы.

Я думаю, что вариант 1 может удовлетворить ваши требования, конфигурация Azure AD в Authentication / Authorization выше, чем ваш код, пользователь не сможет получить доступ к приложению, пока он не войдет в систему.

Чтобы прочитать информацию о roles, groups, вы можете проверить этот хороший блог .

0 голосов
/ 26 февраля 2020

Здесь у вас есть сценарий аутентификации angular E2E с использованием встроенной аутентификации службы приложений: https://docs.microsoft.com/en-us/azure/app-service/app-service-web-tutorial-auth-aad

Я полагаю, что вас интересует вот эта: Включите проверку подлинности и авторизацию для интерфейсного приложения

. Таким образом, служба приложений перенаправляет вас в AAD и получает действительный токен, который впоследствии можно просто передать в свои API. Если API-интерфейсы также размещены в службе приложений, то служба APP будет проверять токен для вас, поэтому вашему бэкэнд-коду не нужно беспокоиться об аутентификации (вам все равно нужно обрабатывать авторизацию)

...