Интегрируйте многофакторную аутентификацию Azure в веб-сайт для аутентификации своих пользователей. - PullRequest
1 голос
/ 03 апреля 2019

У меня есть веб-сайт (встроенный в PHP), ОС веб-сервера - Linux (Ubuntu) от AWS EC2,

Я хочу интегрировать Azure MFA в веб-сайт для аутентификации пользователей с использованием 2FA (двухфакторная аутентификация)),

Я проверил этот код с помощью узла JS https://github.com/Azure-Samples/active-directory-node-webapp-openidconnect

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

У меня все работало нормально, но:

1) Сначала нужно будет добавить пользователя в Active Directory (AD), поэтому я могу аутентифицировать пользователей напрямую, без регистрации вAzure AD?Кроме того, у меня более 3000 активных пользователей на веб-сайте, нужно ли мне их всех регистрировать?

2) Пользователь полностью перенаправлен на сайт Microsoft во время процесса аутентификации. Есть ли способ без перенаправления или с помощью какого-либо пользовательского интерфейса?материал (используя всплывающее окно)?

Любая помощь или предложения будут полезны для меня,

Заранее спасибо, Херри

1 Ответ

2 голосов
/ 04 апреля 2019

1. Сначала нужно будет добавить пользователя в Active Directory (AD)?

Да, верно! Сначала вам нужно добавить своего пользователя на портал Azure, затем ему нужно пройти аутентификацию, пытаясь получить доступ к чему-либо в каждой операции.

2. Могу ли я аутентифицировать пользователей напрямую, без регистрации в Azure AD?

Нет, вы не можете! Для проверки подлинности сначала необходимо определить пользователя на портале Azure.

3. У меня есть более 3000 активных пользователей на сайте, мне нужно будет зарегистрировать их всех?

Поскольку у вас есть тысячи пользователей на вашем веб-сайте, вы можете добавить их в массовой операции. Чтобы избежать ручной регистрации, вы можете объявить ее с помощью команды Azure PowerShell . Если вы добавите всех своих пользователей в файл CSV , вы можете легко добавить их, используя следующий скрипт:

имея весь ваш пользовательский CSV-файл, вы можете запустить эту команду New-AzureADUser, как показано ниже.

foreach($user in import-csv "E:\userinfo.csv") 
{ 
     Write-Host "Processing item with.. UserName="$user.DisplayName

   # Make use of variables like $user.DisplayName and so on in your commands here..
   # New-AzureADUser -DisplayName $user.DisplayName ... and so on..
}

Вы можете посмотреть похожие документы в деталях здесь

3. Пользователь полностью перенаправлен на сайт Microsoft во время аутентификации процесс, есть ли способ без перенаправления, или с помощью некоторого интерфейса вещи (используя всплывающее окно)?

Поскольку вы используете OpenIdConnect протокол для аутентификации в этом потоке, вы не можете остановить перенаправление на сайте Microsoft во время процесса аутентификации. Но есть способ используя поток учетных данных пароля владельца ресурса

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

учетные данные пароля владельца ресурса (т. Е. Имя пользователя и пароль) можно использовать непосредственно в качестве гранта авторизации для получения токен доступа Учетные данные следует использовать только при высоком степень доверия между владельцем ресурса и клиентом (например, клиент является частью операционной системы устройства или высоко привилегированным приложение), а также когда другие типы разрешений доступно (например, код авторизации)

Перенаправление на провайдера идентификации ожидается, когда мы выбираем интерактивный поток OAuth 2 Authorization Framework , потому что именно так он работает!

Надеюсь, это поможет вам разобраться в вашей работе. Спасибо!

...