Бөлісу құралы:


Создание маркера проверки подлинности

В этой статье вы узнаете, как создать маркер проверки подлинности субъекта-службы, маркер проверки подлинности пользователя и маркер обновления пользователя.

Регистрация приложения в Microsoft Entra ID

  1. Чтобы подготовить платформу Azure Data Manager для энергетики, необходимо зарегистрировать приложение на странице регистрации приложения портал Azure. Для регистрации приложения можно использовать либо учетную запись Майкрософт, либо рабочую или учебную учетную запись. Инструкции по настройке см. в документации по регистрации приложения.

  2. В разделе обзора приложения, если не указан URI перенаправления, можно выбрать "Добавить веб-сайт платформы>", добавить http://localhost:8080и выбрать "Сохранить".

    Снимок экрана: добавление URI в приложение.

Получение параметров

Вы также можете найти параметры после регистрации приложения на портал Azure.

Поиск идентификатора клиента

  1. Перейдите к учетной записи Microsoft Entra для вашей организации. Вы можете найти идентификатор Microsoft Entra в строке поиска портал Azure.

  2. На вкладке "Обзор" в разделе "Основные сведения" найдите идентификатор клиента.

  3. tenant-ID Скопируйте значение и вставьте его в редактор, который будет использоваться позже.

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

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

Поиск идентификатора клиента

Это client-id то же значение, которое вы используете для регистрации приложения во время подготовки экземпляра Azure Data Manager для энергии. Это часто называется app-id.

  1. Перейдите на страницу обзора Azure Data Manager для энергетики. На панели Essentials найдите идентификатор клиента.

  2. client-id Скопируйте значение и вставьте его в редактор, который будет использоваться позже.

  3. В настоящее время один экземпляр Azure Data Manager для энергетики позволяет связаться app-id с одним экземпляром.

    Внимание

    Значение client-id , переданное в качестве значения в вызовах API прав, должно быть тем же, что и для подготовки экземпляра Azure Data Manager для энергии.

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

Поиск секрета клиента

Это client-secret строковое значение, которое приложение может использовать вместо сертификата для идентификации себя. Иногда он называется паролем приложения.

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

  2. В разделе "Управление" выберите сертификаты и секреты.

  3. Выберите новый секрет клиента, чтобы создать секрет клиента для идентификатора клиента, который использовался для создания экземпляра Azure Data Manager для энергии.

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

    Маркер app-id доступа и client-secret имеет доступ администратора инфраструктуры к экземпляру.

    Внимание

    Не забудьте записать значение секрета. Это значение секрета никогда не отображается снова после выхода этой страницы для создания секрета клиента.

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

Поиск uri перенаправления

Приложение redirect-uri , где приложение отправляет и получает ответы проверки подлинности. Он должен точно соответствовать одному из URI перенаправления, зарегистрированных на портале, за исключением того, что он должен быть закодирован.

  1. Перейдите в пункт Регистрации приложений.
  2. В разделе "Управление" выберите "Проверка подлинности".
  3. redirect-uri Получите URL-адрес (или URL-адрес ответа) для вашего приложения, чтобы получить ответы от идентификатора Microsoft Entra.

Снимок экрана: URI перенаправления.

Найдите adme-URL-адрес для экземпляра Azure Data Manager для энергетики

  1. Создайте экземпляр Azure Data Manager для энергетики с помощью созданного выше экземпляраclient-id.

  2. Перейдите на страницу обзора Azure Data Manager для энергетики на портал Azure.

  3. Скопируйте универсальный код ресурса (URI) на панели Essentials .

    Снимок экрана: поиск URI для экземпляра Azure Data Manager для энергетики.

Поиск идентификатора data-partition-id

Вы можете получить список секций данных в экземпляре Azure Data Manager для энергетики.

  • Вариант 1. В разделе "Дополнительно" в пользовательском интерфейсе Azure Data Manager для энергетики перейдите в меню "Секции данных".

    Снимок экрана: поиск идентификатора секции данных из экземпляра Azure Data Manager для энергетики.

  • Вариант 2. На панели "Основные сведения" на странице "Обзор azure Data Manager для энергетики" в поле "Секции данных" выберите представление.

    Снимок экрана: поиск идентификатора секции данных на странице обзора экземпляра Azure Data Manager для энергетики.

    Снимок экрана: поиск идентификатора секции данных на странице обзора экземпляра Azure Data Manager для энергетики с разделами данных.

Поиск домена

По умолчанию используется domain dataservices.energy для всех экземпляров Azure Data Manager для энергетических экземпляров.

Создание маркера проверки подлинности идентификатора клиента

Выполните следующую команду curl в Azure Cloud Bash после замены значений заполнителей соответствующими значениями, найденными ранее на предыдущих шагах. Маркер доступа в ответе — это client-id маркер проверки подлинности.

