Поделиться через


Руководство. Подготовка приложения для проверки подлинности

В предыдущем руководстве вы зарегистрировали веб-приложение в Центре администрирования Microsoft Entra. В этом руководстве показано, как создать веб-приложение ASP.NET Core с помощью интегрированной среды разработки. Вы также создадите и отправьте самозаверяющий сертификат в Центр администрирования Microsoft Entra для защиты приложения. Наконец, вы настроите приложение для проверки подлинности.

В этом руководстве рассматриваются следующие темы:

  • Создание веб-приложения ASP.NET Core
  • Создание самозаверяющего сертификата
  • Настройка параметров для приложения
  • Определение параметров платформы и URL-адресов

Необходимые компоненты

Создание проекта ASP.NET Core

Используйте следующие вкладки, чтобы создать проект ASP.NET Core в интегрированной среде разработки.

  1. Откройте Visual Studio и нажмите кнопку "Создать проект".
  2. Найдите и выберите шаблон ASP.NET Core Web App , а затем нажмите кнопку "Далее".
  3. Введите имя проекта, например NewWebAppLocal.
  4. Выберите расположение проекта или примите параметр по умолчанию, а затем нажмите кнопку "Далее".
  5. Примите значение по умолчанию для платформы, типа проверки подлинности и настройки для HTTPS. Тип проверки подлинности можно задать в значение None , так как в этом руководстве рассматривается процесс.
  6. Нажмите кнопку создания.

Создание и отправка самозаверяющего сертификата

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

  1. Выберите командную строку разработчика командной строки > инструментов>.

  2. Введите следующую команду, чтобы создать самозаверяющий сертификат:

    dotnet dev-certs https -ep ./certificate.crt --trust
    

Отправка сертификата в Центр администрирования Microsoft Entra

Чтобы сделать сертификат доступным для приложения, его необходимо передать в клиент.

  1. Начиная со страницы "Обзор" созданного ранее приложения в разделе "Управление" выберите "Сертификаты и секреты" и перейдите на вкладку "Сертификаты" (0).

  2. Выберите Отправить сертификат.

    Снимок экрана: отправка сертификата в клиент Microsoft Entra.

  3. Щелкните значок папки, а затем найдите и выберите созданный ранее сертификат.

  4. Введите описание сертификата и нажмите кнопку "Добавить".

  5. Запишите значение отпечатка, которое будет использоваться на следующем шаге.

    Снимок экрана: копирование отпечатка сертификата.

Настройка приложения для проверки подлинности и справочника по API

Значения, записанные ранее, будут использоваться для настройки приложения для проверки подлинности. Файл конфигурации appsettings.json используется для хранения параметров приложения, используемых во время выполнения. Так как приложение также вызовет веб-API, оно также должно содержать ссылку на него.

  1. В интегрированной среде разработки откройте appsettings.json и замените содержимое файла следующим фрагментом кода. Замените текст в кавычках значениями, записанными ранее.

    {
    "AzureAd": {
      "Instance": "https://login.microsoftonline.com/",
      "TenantId": "Enter the tenant ID obtained from the Microsoft Entra admin center",
      "ClientId": "Enter the client ID obtained from the Microsoft Entra admin center",
      "ClientCertificates": [
        {
          "SourceType": "StoreWithThumbprint",
          "CertificateStorePath": "CurrentUser/My",
          "CertificateThumbprint": "Enter the certificate thumbprint obtained the Microsoft Entra admin center"
        }   
      ],
      "CallbackPath": "/signin-oidc"
    },
      "DownstreamApi": {
        "BaseUrl": "https://graph.microsoft.com/v1.0/",
        "RelativePath": "me",
        "Scopes": [ 
          "user.read" 
        ]
      },
      "Logging": {
        "LogLevel": {
          "Default": "Information",
          "Microsoft.AspNetCore": "Warning"
        }
      },
      "AllowedHosts": "*"
    }
    
    • Instance — конечная точка проверки подлинности. Ознакомьтесь с различными доступными конечными точками в национальных облаках.
    • TenantId — идентификатор клиента, в котором зарегистрировано приложение. Замените текст в кавычках значением идентификатора каталога (клиента), записанного ранее на странице обзора зарегистрированного приложения.
    • ClientId — идентификатор приложения, который также называется клиентом. Замените текст в кавычках значением идентификатора приложения (клиента), записанным ранее на странице обзора зарегистрированного приложения.
    • ClientCertificates — Самозаверяющий сертификат используется для проверки подлинности в приложении. Замените текст CertificateThumbprint отпечатка сертификата, записанного ранее.
    • CallbackPath — это идентификатор, помогающий серверу перенаправлять ответ на соответствующее приложение.
    • DownstreamApi — это идентификатор, определяющий конечную точку для доступа к Microsoft Graph. Универсальный код ресурса (URI) приложения сочетается с указанным область. Чтобы определить конфигурацию приложения, принадлежащих организации, значение атрибута Scopes немного отличается.
  2. Сохраните изменения в файле .

  3. В папке "Свойства" откройте файл запуска Параметры.json.

  4. Найдите и запишите https значение applicationURI в рамках запуска Параметры.json, напримерhttps://localhost:{port}. Этот URL-адрес будет использоваться при определении URI перенаправления. Не используйте http значение.

Добавление URI перенаправления платформы

  1. В Центре администрирования Microsoft Entra в разделе "Управление" выберите Регистрация приложений и выберите ранее созданное приложение.

  2. В меню слева в разделе Управлениевыберите Проверка подлинности.

  3. В конфигурациях платформы выберите "Добавить платформу" и выберите "Интернет".

    Снимок экрана: выбор платформы для приложения.

  4. В разделе URI перенаправления введите applicationURL и CallbackPath, /signin-oidcв виде https://localhost:{port}/signin-oidc.

  5. В разделе URL-адрес выхода front-channel введите следующий URL-адрес для выхода https://localhost:{port}/signout-oidc.

  6. Выберите Настроить.

Следующие шаги