Единый вход (создание облачных приложений в реальном мире с помощью Azure)

Майк Уоссон, Рик Андерсон (, том Dykstra)

Скачивание решения ИТ-проекта или Загрузка электронной книги

Создание реальных облачных приложений с помощью электронной книги Azure основано на презентации, разработанной Скотт Гатри (. В нем объясняются 13 шаблонов и методик, которые могут помочь в успешной разработке веб-приложений для облака. Сведения о электронной книге см. в первой главе.

При разработке облачного приложения существует множество проблем безопасности, но в этой серии мы рассмотрим только один вход. Вопрос часто спрашивают: «я в основном создаю приложения для сотрудников моей компании; как разместить эти приложения в облаке и по-прежнему позволить им использовать ту же модель безопасности, которую мои сотрудники узнают и используете в локальной среде, когда они работают с приложениями, размещенными в брандмауэре? Один из способов включения этого сценария называется Azure Active Directory (Azure AD). Azure AD позволяет делать корпоративные бизнес-приложения, доступные через Интернет, а также предоставлять доступ к этим приложениям для бизнес-партнеров.

Введение в Azure AD

Azure AD предоставляет Active Directory в облаке. К основным функциям относятся следующие.

  • Она интегрируется с локальными Active Directory.
  • Он обеспечивает единый вход в приложения.
  • Он поддерживает открытые стандарты, такие как SAML, WS-подачаи OAuth 2,0.
  • Он поддерживает корпоративный график REST API.

Предположим, что у вас есть локальная среда Windows Server Active Directory, с помощью которой сотрудники смогут входить в приложения интрасети:

Что позволяет Azure AD создать каталог в облаке. Это бесплатная функция, которую можно легко настроить.

Оно может быть полностью независимым от локального Active Directory; Вы можете поместить в него всех пользователей и проверить их подлинность в приложениях Интернета.

Microsoft Azure Active Directory

Вы также можете интегрировать его с локальной службой AD.

Интеграция AD и WAAD

Теперь все сотрудники, которые могут проходить проверку подлинности в локальной среде, также могут пройти проверку подлинности через Интернет — без необходимости открывать брандмауэр или развертывать новые серверы в центре обработки данных. Вы можете продолжить использовать всю имеющуюся среду Active Directory, которую вы узнаете и используете сегодня, чтобы предоставить внутренним приложениям возможность единого входа.

После создания подключения между AD и Azure AD можно также включить веб-приложения и мобильные устройства для проверки подлинности сотрудников в облаке. Кроме того, вы можете включить сторонние приложения, такие как Office 365, SalesForce.com или Google Apps, чтобы принять ваши учетные данные сотрудников. Если вы используете Office 365, вы уже настроили Azure AD, так как Office 365 использует Azure AD для проверки подлинности и авторизации.

сторонние приложения

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

Если ваша компания использует или переходит на Office 365, хорошая новость заключается в том, что Azure AD настроен автоматически, так как Office 365 использует Azure AD для проверки подлинности. Поэтому вы можете легко использовать в собственных приложениях ту же проверку подлинности, которую использует Office 365.

Настройка клиента Azure AD

Каталог Azure AD называется клиентомAzure AD, и Настройка клиента довольно проста. Мы покажем, как это делается в портал управления Azure, чтобы продемонстрировать основные понятия, но, конечно же, с другими функциями портала, можно также использовать скрипт или API управления.

На портале управления перейдите на вкладку Active Directory.

WAAD на портале

Вы автоматически используете один клиент Azure AD для своей учетной записи Azure, и вы можете нажать кнопку Добавить в нижней части страницы, чтобы создать дополнительные каталоги. Например, вам может потребоваться одна из них для тестовой среды, а другая — для рабочей. Подумайте о том, что вы назначите имя нового каталога. Если вы используете имя каталога, а затем снова используете его имя для одного из пользователей, это может привести к путанице.

Добавление каталога

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

Кнопка "Добавить пользователя"

Диалоговое окно добавления пользователя

Можно создать нового пользователя, который существует только в этом каталоге, или зарегистрировать учетную запись Майкрософт в качестве пользователя в этом каталоге или зарегистрировать пользователя из другого каталога Azure AD в качестве пользователя в этом каталоге. (В реальном каталоге домен по умолчанию будет ContosoTest.onmicrosoft.com. Вы также можете использовать собственный домен, например contoso.com.)

Пользовательские типы

Диалоговое окно добавления пользователя

Пользователю можно назначить роль.

Профиль пользователя

Учетная запись создается с временным паролем.

Временный пароль

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

Но что замечательно для корпоративного единого входа, на вкладке Интеграция каталогов :

Вкладка "Интеграция каталогов"

Если включить интеграцию каталогов и скачать средство, вы можете синхронизировать этот облачный каталог с существующими локальными Active Directory, которые вы уже используете в вашей организации. Затем все пользователи, хранящиеся в каталоге, будут отображаться в этом облачном каталоге. Ваши облачные приложения теперь могут проходить проверку подлинности всех сотрудников, используя существующие учетные данные Active Directory. И все это бесплатно — как средство синхронизации, так и Azure AD.

Средство — это простой в использовании мастер, как видно из этих снимков экрана. Эти инструкции не являются полными, просто пример, демонстрирующий базовый процесс. Более подробные сведения о том, как это сделать, см. по ссылкам в разделе ресурсов в конце главы.

Мастер настройки средства синхронизации WAAD

Нажмите кнопку Далее, а затем введите учетные данные Azure Active Directory.

Мастер настройки средства синхронизации WAAD

Нажмите кнопку Далее, а затем введите локальные учетные данные AD.

Мастер настройки средства синхронизации WAAD

Нажмите кнопку Далее, а затем укажите, хотите ли вы сохранить хэш паролей AD в облаке.

Мастер настройки средства синхронизации WAAD

Хэш пароля, который можно хранить в облаке, является односторонним. фактические пароли никогда не хранятся в Azure AD. Если вы решили хранить хэши в облаке, необходимо использовать службы федерации Active Directory (AD FS) (ADFS). Существуют также другие факторы, которые следует учитывать при выборе того, следует ли использовать ADFS. Параметр ADFS требует выполнения нескольких дополнительных действий по настройке.

Если вы решили сохранить хэши в облаке, то все готово, и средство начнет синхронизацию каталогов при нажатии кнопки Далее.

Мастер настройки средства синхронизации WAAD

И через несколько минут вы уже сделали это.

Мастер настройки средства синхронизации WAAD

Это необходимо выполнить только на одном контроллере домена в Организации, в Windows 2003 или более поздней версии. И перезагружаться не нужно. Когда все будет готово, все пользователи будут находиться в облаке, и вы сможете выполнить единый вход из любого веб-или мобильного приложения с помощью SAML, OAuth или WS-подач.

Иногда мы попросят о том, насколько безопасно это сделать — Корпорация Майкрософт использует ее для своих конфиденциальных бизнес-данных? И ответ — Да. Например, если вы переходите на внутренний сайт Microsoft SharePoint по адресу https://microsoft.sharepoint.com/, вам будет предложено войти в систему.

Вход в Office 365

Корпорация Майкрософт включила ADFS, поэтому при вводе идентификатора Майкрософт вы будете перенаправлены на страницу входа в ADFS.

Вход в ADFS

После ввода учетных данных, хранящихся во внутренней учетной записи Microsoft AD, вы получите доступ к этому внутреннему приложению.

Сайт MS SharePoint

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

Создание приложения ASP.NET, использующего Azure AD для единого входа

Visual Studio позволяет очень легко создать приложение, использующее Azure AD для единого входа, как видно из нескольких снимков экрана.

При создании нового приложения ASP.NET (MVC или Web Forms) по умолчанию используется метод проверки подлинности ASP.NET Identity. Чтобы изменить это в Azure AD, нажмите кнопку изменить проверку подлинности .

Изменить проверку подлинности

Выберите учетные записи организации, введите свое имя домена, а затем выберите единый вход.

Диалоговое окно настройки проверки подлинности

Можно также предоставить приложению разрешение на чтение или чтение и запись для данных каталога. В этом случае можно использовать REST API Azure Graph для поиска номера телефона пользователей, узнать, находятся ли они в офисе, когда они последний вошел в систему и т. д.

Это все, что нужно сделать — Visual Studio запрашивает учетные данные для администратора клиента Azure AD, а затем настраивает проект и клиент Azure AD для нового приложения.

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

Вход в учетную запись Организации

Вход выполнен

При развертывании приложения в Azure все, что нужно сделать, — это установить флажок включить проверку подлинности организации , и снова Visual Studio позаботится о настройке.

Веб-публикация

Эти снимки экрана посвящены полному пошаговому руководству, в котором показано, как создать приложение, использующее проверку подлинности Azure AD: Разработка приложений ASP.NET с помощью Azure Active Directory.

Сводка

В этой главе вы видели, что Azure Active Directory, Visual Studio и ASP.NET, упрощают настройку единого входа в Интернет-приложениях для пользователей вашей организации. Пользователи могут входить в Интернет приложения, используя те же учетные данные, которые используются для входа в систему с помощью Active Directory во внутренней сети.

В следующей главе рассматриваются варианты хранения данных, доступные для облачного приложения.

Ресурсы

Для получения дополнительных сведений см. следующие ресурсы: