Configuração do IAM e papéis da conta de serviço

A configuração correta do IAM é um pré-requisito para o gerenciamento de segurança e identidade do sistema do Fleet Engine. Use papéis do IAM para personalizar o acesso a diferentes operações e dados para atender aos requisitos de motoristas, consumidores e operadores de frota.

O que são contas de serviço e papéis do IAM?

Configure contas de serviço no console do Google Cloud para autenticar e autorizar o acesso aos dados no Fleet Engine. O Fleet Engine tem um conjunto de papéis predeterminados do IAM que você atribui a uma conta de serviço para determinar a quais dados essa conta tem acesso. Para mais detalhes, consulte Visão geral das contas de serviço na documentação do Google Cloud.

O Fleet Engine usa papéis e políticas do IAM para gerenciar a autorização de métodos e recursos da API Fleet Engine. Para mais informações, consulte Visão geral dos papéis na documentação do Google Cloud. Use apenas os papéis da conta de serviço do Fleet Engine descritos nas seções a seguir.

Para mais informações gerais sobre como conceder papéis do IAM, consulte Conceder um papel do IAM usando o console do Google Cloud.

Papéis da conta de serviço do Fleet Engine

O serviço de mobilidade escolhido para a instalação do Fleet Engine determina os papéis e as permissões incluídos.

Os papéis a seguir ilustram como as permissões funcionam com os papéis do Fleet Engine:

  • Os papéis ondemandAdmin e deliveryAdmin podem realizar todas as operações no Fleet Engine. Use esses papéis apenas em ambientes confiáveis, como comunicações entre o servidor de back-end e o Fleet Engine.

  • Os papéis driverSdkUser e consumerSdkUser só podem receber detalhes de viagens atribuídas e atualizar ou receber a localização do veículo. Esses tipos de papéis normalmente são usados por clientes em ambientes de baixa confiança, como apps de motorista, consumidor ou monitoramento.

Os papéis e as permissões concedidos para viagens on demand e tarefas programadas são descritos nas tabelas a seguir.

Viagens on demand

Papel Permissão

Administrador on-demand do Fleet Engine

roles/fleetengine.ondemandAdmin

Concede permissão de leitura, gravação e exclusão para todos os recursos de veículos e viagens. Os principais com esse papel não precisam usar JWTs e devem usar o Application Default Credentials sempre que possível. Esse papel ignora as declarações personalizadas do JWT. Restrinja o uso desse papel a ambientes confiáveis, como seu servidor de back-end.

Usuário do SDK do driver Fleet Engine

roles/fleetengine.driverSdkUser

Atualize os locais e trajetos dos veículos e recupere informações sobre veículos e viagens. Use JWTs com declarações personalizadas criadas com esse papel para autenticação e autorização de apps de motorista para caronas ou entregas.

Usuário do SDK do consumidor do Fleet Engine

roles/fleetengine.consumerSdkUser

Pesquisar veículos e recuperar informações sobre veículos e viagens. Use JWTs com declarações personalizadas criadas com esse papel para apps de transporte por aplicativo ou entrega para o consumidor .

Tarefas agendadas

Papel Permissão

Administrador de entrega do Fleet Engine

roles/fleetengine.deliveryAdmin

Concede permissão de leitura, gravação e exclusão para recursos de entrega. Os principais com esse papel não precisam usar JWTs e devem usar o Application Default Credentials. Ignora as declarações personalizadas do JWT. Restrinja o uso desse papel a ambientes confiáveis, como seu servidor de back-end.

Leitor de frota de entrega do Fleet Engine

roles/fleetengine.deliveryFleetReader

Concede permissão para ler veículos e tarefas de entrega e pesquisar tarefas usando um ID de rastreamento. Os tokens emitidos por uma conta de serviço com esse papel normalmente são usados no navegador da Web de um operador de frota de entrega.

Usuário de driver não confiável de entrega do Fleet Engine

roles/fleetengine.deliveryUntrustedDriver

Concede permissão para atualizar o local do veículo de entrega. Os tokens emitidos por uma conta de serviço com esse papel normalmente são usados no dispositivo móvel do motorista de entrega.

Observação: "não confiável" se refere a um dispositivo do motorista que não é gerenciado pela TI corporativa, mas fornecido pelo motorista e, normalmente, sem os controles de segurança de TI adequados. As organizações com políticas de traga seu próprio dispositivo devem optar pela segurança desse papel e usar apenas o app para dispositivos móveis para enviar atualizações de localização do veículo ao Fleet Engine. Todas as outras interações precisam ser originadas dos servidores de back-end.

Usuário consumidor de entrega do Fleet Engine

roles/fleetengine.deliveryConsumer

Concede permissão para pesquisar tarefas usando um ID de rastreamento e ler, mas não atualizar, as informações da tarefa. Os tokens emitidos por uma conta de serviço com esse papel geralmente são usados no navegador da Web de um consumidor de entrega.

Usuário motorista confiável de entrega do Fleet Engine

roles/fleetengine.deliveryTrustedDriver

Concede permissão para criar e atualizar veículos e tarefas de entrega, incluindo a atualização do local do veículo de entrega e do status ou resultado da tarefa. Os tokens emitidos por uma conta de serviço com esse papel geralmente são usados nos dispositivos móveis do motorista de entrega ou nos servidores de back-end.

Observação: "confiável" se refere ao dispositivo de um motorista gerenciado pela TI corporativa que tem controles de segurança adequados. As organizações que fornecem esses dispositivos podem optar por integrar as interações do Fleet Engine ao app para dispositivos móveis.

Como usar papéis do IAM e contas de serviço com o Fleet Engine

Para usar contas de serviço para autenticação e autorização no Fleet Engine, siga estas etapas gerais:

  1. Crie contas de serviço no console do Google Cloud para cada papel necessário. Você precisa de contas de serviço para autenticar aplicativos e sites de motoristas, consumidores, monitoramento de frotas e gerenciamento de frotas, ou seja, qualquer software que precise de acesso aos dados do Fleet Engine. Os softwares que precisam das mesmas permissões podem usar a mesma conta de serviço.

  2. Atribua um papel de política do IAM do Fleet Engine a cada conta de serviço. Selecione o papel da política do IAM específico do Fleet Engine que fornece as permissões adequadas para acessar ou atualizar seus dados no Fleet Engine.

  3. Use as contas de serviço adequadas nos seus apps e softwares para autenticar a conexão com o Fleet Engine e autorizar o acesso aos recursos concedidos pelo papel atribuído.

Para detalhes sobre como os papéis de conta de serviço se encaixam na segurança do Fleet Engine, consulte Visão geral da segurança. Para uma explicação completa sobre os papéis de conta de serviço, consulte Noções básicas sobre papéis do IAM na documentação do Google Cloud.

A seguir