Как использовать REST API в IoT Central для управления пользователями и ролями
REST API IoT Central позволяет разрабатывать клиентские приложения, которые интегрируются с приложениями IoT Central. Вы можете использовать REST API для управления пользователями и ролями в приложении IoT Central.
Каждому вызову REST API IoT Central требуется заголовок авторизации. Дополнительные сведения см. в разделе Аутентификация и авторизация вызовов REST API IoT Central.
Примечание.
Операции с пользователями и ролями записываются в журнал аудита IoT Central.
Справочную документацию по REST API IoT Central см. в справочнике по REST API Azure IoT Central.
Сведения об управлении пользователями и ролями с помощью пользовательского интерфейса IoT Central см. в статье "Управление пользователями и ролями" в приложении IoT Central.
Управление ролями
REST API позволяет вывести список ролей, определенных в приложении IoT Central. Используйте следующий запрос для получения списка идентификаторов ролей из приложения:
GET https://{your app subdomain}.azureiotcentral.com/api/roles?api-version=2022-07-31
Ответ на этот запрос выглядит так, как показано в следующем примере, включающем три встроенные роли и пользовательскую роль:
{
"value": [
{
"id": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4",
"displayName": "Administrator"
},
{
"id": "ae2c9854-393b-4f97-8c42-479d70ce626e",
"displayName": "Operator"
},
{
"id": "344138e9-8de4-4497-8c54-5237e96d6aaf",
"displayName": "Builder"
},
{
"id": "16f8533f-6b82-478f-8ba8-7e676b541b1b",
"displayName": "Example custom role"
}
]
}
Примечание.
Эта команда показывает только роли, связанные с приложением, а не настраиваемую роль уровня организации.
Управление пользователями
REST API предоставляет следующие возможности.
- Вывод списка пользователей в приложении.
- Получение сведений об отдельном пользователе.
- Создание пользователя
- Изменение пользователя.
- Удаление пользователя
Список пользователей
Используйте следующий запрос для получения списка пользователей из приложения:
GET https://{your app subdomain}.azureiotcentral.com/api/users?api-version=2022-07-31
Ответ на этот запрос выглядит, как показано в примере ниже. Значения ролей указывают идентификатор роли, с которой связан пользователь:
{
"value": [
{
"id": "91907508-04fe-4349-91b5-b872f3055a95",
"type": "email",
"roles": [
{
"role": "ca310b8d-2f4a-44e0-a36e-957c202cd8d4"
}
],
"email": "user1@contoso.com"
},
{
"id": "dc1c916b-a652-49ea-b128-7c465a54c759",
"type": "email",
"roles": [
{
"role": "ae2c9854-393b-4f97-8c42-479d70ce626e"
}
],
"email": "user2@contoso.com"
},
{
"id": "3ab9375e-d2d9-42da-b419-6ae86a938321",
"type": "email",
"roles": [
{
"role": "344138e9-8de4-4497-8c54-5237e96d6aaf"
}
],
"email": "user3@contoso.com"
},
{
"id": "fc5a250b-83fb-433d-892c-e0a144f68c2b",
"type": "email",
"roles": [
{
"role": "16f8533f-6b82-478f-8ba8-7e676b541b1b"
}
],
"email": "user4@contoso.com"
}
]
}
Получение пользователя
Используйте следующий запрос для получения сведений об отдельном пользователе из приложения:
GET https://{your app subdomain}.azureiotcentral.com/api/users/dc1c916b-a652-49ea-b128-7c465a54c759?api-version=2022-07-31
Ответ на этот запрос выглядит, как показано в примере ниже. Значение роли указывает идентификатор роли, с которой связан пользователь:
{
"id": "dc1c916b-a652-49ea-b128-7c465a54c759",
"type": "email",
"roles": [
{
"role": "ae2c9854-393b-4f97-8c42-479d70ce626e"
}
],
"email": "user2@contoso.com"
}
Создание пользователя
Используйте следующий запрос, чтобы создать пользователя в приложении. Идентификатор и адрес электронной почты должны быть уникальными в приложении:
PUT https://{your app subdomain}.azureiotcentral.com/api/users/user-001?api-version=2022-07-31
В следующем тексте запроса role
является значением для роли оператора, полученным ранее:
{
"id": "user-001",
"type": "email",
"roles": [
{
"role": "ae2c9854-393b-4f97-8c42-479d70ce626e"
}
],
"email": "user5@contoso.com"
}
Ответ на этот запрос выглядит, как показано в примере ниже. Значение роли указывает, с какой ролью связан пользователь:
{
"id": "user-001",
"type": "email",
"roles": [
{
"role": "ae2c9854-393b-4f97-8c42-479d70ce626e"
}
],
"email": "user5@contoso.com"
}
Вы также можете добавить пользователя субъекта-службы, который полезен, если необходимо использовать проверку подлинности субъекта-службы для вызовов REST API. Дополнительные сведения см. в статье Добавление или обновление субъекта-службы.
Изменение роли пользователя
Используйте следующий запрос, чтобы изменить роль, назначенную пользователю. В этом примере используется полученный ранее идентификатор роли построителя:
PATCH https://{your app subdomain}.azureiotcentral.com/api/users/user-001?api-version=2022-07-31
Текст запроса. Значение для роли построителя, полученное ранее:
{
"roles": [
{
"role": "344138e9-8de4-4497-8c54-5237e96d6aaf"
}
]
}
Ответ на этот запрос выглядит так, как показано в следующем примере.
{
"id": "user-001",
"type": "email",
"roles": [
{
"role": "344138e9-8de4-4497-8c54-5237e96d6aaf"
}
],
"email": "user5@contoso.com"
}
Удаление пользователя
Используйте следующий запрос для удаления пользователя:
DELETE https://{your app subdomain}.azureiotcentral.com/api/users/user-001?api-version=2022-07-31
Следующие шаги
Теперь, когда вы узнали, как управлять пользователями и ролями с помощью REST API, предлагаемым шагом является использование REST API IoT Central для управления организациями.