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


Руководство. Разработка примера конечной точки SCIM в идентификаторе Microsoft Entra

В этом руководстве описывается развертывание эталонного кода SCIM с помощью Службы приложений Azure. Затем протестируйте код с помощью средства, например cURL или интеграции с службой подготовки Microsoft Entra. Этот учебник предназначен для разработчиков, приступающих к работе с SCIM, или для любых пользователей, которым нужно протестировать конечную точку SCIM.

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

  • Развертывание конечной точки SCIM в Azure.
  • Тестирование конечной точки SCIM.

Развертывание конечной точки SCIM в Azure

В этом разделе описывается развертывание конечной точки SCIM в службе с использованием Visual Studio 2019, Visual Studio Code и Службы приложений Azure. Базовый код SCIM можно запустить локально путем размещения на локальном сервере или при развертывании в другой внешней службе. Сведения о подготовке конечной точки SCIM см. в руководстве по разработке и планированию подготовки для конечной точки SCIM.

Получение и развертывание примера приложения

Перейдите к базовому коду, размещенному в GitHub, и выберите операцию клонировать или скачать. Выберите Открыть в среде рабочего стола или скопируйте ссылку, откройте Visual Studio и выберите Клонировать или проверить код, чтобы ввести скопированную ссылку и создать локальную копию кода. Сохраните файлы в папку, общая длина пути к которой не превышает 260 символов.

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

  2. В Обозревателе решений откройте Microsoft.SCIM.sln и щелкните правой кнопкой мыши файл Microsoft.SCIM.WebHostSample. Выберите Опубликовать.

    Снимок экрана: файл с базовым кодом.

    Примечание.

    Для запуска этого решения в локальной среде дважды щелкните проект и выберите IIS Express, чтобы запустить проект как веб-страницу с URL-адресом локального узла. Дополнительные сведения см. в обзоре IIS Express.

  3. Выберите Создать профиль и нажмите последовательно: Служба приложений и Создать новую.

    Снимок экрана: окно «Опубликовать».

  4. Выполните выбор параметров, предоставляемых в диалоговом окне, и присвойте приложению нужное имя. Это имя используется как в приложении, так и в URL-адресе конечной точки SCIM.

    Снимок экрана: создание новой службы приложений.

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

    Снимок экрана: опубликование новой службы приложений.

Настройка Службы приложений

Перейдите к приложению, выбрав последовательно: Служба приложений Azure>Конфигурация, а затем нажмите Новый параметр приложения, чтобы добавить для параметра Token__TokenIssuer значение https://sts.windows.net/<tenant_id>/. Замените <tenant_id> идентификатор клиента Microsoft Entra.

Снимок экрана: окно «Параметры приложения».

При тестировании конечной точки с корпоративным приложением в Центре администрирования Microsoft Entra есть два варианта. Рабочую среду можно сохранить в категории Development и предоставить токен для тестирования из конечной точки /scim/token. Кроме того, можно переместить рабочую среду в категорию Production и оставить поле токена пустым.

Вот и все! Теперь конечная точка SCIM опубликована, и можно использовать URL-адрес службы приложений Azure для проверки конечной точки SCIM.

Тестирование конечной точки SCIM

Для запросов к конечной точке SCIM требуется авторизация. Стандарт SCIM имеет несколько доступных вариантов. Запросы могут использовать файлы cookie, обычную проверку подлинности, проверку подлинности клиента TLS или любой из методов, перечисленных в RFC 7644.

Откажитесь от методов, которые не являются защищенными, например основанных на использовании имени пользователя и пароля, в пользу более безопасных методов, например OAuth. Идентификатор Microsoft Entra id поддерживает долгоживущие маркеры носителя (для приложений коллекции и не коллекции) и предоставление авторизации OAuth (для приложений коллекции).

Примечание.

Методы авторизации, предоставляемые в репозитории, предназначены только для тестирования. При интеграции с идентификатором Microsoft Entra можно ознакомиться с руководством по авторизации. См. Подготовка плана для конечной точки SCIM.

В среде разработки имеются функции, которые не безопасны для производственной среды, например базовый код для управления проведением проверки токена безопасности. В коде проверки токена используется самозаверяющийся токен безопасности, а ключ подписывания хранится в файле конфигурации. См. параметр Token:IssuerSigningKey в файле appsettings.Development.json.

"Token": {
    "TokenAudience": "Microsoft.Security.Bearer",
    "TokenIssuer": "Microsoft.Security.Bearer",
    "IssuerSigningKey": "A1B2C3D4E5F6A1B2C3D4E5F6",
    "TokenLifetimeInMins": "120"
}

Примечание.

При отправке запроса GET к конечной точке /scim/token токен выдается с помощью настроенного ключа. Этот токен можно использовать в качестве токена носителя для последующей авторизации.

Код проверки маркера по умолчанию настроен для использования маркера Microsoft Entra и требует, чтобы выдающий клиент был настроен с помощью параметра Token:TokenIssuer в файле appsettings.json .

"Token": {
    "TokenAudience": "8adf8e6e-67b2-4cf2-a259-e3dc5476c621",
    "TokenIssuer": "https://sts.windows.net/<tenant_id>/"
}

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