Настройка IAM и роли учетной записи службы

Правильная настройка IAM является обязательным условием обеспечения безопасности и управления идентификацией для вашей системы Fleet Engine. Используйте роли IAM для настройки доступа к различным операциям и данным в соответствии с требованиями водителей, потребителей и операторов автопарка.

Что такое служебные учетные записи и роли IAM?

Для аутентификации и авторизации доступа к данным в Fleet Engine вы настраиваете служебные учетные записи в консоли Google Cloud. Fleet Engine имеет набор предопределенных ролей IAM, которые вы назначаете служебной учетной записи, чтобы определить, к каким данным эта учетная запись имеет доступ. Подробнее см. раздел «Обзор служебных учетных записей» в документации Google Cloud.

Fleet Engine использует роли и политики IAM для управления авторизацией методов и ресурсов API Fleet Engine. Дополнительную информацию см. в разделе «Обзор ролей» в документации Google Cloud. Используйте только роли учетных записей служб Fleet Engine, описанные в следующих разделах.

Для получения более подробной информации о предоставлении ролей IAM см. раздел «Предоставление роли IAM с помощью консоли Google Cloud» .

роли учетных записей сервисного обслуживания двигателей автопарка

Выбранная вами служба мобильности для установки Fleet Engine определяет включенные в нее роли и права доступа.

Следующие роли иллюстрируют, как работают разрешения в рамках ролей Fleet Engine:

  • Роли ondemandAdmin и deliveryAdmin могут выполнять все операции в Fleet Engine. Используйте эти роли только в доверенных средах, например, для обмена данными между вашим бэкэнд-сервером и Fleet Engine.

  • Роли driverSdkUser и consumerSdkUser имеют право только получать информацию о назначенных поездках и обновлять или получать данные о местоположении транспортного средства. Эти типы ролей обычно используются клиентами в средах с низким уровнем доверия, таких как приложения для водителей, потребителей или мониторинга.

В следующих таблицах описаны роли и права доступа, предоставляемые для поездок по запросу и запланированных задач.

Поездки по запросу

Роль Разрешение

Администрирование Fleet Engine по запросу

roles/fleetengine.ondemandAdmin

Предоставляет права на чтение, запись и удаление всех ресурсов транспортных средств и поездок. Субъектам с этой ролью не нужно использовать JWT, вместо этого следует использовать учетные данные приложения по умолчанию, когда это возможно. Эта роль игнорирует пользовательские утверждения JWT. Ограничьте использование этой роли доверенными средами, такими как ваш бэкэнд-сервер.

Пользователь SDK для драйверов Fleet Engine

roles/fleetengine.driverSdkUser

Обновляйте местоположение и маршруты транспортных средств, а также получайте информацию о транспортных средствах и поездках. Используйте JWT с пользовательскими утверждениями, созданными с помощью этой роли, для аутентификации и авторизации в приложениях для водителей, работающих в сфере совместных поездок или доставки.

Пользовательский SDK Fleet Engine Consumer

roles/fleetengine.consumerSdkUser

Ищите транспортные средства и получайте информацию о них и поездках. Используйте JWT-токены с пользовательскими утверждениями, созданными с помощью этой роли, для потребительских приложений для совместных поездок или доставки.

Запланированные задачи

Роль Разрешение

Администратор по доставке двигателей для автопарка

roles/fleetengine.deliveryAdmin

Предоставляет права на чтение, запись и удаление ресурсов доставки. Субъектам с этой ролью не нужно использовать JWT, вместо этого им следует использовать учетные данные приложения по умолчанию. Игнорирует пользовательские утверждения JWT. Ограничьте использование этой роли доверенными средами, такими как ваш бэкэнд-сервер.

Доставка двигателей для автопарка Читатель автопарка

roles/fleetengine.deliveryFleetReader

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

Доставка двигателей автопарка. Ненадежный пользователь-водитель.

roles/fleetengine.deliveryUntrustedDriver

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

Примечание: Под «ненадежным» понимается устройство водителя, которое не управляется корпоративным ИТ-отделом, а предоставлено самим водителем и, как правило, не имеет соответствующих средств обеспечения ИТ-безопасности. Организациям, использующим политику «используй собственное устройство», следует отдать предпочтение этому варианту и полагаться только на мобильное приложение для отправки обновлений местоположения транспортного средства в Fleet Engine. Все остальные взаимодействия должны осуществляться с ваших внутренних серверов.

Доставка двигателей для автопарка Потребитель Пользователь

roles/fleetengine.deliveryConsumer

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

Fleet Engine Delivery Trusted Driver User

roles/fleetengine.deliveryTrustedDriver

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

Примечание: Под «доверенным» понимается устройство водителя, управляемое корпоративным ИТ-отделом и имеющее соответствующие средства защиты. Организации, предоставляющие такие устройства, могут интегрировать взаимодействие с Fleet Engine в мобильное приложение.

Как использовать роли IAM и служебные учетные записи с Fleet Engine

Для использования служебных учетных записей для аутентификации и авторизации в Fleet Engine выполните следующие общие шаги:

  1. Создайте учетные записи служб в консоли Google Cloud для каждой необходимой вам роли. Учетные записи служб необходимы для аутентификации водителей, потребителей, приложений и веб-сайтов мониторинга и управления автопарком — любого программного обеспечения, которому необходим доступ к данным Fleet Engine. Программное обеспечение, которому требуются одинаковые разрешения, может использовать одну и ту же учетную запись службы.

  2. Назначьте роль политики IAM для Fleet Engine каждой учетной записи службы. Выберите роль политики IAM, специфичную для Fleet Engine, которая предоставляет соответствующие разрешения на доступ или обновление ваших данных в Fleet Engine.

  3. Используйте соответствующие учетные записи служб в ваших приложениях и программном обеспечении для аутентификации их подключения к Fleet Engine и авторизации доступа к ресурсам, предоставленного назначенной ролью.

Подробную информацию о том, как роли учетных записей служб вписываются в систему безопасности Fleet Engine, см. в разделе «Обзор безопасности» . Полное объяснение ролей учетных записей служб см. в разделе «Понимание ролей IAM» в документации Google Cloud.

Что дальше?