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


Аутентификация и авторизация

Каждый вызов REST API, отправляемый в приложение IoT Central, должен включать заголовок авторизации. Заголовок Authorization должен содержать маркер API или маркер носителя AAD. Эти маркеры используются IoT Central для определения того, кто является вызывающим и к чему он имеет доступ в приложении.

Маркер API

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

Чтобы создать и использовать маркер API, выполните следующие действия.

  1. Откройте приложение IoT Central в браузере.

  2. Перейдите в раздел Администрирование/маркеры API.

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

  4. Создайте маркер и скопируйте значение. Значение является секретом и будет отображаться только один раз.

  5. При создании запроса API добавьте заголовок, который выглядит следующим образом:

    Имя заголовка Значение заголовка
    Авторизация <Значение токена API>

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

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

Токен носителя AAD

Маркер носителя связан с учетной записью пользователя Azure Active Directory, добавленной в приложение IoT Central. Вы можете создать маркер носителя с помощью команды Azure CLI: az account get-access-token --resource https://apps.azureiotcentral.com

Создайте запрос API со следующим заголовком:

Имя заголовка Значение заголовка
Авторизация <Значение токена носителя>

При использовании маркера носителя в запросах API вызывающему объекту предоставляется тот же уровень доступа, что и у пользователя Azure Active Directory в приложении IoT Central.

Проверка подлинности субъекта-службы

Чтобы использовать субъект-службу AAD для проверки подлинности в API, сначала необходимо создать субъект-службу. Вам потребуется получить идентификатор клиента и идентификатор объекта субъекта-службы:

  1. Перейдите в портал Azure —> Azure Active Directory —> Обзор. Скопируйте идентификатор клиента.
  2. Перейдите в раздел Корпоративные приложения. Создайте новое приложение или выберите существующее. Скопируйте objectID
  3. Перейдите в портал Azure —> Azure Active Directory —> Регистрация приложений —> ваше приложение —> разрешения API. Щелкните Добавить разрешение —> API, которые используются моей организацией, и найдите Microsoft IoT Central. Выберите элемент, соответствующий этому тексту.
  4. Выберите разрешения user_impersonation и Application.ReadWrite.All и добавьте их.
  5. Выберите Предоставить согласие администратора для каталога.

Наконец, добавьте субъект-службу в приложение IoT Central. Это возможно с помощью API сегодня.

  1. Используйте API создания пользователей, чтобы добавить этого пользователя субъекта-службы. При создании нового пользователя используйте {tenantID} и {objectID} .

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

Дальнейшие действия

Попробуйте выполнить первый запрос API