Формат запроса

curl --location --request POST 'https://login.microsoftonline.com/<tenant-id>/oauth2/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=client_credentials' \
--data-urlencode 'scope=<client-id>.default' \
--data-urlencode 'client_id=<client-id>' \
--data-urlencode 'client_secret=<client-secret>' \
--data-urlencode 'resource=<client-id>'

Пример ответа

    {
        "token_type": "Bearer",
        "expires_in": 86399,
        "ext_expires_in": 86399,
        "access_token": "abcdefgh123456............."
    }

Создание маркера проверки подлинности пользователя

Создание маркера проверки подлинности пользователя — это двухэтапный процесс.

Получение кода авторизации

Первым шагом для получения маркера доступа для многих потоков OpenID Подключение (OIDC) и OAuth 2.0 является перенаправление пользователя на конечную точку платформа удостоверений Майкрософт/authorize. Идентификатор Microsoft Entra подписывает пользователя и запрашивает согласие на разрешения, запрашивающие запросы приложения. В потоке предоставления кода авторизации после получения согласия идентификатор Microsoft Entra возвращает код авторизации приложению, который он может активировать в конечной точке платформа удостоверений Майкрософт /token для маркера доступа.

  1. Подготовьте формат запроса с помощью параметров.

    https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/authorize?client_id=<client-id>
    &response_type=code
    &redirect_uri=<redirect-uri>
    &response_mode=query
    &scope=<client-id>%2f.default&state=12345&sso_reload=true
    
  2. После замены параметров можно вставить запрос в URL-адрес любого браузера и выбрать ввод.

  3. Войдите в портал Azure, если вы еще не вошли.

  4. Вы можете увидеть "Hmmm... Сообщение об ошибке в браузере не удается связаться с этой страницей. Его можно пропустить.

    Снимок экрана: перенаправление localhost.

  5. Браузер перенаправляется на http://localhost:8080/?code={authorization code}&state=... после успешной проверки подлинности.

  6. Скопируйте ответ из строки URL-адреса браузера и извлеките текст между code= и &state.

    http://localhost:8080/?code=0.BRoAv4j5cvGGr0...au78f&state=12345&session....
    
  7. Следите за этим authorization-code для дальнейшего использования.

    Параметр Описание
    кодом Запрашиваемый приложением код авторизации. Приложение может использовать код авторизации для запроса маркера доступа для целевого ресурса. Коды авторизации имеют небольшой срок действия. и обычно истекает по прошествии порядка 10 минут.
    state Если запрос содержит параметр "state", в ответе должно отображаться то же значение. Приложение должно убедиться, что значения параметра state в запросе и отклике идентичны. Эта проверка помогает обнаружить атаки CSRF против клиента.
    session_state Уникальное значение, указывающее текущий сеанс пользователя. Это значение является ИДЕНТИФИКАТОРом GUID, но оно должно рассматриваться как непрозрачное значение, передаваемое без проверки.

Предупреждение

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

Получение маркера проверки подлинности и маркера обновления

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

Формат запроса

  curl -X POST -H "Content-Type: application/x-www-form-urlencoded" -d 'client_id=<client-id>
  &scope=<client-id>%2f.default openid profile offline_access
  &code=<authorization-code>
  &redirect_uri=<redirect-uri>
  &grant_type=authorization_code
  &client_secret=<client-secret>' 'https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/token'

Пример ответа

{
  "token_type": "Bearer",
  "scope": "User.Read profile openid email",
  "expires_in": 4557,
  "access_token": "eyJ0eXAiOiJKV1QiLCJub25jZSI6IkJuUXdJd0ZFc...",
  "refresh_token": "0.ARoAv4j5cvGGr0GRqy180BHbR8lB8cvIWGtHpawGN..."
}
Параметр Описание
token_type Указывает значение типа маркера. Единственным типом, поддерживаемым идентификатором Microsoft Entra, является носитель.
область Разделенный пробелом список разрешений Microsoft Graph, допустимых для маркера доступа.
expires_in Срок действия маркера доступа (в секундах).
access_token; Запрашиваемый маркер доступа. Приложение может использовать этот маркер для вызова Microsoft Graph.
refresh_token Маркер обновления OAuth 2.0. Приложение может использовать этот маркер для получения дополнительных маркеров доступа после истечения срока действия текущего маркера доступа. Маркеры обновления обладают длительным сроком действия. Их можно использовать для продолжительного доступа к ресурсам.

Дополнительные сведения о создании маркера доступа пользователей и использовании маркера обновления для создания нового маркера доступа см. в разделе "Создание маркеров обновления".

OSDU® — это товарный знак Open Group.

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

Дополнительные сведения об использовании созданного маркера обновления см. в следующих статье: