Правильная настройка IAM – обязательное условие для обеспечения безопасности и управления идентификацией в системе Fleet Engine. Используйте роли IAM, чтобы настроить доступ к различным операциям и данным в соответствии с требованиями водителей, потребителей и операторов автопарка.
Что такое сервисные аккаунты и роли IAM
Вы настраиваете сервисные аккаунты в Google Cloud Console для аутентификации и авторизации доступа к данным в Fleet Engine. В Fleet Engine есть набор предопределенных ролей IAM, которые вы назначаете сервисному аккаунту, чтобы определить, к каким данным у него есть доступ. Подробнее о сервисных аккаунтах в документации Google Cloud.
Fleet Engine использует роли и правила IAM для управления авторизацией методов и ресурсов Fleet Engine API. Подробнее о ролях рассказывается в документации по Google Cloud. Используйте только роли сервисного аккаунта Fleet Engine, описанные в следующих разделах.
Общую информацию о предоставлении ролей IAM можно найти в статье о том, как назначить роль IAM в консоли Google Cloud.
Роли сервисного аккаунта Fleet Engine
От сервиса Mobility, выбранного для установки Fleet Engine, зависят роли и разрешения, которые будут включены.
Ниже приведены примеры того, как разрешения работают с ролями Fleet Engine.
Роли ondemandAdmin и deliveryAdmin могут выполнять все операции в Fleet Engine. Используйте эти роли только в доверенных средах, например для обмена данными между вашим бэкенд-сервером и Fleet Engine.
Роли driverSdkUser и consumerSdkUser могут только получать информацию о назначенных поездках, а также обновлять или получать данные о местоположении автомобиля. Такие роли обычно используются клиентами в средах с низким уровнем доверия, например в приложениях для водителей, потребителей или мониторинга.
Роли и разрешения, предоставляемые для рейсов по запросу и запланированных задач, описаны в таблицах ниже.
Поездки по запросу
| Роль | Разрешение |
|---|---|
Администратор Fleet Engine по запросу
|
Предоставляет разрешение на чтение, запись и удаление всех ресурсов, связанных с транспортными средствами и поездками. Субъектам с этой ролью не нужно использовать JWT, и вместо этого они должны по возможности использовать Application Default Credentials. Эта роль игнорирует специальные утверждения JWT. Используйте эту роль только в доверенных средах, например на внутреннем сервере. |
Пользователь Fleet Engine Driver SDK
|
Обновляйте местоположение и маршруты транспортных средств, а также получайте информацию о них и поездках. Используйте JWT с особыми утверждениями, созданными с помощью этой роли, для аутентификации и авторизации из приложений для водителей, занимающихся совместными поездками или доставкой. |
Пользователь Fleet Engine Consumer SDK
|
Поиск транспортных средств и получение информации о них и поездках. Используйте JWT с утверждениями, созданными с помощью этой роли, для приложений для пользователей, предназначенных для совместных поездок или доставки . |
Запланированные задачи
| Роль | Разрешение |
|---|---|
Администратор доставки Fleet Engine
|
Предоставляет разрешения на чтение, запись и удаление ресурсов доставки. Субъектам с этой ролью не нужно использовать JWT. Вместо этого они должны использовать Application Default Credentials. Игнорирует пользовательские утверждения JWT. Ограничьте использование этой роли доверенными средами, например внутренним сервером. |
Читатель автопарка доставки Fleet Engine
|
Предоставляет разрешение на чтение информации о транспортных средствах и задачах, а также на поиск задач по идентификатору отслеживания. Токены, выпущенные сервисным аккаунтом с этой ролью, обычно используются в веб-браузере оператора автопарка. |
Fleet Engine Delivery Untrusted Driver User (Ненадежный водитель Fleet Engine Delivery)
|
Предоставляет разрешение на обновление местоположения транспортного средства. Токены, выпущенные сервисным аккаунтом с этой ролью, обычно используются на мобильном устройстве водителя. Примечание. Ненадежным считается устройство водителя, которым не управляет корпоративный ИТ-отдел. Обычно оно предоставляется водителем и не имеет надлежащих средств ИТ-безопасности. Организациям, в которых действует политика использования собственных устройств, следует выбрать эту роль и полагаться только на мобильное приложение для отправки обновлений местоположения транспортных средств в Fleet Engine. Все остальные взаимодействия должны происходить через ваши серверы. |
Потребитель Fleet Engine Delivery
|
Предоставляет разрешение на поиск задач по идентификатору отслеживания и на чтение, но не обновление информации о задачах. Токены, выпущенные сервисным аккаунтом с этой ролью, обычно используются из веб-браузера потребителя контента. |
Доверенный водитель Fleet Engine Delivery
|
Предоставляет разрешение на создание и обновление транспортных средств доставки и задач, включая обновление местоположения транспортного средства доставки и статуса или результата задачи. Токены, выпущенные сервисным аккаунтом с этой ролью, обычно используются на мобильных устройствах водителей или на ваших внутренних серверах. Примечание. Под доверенным устройством подразумевается устройство водителя, которым управляет корпоративный ИТ-отдел и на котором установлены необходимые средства защиты. Организации, предоставляющие такие устройства, могут интегрировать взаимодействия с Fleet Engine в мобильное приложение. |
Как использовать роли IAM и сервисные аккаунты с Fleet Engine
Чтобы использовать сервисные аккаунты для аутентификации и авторизации в Fleet Engine, выполните следующие действия:
Создайте сервисные аккаунты в консоли Google Cloud для каждой нужной роли. Сервисные аккаунты нужны для аутентификации приложений и сайтов, используемых водителями, клиентами, а также для мониторинга и управления автопарком, – любого ПО, которому нужен доступ к данным Fleet Engine. Программное обеспечение, которому требуются одинаковые разрешения, может использовать один и тот же сервисный аккаунт.
Назначьте роль политики IAM Fleet Engine каждому сервисному аккаунту. Выберите роль IAM, относящуюся к Fleet Engine, которая предоставляет необходимые разрешения для доступа к данным в Fleet Engine или их обновления.
Используйте подходящие сервисные аккаунты в своих приложениях и программном обеспечении, чтобы аутентифицировать их подключение к Fleet Engine и авторизовать доступ к ресурсам, предоставленным назначенной ролью.
Подробнее о том, как роли сервисных аккаунтов вписываются в систему безопасности Fleet Engine, читайте в обзоре безопасности. Подробную информацию о ролях сервисных аккаунтов можно найти в статье Общие сведения о ролях IAM в документации по Google Cloud.
Дальнейшие действия
- Ознакомьтесь с информацией о веб-токенах JSON, чтобы понять, как они используются в Fleet Engine.
- Общую информацию о безопасности Fleet Engine можно найти в обзоре безопасности.
- Подробную информацию о ролях сервисных аккаунтов в консоли Google Cloud можно найти в статье Роли IAM.