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

Configurar o IAM corretamente é 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 operações e dados diferentes para atender aos requisitos de motoristas, consumidores e operadores de frota.

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

Você configura 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 do IAM predeterminados que você atribui a uma conta de serviço para determinar a quais dados essa conta tem acesso. Para mais detalhes, consulte a 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 do Fleet Engine. Para mais informações, consulte Visão geral dos papéis na documentação do Google Cloud. Use apenas as funções da conta de serviço do Fleet Engine descritas 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 as funções e permissões incluídas.

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

  • Os papéis ondemandAdmin e deliveryAdmin podem realizar todas as operações no Fleet Engine. Use essas funções 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ó têm permissão para acessar detalhes de viagens atribuídas e atualizar ou receber a localização do veículo. Esses tipos de papéis normalmente 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 sob demanda e tarefas programadas são descritos nas tabelas a seguir.

Viagens sob demanda

Papel Permissão

Administrador sob demanda do Fleet Engine

roles/fleetengine.ondemandAdmin

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

Usuário do SDK do driver Fleet Engine

roles/fleetengine.driverSdkUser

Atualize os locais e trajetos de veículos e recupere informações sobre veículos e viagens. Use JWTs com declarações personalizadas criadas com essa função para autenticação e autorização de apps de motorista para transporte ou entrega.

Usuário do SDK do consumidor do Fleet Engine

roles/fleetengine.consumerSdkUser

Pesquise veículos e recupere informações sobre veículos e viagens. Use JWTs com declarações personalizadas criadas com essa função para apps de consumo para compartilhamento de viagens ou entrega.

Tarefas agendadas

Papel Permissão

Administrador de entrega do Fleet Engine

roles/fleetengine.deliveryAdmin

Concede permissão de leitura e gravação para recursos de entrega. Os principais usuários com essa função não precisam usar JWTs, e sim credenciais padrão do aplicativo. Ignora declarações JWT personalizadas. Restrinja o uso dessa função a ambientes confiáveis, como o servidor de back-end.

Leitor de frota do Fleet Engine

roles/fleetengine.deliveryFleetReader

Concede permissão para ler veículos de entrega e tarefas e pesquisar tarefas usando um ID de rastreamento. Os tokens emitidos por uma conta de serviço com essa função geralmente 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 essa função geralmente 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 controles de segurança de TI adequados. As organizações com políticas de "traga seu próprio dispositivo" precisam optar pela segurança dessa função e confiar apenas no 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 acompanhamento e para 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 de entrega e tarefas, 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 essa função 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 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 função necessária. Você precisa de contas de serviço para autenticar motoristas, consumidores, aplicativos de monitoramento e gerenciamento de frotas e sites, ou seja, qualquer software que precise de acesso aos dados do Fleet Engine. O software que precisa das mesmas permissões pode usar a mesma conta de serviço.

  2. Atribua um papel de política de 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 apropriadas nos apps e no software para autenticar a conexão deles com o Fleet Engine e autorizar o acesso aos recursos concedidos pelo papel atribuído.

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

A seguir