Управление сертификатами устройства
Чтобы начать обмен данными и командами между устройствами и реестрами, необходимо авторизоваться. В данном разделе описано, как управлять сертификатами устройства для соответствующего способа авторизации.
Примечание
Если X.509 сертификат используется вместе с паролем, приоритет пароля выше.
- Посмотреть список сертификатов устройства
- Добавить сертификат устройству
- Удалить сертификат устройства
Для обращения к устройству используйте его уникальный идентификатор или имя. Как узнать уникальный идентификатор или имя устройства, читайте в разделе Получение информации об устройстве.
Получить список сертификатов
- В консоли управления
выберите каталог, в котором находится устройство. - Выберите сервис IoT Core.
- Выберите реестр, в котором находится устройство.
- Перейдите на вкладку Устройства.
- Выберите устройство.
- На странице Обзор перейдите к разделу Сертификаты.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
Посмотрите список сертификатов устройства:
yc iot device certificate list --device-name my-device
Результат:
+------------------------------------------+---------------------+
| FINGERPRINT | CREATED AT |
+------------------------------------------+---------------------+
| df3cc4f337eba01a264803d15b119e2d******** | 2019-05-29 17:14:36 |
| 65e5b050069da5ca5996a4a8a9251409******** | 2019-05-29 17:14:18 |
+------------------------------------------+---------------------+
Чтобы получить список сертификатов устройства, воспользуйтесь методом REST API listCertificates для ресурса Device или вызовом gRPC API DeviceService/ListCertificates.
Добавить сертификат
Чтобы добавить сертификат устройства:
-
В консоли управления
выберите каталог, в который вы хотите добавить сертификат устройства. -
Выберите сервис IoT Core.
-
Нажмите на имя нужного реестра.
-
Перейдите в раздел Устройства.
-
Выберите в списке нужное устройство.
-
На странице Обзор перейдите к разделу Сертификаты и нажмите кнопку Добавить сертификат.
-
Чтобы добавить файл:
- Выберите способ
Файл
. - Нажмите Прикрепить файл.
- Укажите файл сертификата на вашем компьютере, нажмите Открыть.
- Нажмите Добавить.
- Выберите способ
-
Чтобы добавить текст:
- Выберите способ
Текст
. - Вставьте тело сертификата в поле Содержимое.
- Нажмите Добавить.
- Выберите способ
-
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
Добавьте сертификат устройству:
yc iot device certificate add \
--device-name my-device \ # Имя устройства.
--certificate-file device-cert.pem # Путь к публичной части сертификата.
Результат:
device_id: b9135goeh1uc********
fingerprint: 65e5b050069da5ca5996a4a8a9251409********
certificate_data: |
-----BEGIN CERTIFICATE-----
MIIE/jCCAuagAwI...
-----END CERTIFICATE-----
created_at: "2019-05-29T17:14:18.804Z"
Terraform
Terraform распространяется под лицензией Business Source License
Подробную информацию о ресурсах провайдера смотрите в документации на сайте Terraform
Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.
Чтобы добавить сертификат устройству, созданному с помощью Terraform:
-
Опишите в конфигурационном файле параметры ресурсов, которые необходимо создать:
yandex_iot_core_device
— параметры устройства:registry_id
— идентификатор реестра, в котором создается устройство.name
— имя устройства.description
— описание устройства.certificates
— список сертификатов для авторизации с помощью сертификатов.
Пример описания устройства в конфигурации Terraform:
resource "yandex_iot_core_device" "my_device" { registry_id = "<идентификатор_реестра>" name = "<имя_устройства>" description = "test device for terraform provider documentation" ... certificates = [ file("<путь_к_файлу_c_сертификатом>") ] ... }
Более подробную информацию о параметрах ресурса
yandex_iot_core_device
в Terraform, см. в документации провайдера . -
В командной строке перейдите в папку, где вы отредактировали конфигурационный файл.
-
Проверьте корректность конфигурационного файла с помощью команды:
terraform validate
Если конфигурация является корректной, появится сообщение:
Success! The configuration is valid.
-
Выполните команду:
terraform plan
В терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.
-
Примените изменения конфигурации:
terraform apply
-
Подтвердите изменения: введите в терминале слово
yes
и нажмите Enter.Проверить сертификаты устройства можно в консоли управления
или с помощью команды CLI:yc iot device certificate list --device-name <имя_устройства>
Чтобы добавить сертификат устройству, воспользуйтесь методом REST API addCertificate для ресурса Device или вызовом gRPC API DeviceService/AddCertificate.
Удалить сертификат
Чтобы удалить сертификат устройства:
- В консоли управления
выберите каталог, из которого вы хотите удалить сертификат устройства. - Выберите сервис IoT Core.
- Нажмите на имя нужного реестра.
- Перейдите в раздел Устройства.
- Выберите в списке нужное устройство.
- На странице Обзор перейдите к разделу Сертификаты.
- В строке с нужным сертификатом нажмите значок
, в выпадающем списке выберите Удалить. - В открывшемся окне нажмите кнопку Удалить.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
-
Удалите сертификат устройства:
yc iot device certificate delete --device-name my-device --fingerprint 65...
-
Проверьте, что сертификат действительно удален:
yc iot device certificate list --device-name my-device
Результат:
+-------------+------------+ | FINGERPRINT | CREATED AT | +-------------+------------+ +-------------+------------+
Terraform
Terraform распространяется под лицензией Business Source License
Подробную информацию о ресурсах провайдера смотрите в документации на сайте Terraform
Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.
Чтобы удалить сертификат устройства, созданного с помощью Terraform:
-
Откройте файл конфигурации Terraform и удалите значение нужного сертификата в блоке
certificates
, во фрагменте с описанием устройства. Чтобы удалить все сертификаты, удалите блокcertificates
целиком.Пример описания устройства в конфигурации Terraform:
resource "yandex_iot_core_device" "my_device" { registry_id = "<идентификатор_реестра>" name = "<имя_устройства>" description = "test device for terraform provider documentation" ... certificates = [ file("<путь_к_файлу_c_сертификатом>") ] ... }
Более подробную информацию о параметрах ресурса
yandex_iot_core_device
в Terraform, см. в документации провайдера . -
В командной строке перейдите в папку, где вы отредактировали конфигурационный файл.
-
Проверьте корректность конфигурационного файла с помощью команды:
terraform validate
Если конфигурация является корректной, появится сообщение:
Success! The configuration is valid.
-
Выполните команду:
terraform plan
В терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.
-
Примените изменения конфигурации:
terraform apply
-
Подтвердите изменения: введите в терминале слово
yes
и нажмите Enter.Проверить сертификаты устройства можно в консоли управления
или с помощью команды CLI:yc iot device certificate list --device-name <имя_устройства>
Чтобы удалить сертификат устройства, воспользуйтесь методом REST API deleteCertificate для ресурса Device или вызовом gRPC API DeviceService/DeleteCertificate.