Эта документация перемещена в архив и не поддерживается.

Инструкции Создание первого приложения ASP.NET с поддержкой утверждений с помощью ACS

Опубликовано: Апрель 2011 г.

Обновлено: Июнь 2015 г.

Назначение: Azure

ImportantВажно!
Пространства имен ACS могут перенести конфигурации поставщика удостоверений Google из OpenID 2.0 в OpenID Connect. Миграцию нужно завершить до 1 июня 2015 г. Подробное руководство см. в статье Перенос пространств имен ACS в Google OpenID Connect. До начала миграции этот учебник можно изучать, используя другой поставщик удостоверений, например Facebook.

  • Microsoft Azure Active Directory Access Control (также называется Access Control Service или ACS)

В этой статье описывается интеграция Служба управления доступом с приложением ASP.NET проверяющей стороны. Интегрируя веб-приложение с Служба управления доступом, вы выносите функции проверки подлинности и авторизации за свой код. Другими словами, Служба управления доступом предоставляет механизм проверки подлинности и авторизации пользователей в вашем веб-приложении.

В этом сценарии Служба управления доступом проверяет подлинность пользователей с помощью удостоверения Google в тестовом приложении ASP.NET проверяющей стороны.

Подробные инструкции по созданию Пространство имен Access Control см. в разделе Инструкции по созданию пространства имен Access Control.

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

  1. Перейдите на портал управления Microsoft Azure, выполните вход и щелкните Active Directory. (Совет по устранению неполадок. Элемент "Active Directory" отсутствует или недоступен)

  2. Для выполнения управления пространством имен Access Control выберите пространство имен и щелкните Управление. (Или щелкните Пространства имен Access Control, выберите пространство имен, а затем щелкните Управление.)

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

  1. На портале управления Служба управления доступом щелкните Поставщики удостоверений в дереве слева или щелкните ссылку Поставщики удостоверений в разделе Приступая к работе.

  2. На странице Поставщики удостоверений нажмите кнопку Добавить, выберите Google в качестве поставщика удостоверений и нажмите кнопку Далее.

  3. На странице Добавление поставщика удостоверений Google необходимо ввести текст ссылки для входа (по умолчанию — Google) и URL-адрес изображения. Этот URL-адрес указывает на файл изображения, который можно использовать как ссылку для входа этого поставщика удостоверений. Изменять эти поля необязательно. Сейчас просто нажмите кнопку Сохранить.

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

  1. На портале управления Служба управления доступом щелкните Приложения проверяющей стороны в дереве слева или щелкните ссылку Приложения проверяющей стороны в разделе Приступая к работе.

  2. На странице Приложения проверяющей стороны нажмите кнопку Добавить.

  3. На странице Добавление приложения проверяющей стороны выполните следующие действия.

    • В поле Имя введите имя приложения проверяющей стороны. Для этого упражнения введите TestApp.

    • Для параметра Режим выберите Ввести параметры вручную.

    • В поле Область введите URI, к которому применяется токен безопасности, выданный Служба управления доступом. Для этого упражнения введите http://localhost:7777/.

    • В поле URL возврата введите URL-адрес, которому Служба управления доступом возвращает токен безопасности. Для этого упражнения введите http://localhost:7777/.

    • В поле URL-адрес ошибки (необязательно) введите URL-адрес, по которому Служба управления доступом может опубликовать данные, если во время входа возникнет ошибка. Для этого упражнения оставьте поле пустым.

    • В поле Формат токена выберите формат, который Служба управления доступом будет использовать при выдаче токенов безопасности этому приложению проверяющей стороны. Для этого упражнения введите SAML 2.0. Дополнительные сведения о токенах и их форматах см. в статье Форматы токенов, поддерживаемые в ACS и в разделе "Формат токена" статьи Приложения проверяющей стороны.

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

    • В поле Время жизни токена (с) укажите время действия токена безопасности, выданного Служба управления доступом. Для этого упражнения примите значение по умолчанию, 600. Дополнительные сведения см. в разделе "Время жизни токена" статьи Приложения проверяющей стороны.

    • В разделе Поставщики удостоверений выберите поставщики удостоверений, которые будут использоваться для этого приложения. Для этого упражнения примите значение по умолчанию ((Google и Windows Live ID).

    • В разделе Группы правил выберите группы правил, которые приложение проверяющей стороны будет использовать при обработке утверждений. Для этого упражнения примите параметр Создать новую группу правил, выбранный по умолчанию. Дополнительные сведения о группах правил см. в разделе Группы правил и правила.

    • В разделе Параметры подписи токена укажите, будут ли подписываться токены SAML с помощью сертификата для Пространство имен Access Control или настраиваемого сертификата для этого приложения. Для этого упражнения примите значение по умолчанию, Использовать сертификат службы пространства имен (стандартный). Дополнительные сведения о подписи токенов см. в разделе "Подпись токенов" статьи Приложения проверяющей стороны.

  4. Нажмите кнопку Сохранить.

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

  1. На главной странице портала управления Служба управления доступом щелкните Правила групп в дереве слева или щелкните ссылку Группы правил в разделе Приступая к работе.

  2. На странице Группы правил щелкните Группа правил по умолчанию для TestApp (как вы помните, мы назвали приложение проверяющей стороны TestApp).

  3. На странице Изменение группы правил нажмите кнопку Создать.

  4. на странице Создание правил: группа правил по умолчанию для TestApp примите выбранные поставщики удостоверений по умолчанию (в этом упражнении это Google и Windows Live ID), а затем нажмите кнопку Создать.

  5. На странице Изменение группы правил нажмите кнопку Сохранить.

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

  • На главной странице портала управления Служба управления доступом щелкните Интеграция приложений в дереве слева или щелкните ссылку Интеграция приложений в разделе Приступая к работе.

    На странице Интеграция приложений отображаются уникальные для вашего Служба управления доступом URI Пространство имен Access Control.

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

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

  1. Чтобы запустить Visual Studio 2010, в меню Пуск щелкните Выполнить, введите следующий текст и нажмите клавишу ВВОД:
    devenv.exe

  2. В Visual Studio откройте меню Файл и выберите пункт Новый проект.

  3. В окне Новый проект выберите шаблон Visual Basic или Visual C#, а затем выберите элемент Веб-приложение ASP.NET MVC 2.

  4. В поле Имя введите следующий текст и нажмите кнопку ОК:
    TestApp

  5. В окне Создание проекта модульного теста выберите Нет, не создавать проект модульного теста, а затем нажмите кнопку ОК.

  6. В обозревателе решений щелкните правой кнопкой мыши TestApp и выберите пункт Свойства.

  7. В окне Свойства TestApp откройте вкладку Интернет, в разделе Использовать сервер разработки Visual Studio щелкните Указанный порт и измените значение на 7777.

  8. Чтобы выполнить и отладить созданное приложение, нажмите F5. Если ошибки не обнаружены, в браузере появится пустой проект MVC.

    Не закрывайте Visual Studio 2010, чтобы завершить следующий шаг.

В этом разделе описывается, как интегрировать Служба управления доступом с приложением ASP.NET проверяющей стороны, созданным на предыдущем шаге.

  1. В Visual Studio 2010 в обозревателе решений для TestApp щелкните правой кнопкой TestApp и выберите команду Добавить ссылку на STS.

  2. В мастере федерации выполните следующие действия.

    1. На странице приветствия мастера федерации в поле URI приложения введите URI приложения и нажмите кнопку Далее. В этой демонстрации URI приложения — http://localhost:7777/.

      noteПримечание
      Косая черта в конце играет важную роль, так как в этом случае значение соответствует URI, введенному на портале управления Служба управления доступом для вашего приложения проверяющей стороны. Дополнительные сведения см. в Шаг 4. Добавление приложения проверяющей стороны.

    2. Появляется предупреждение: Код 1007: приложение не размещено по защищенному HTTPS-подключению. Продолжить? Для этой демонстрации нажмите кнопку Да.

      noteПримечание
      В производственной среде это предупреждение об использовании SSL имеет смысл, и его не следует игнорировать.

    3. На странице Служба токенов безопасности выберите параметр Использовать существующую службу STS, введите URL-адрес метаданных WS-Federation, опубликованный Служба управления доступом, и нажмите кнопку Далее.

      noteПримечание
      URL-адрес метаданных WS-Federation можно найти на странице Интеграция приложений портала управления Служба управления доступом. Дополнительные сведения см. в Шаг 6. Просмотр сведений об интеграции приложений.

    4. На странице Ошибка проверки цепочки сертификатов подписи STS нажмите кнопку Далее.

    5. На странице Шифрование токена безопасности нажмите Далее.

    6. На странице Предложенные утверждения нажмите кнопку Далее.

    7. На странице Сводка нажмите кнопку Готово.

    После успешного запуска мастера федерации он добавляет ссылку на сборку Microsoft.IdentityModel.dll и записывает значения в файл Web.config, который настраивает Windows Identity Foundation в веб-приложении ASP.NET MVC 2 (TestApp).

  3. Откройте файл Web.config и найдите основной элемент system.web. Он может выглядеть следующим образом:

    <system.web>
        <authorization>
          <deny users="?" />
        </authorization>
    

    Добавьте следующий в основной элемент system.web в файле Web.config, чтобы включить проверку запросов:

    
        <!--set this value-->
        <httpRuntime requestValidationMode="2.0"/>
     
    

    После этого фрагмент кода выше должен выглядеть следующим образом:

     
       <system.web>
        <!--set this value-->
        <httpRuntime requestValidationMode="2.0"/>
        <authorization>
        <deny users="?" />
        </authorization>
    

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

  1. Не закрывая Visual Studio 2010, нажмите F5, чтобы начать отладку приложения ASP.NET проверяющей стороны.

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

  2. Выберите Google.

    В браузере откроется страница входа Google.

  3. Введите тестовые учетные данные Google и примите условия, показанные на веб-сайте Google.

    Затем браузер ответит службе Служба управления доступом, служба Служба управления доступом выдаст токен и отправит его на ваш сайт MVC.

См. также

Основные понятия

Инструкции для ACS

Показ: