Аутентификация и авторизация
Каждый вызов REST API, отправляемый в приложение IoT Central, должен включать заголовок авторизации. Заголовок Authorization должен содержать маркер API или маркер носителя AAD. Эти маркеры используются IoT Central для определения того, кто является вызывающим и к чему он имеет доступ в приложении.
Маркер API
Маркеры API предназначены для обмена данными между службами без контекста вошедшего пользователя. Вы можете создать маркер API в приложении и назначить ему роль для предоставления доступа к ресурсам в приложении.
Чтобы создать и использовать маркер API, выполните следующие действия.
Откройте приложение IoT Central в браузере.
Перейдите в раздел Администрирование/маркеры API.
Щелкните Создать токен. Вам будет предложено присвоить ему имя и выбрать роль. Роль определяет, что клиент, использующий этот маркер, имеет право делать в этом приложении.
Создайте маркер и скопируйте значение. Значение является секретом и будет отображаться только один раз.
При создании запроса 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, сначала необходимо создать субъект-службу. Вам потребуется получить идентификатор клиента и идентификатор объекта субъекта-службы:
- Перейдите в портал Azure —> Azure Active Directory —> Обзор. Скопируйте идентификатор клиента.
- Перейдите в раздел Корпоративные приложения. Создайте новое приложение или выберите существующее. Скопируйте objectID
- Перейдите в портал Azure —> Azure Active Directory —> Регистрация приложений —> ваше приложение —> разрешения API. Щелкните Добавить разрешение —> API, которые используются моей организацией, и найдите Microsoft IoT Central. Выберите элемент, соответствующий этому тексту.
- Выберите разрешения user_impersonation и Application.ReadWrite.All и добавьте их.
- Выберите Предоставить согласие администратора для каталога.
Наконец, добавьте субъект-службу в приложение IoT Central. Это возможно с помощью API сегодня.
- Используйте API создания пользователей, чтобы добавить этого пользователя субъекта-службы. При создании нового пользователя используйте {tenantID} и {objectID} .
Теперь вы можете использовать маркер носителя, связанный с этим пользователем субъекта-службы, для выполнения запросов API, выполнив те же действия, что и выше.
Дальнейшие действия
Попробуйте выполнить первый запрос API