Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
W tym dokumencie wyjaśniamy, jak Fleet Engine zabezpiecza wymianę informacji między 3 głównymi środowiskami systemu Fleet Engine: serwerem backendu, serwerem Fleet Engine oraz aplikacjami i witrynami klientów.
Fleet Engine zarządza bezpieczeństwem na 2 podstawowe sposoby, zgodnie z zasadą jak najmniejszych uprawnień:
Domyślne dane logowania aplikacji (ADC): w środowiskach o wysokich uprawnieniach, takich jak komunikacja między serwerami. Używany, gdy serwer backendu tworzy pojazdy i przejazdy oraz zarządza nimi w Fleet Engine. Szczegółowe informacje znajdziesz w artykule Domyślne dane logowania aplikacji.
Tokeny internetowe JSON (JWT): w środowiskach o niskim poziomie zaufania, takich jak aplikacje klienckie działające na smartfonach i w przeglądarkach. Używane do wykonywania operacji o niższych uprawnieniach, takich jak aktualizowanie lokalizacji pojazdu w Fleet Engine.
Tokeny JWT wymagane w środowiskach o niskim poziomie zaufania są generowane i wydawane przez serwer backendu, aby chronić tajne klucze kont usługi. Zawierają one dodatkowe deklaracje specyficzne dla Fleet Engine. Więcej informacji znajdziesz w artykule Tokeny sieciowe JSON.
Jeśli na przykład masz aplikację dla kierowców, kierowcy uzyskują dostęp do danych z Fleet Engine za jej pomocą. Aplikacja jest uwierzytelniana za pomocą tokenów JWT, które otrzymuje z serwera backendu. Dołączone roszczenia JWT wraz z rolą konta usługi określają, do których części systemu aplikacja kierowcy ma dostęp i co może robić. Takie podejście ogranicza dostęp tylko do danych wymaganych do wykonania zadań związanych z przejazdami.
Fleet Engine korzysta z tych metod zabezpieczeń, aby zapewnić:
Uwierzytelnianie weryfikuje tożsamość podmiotu wysyłającego żądanie.
Fleet Engine używa ADC w środowiskach o wysokim poziomie zaufania i JWT w środowiskach o niskim poziomie zaufania.
Autoryzacja określa, do których zasobów ma dostęp uwierzytelniona jednostka. Fleet Engine używa kont usług z rolami Google Cloud IAM oraz roszczeń JWT, które zapewniają, że uwierzytelnione podmioty mają uprawnienia do wyświetlania lub zmieniania danych, o które proszą.
Konfiguracja zabezpieczeń serwera i klienta
Aby włączyć zabezpieczenia w Fleet Engine, skonfiguruj wymagane konta i zabezpieczenia na serwerze backendu oraz w aplikacjach klienckich i witrynach.
Poniższy diagram przedstawia omówienie kroków, które należy wykonać, aby skonfigurować zabezpieczenia na serwerze backendu i w aplikacjach klienckich.
Więcej informacji znajdziesz w sekcjach poniżej.
Konfiguracja zabezpieczeń serwera backendu
Administrator floty musi wykonać te czynności:
Tworzenie i konfigurowanie kont usługi:
W konsoli Google Cloud utwórz konta usługi.
Przypisz do kont usługi konkretne role uprawnień.
Skonfiguruj serwer backendu za pomocą utworzonych kont usługi. Więcej informacji znajdziesz w sekcji Role kont usługi.
Skonfiguruj bezpieczną komunikację z Fleet Engine (ADC): skonfiguruj backend tak, aby komunikował się z instancją Fleet Engine za pomocą domyślnych danych logowania aplikacji z odpowiednim kontem usługi *Admin. Więcej informacji znajdziesz w artykule Domyślne uwierzytelnianie aplikacji.
Skonfiguruj bezpieczną komunikację z aplikacjami klienckimi (JWT): utwórz generator tokenów sieciowych JSON, aby tworzyć tokeny JWT z odpowiednimi deklaracjami dla aplikacji klienckich i witryn monitorujących. Szczegółowe informacje znajdziesz w artykule Wystawianie tokenów sieciowych JSON.
Konfiguracja zabezpieczeń aplikacji
Deweloperzy aplikacji muszą uwzględnić w aplikacjach klienckich lub witrynach sposób pobierania tokenów sieciowych JSON generowanych przez serwer backendu i używać ich do bezpiecznej komunikacji z Fleet Engine. Szczegółowe informacje znajdziesz w instrukcjach konfiguracji w dokumentacji Driver Experience lub Consumer Experience dotyczącej aplikacji, których potrzebujesz.
Proces zabezpieczania aplikacji serwera i klienta
Poniższy diagram sekwencji przedstawia proces uwierzytelniania i autoryzacji aplikacji serwera i klienta za pomocą Fleet Engine z użyciem ADC na serwerze backendu i JWT w aplikacjach klienckich i witrynach.
Serwer backendu tworzy pojazdy oraz przejazdy lub zadania w Fleet Engine.
Serwer backendu przypisuje przejazd lub zadanie do pojazdu: gdy aplikacja kierowcy jest aktywna, pobiera przypisanie.
Serwer backendu: podpisuje i wydaje token JWT dla odpowiedniego konta usługi z odpowiednią rolą uprawnień dla przypisanego zadania lub przejazdu.
Aplikacja kliencka: aplikacja kliencka używa otrzymanego tokena JWT do wysyłania do Fleet Engine aktualizacji lokalizacji pojazdu.
[null,null,["Ostatnia aktualizacja: 2025-08-31 UTC."],[[["\u003cp\u003eFleet Engine secures communication between your backend server, the Fleet Engine server, and your client applications using Application Default Credentials (ADC) and JSON Web Tokens (JWT).\u003c/p\u003e\n"],["\u003cp\u003eADC is used for high-privilege communication between your backend server and Fleet Engine, while JWT is used for low-trust environments like client applications.\u003c/p\u003e\n"],["\u003cp\u003eYour backend server generates and issues JWTs to client applications, limiting access based on JWT claims and service account roles for enhanced security.\u003c/p\u003e\n"],["\u003cp\u003eFleet Engine employs authentication to verify the identity of the requesting entity and authorization to control access to specific resources based on defined roles and claims.\u003c/p\u003e\n"],["\u003cp\u003eTo ensure security, you need to configure service accounts, set up ADC for backend communication, implement JWT generation on your server, and enable client applications to fetch and use JWTs for secure interaction with Fleet Engine.\u003c/p\u003e\n"]]],[],null,["# Security overview\n\nThis document explains how Fleet engine secures information exchange between the\nthree primary environments of your Fleet Engine system: your backend server,\nyour Fleet Engine server, and your client applications and websites.\n\nFleet Engine manages security in two fundamental ways, using the principle of\nleast privilege:\n\n- **Application Default Credentials (ADC)** : For high-privileged environments\n such as server to server communications. Used when your backend server is\n creating vehicles and trips and managing them in Fleet Engine. For details,\n see [Application Default Credentials](https://cloud.google.com/docs/authentication/provide-credentials-adc).\n\n | **Note:** While you can use JWTs for server-to-server communication, Google recommends you use ADC.\n- **JSON Web Tokens (JWT)**: For low-trust environments like client\n applications running on smartphones and browsers. Used to accomplish\n lower-privileged operations, such as updating\n vehicle location in Fleet Engine.\n\n The JWTs required by low-trust environments are generated and issued by your\n backend server to safeguard service account secret keys, and include\n additional claims specific to Fleet Engine. For details, see [JSON Web\n Tokens](/maps/documentation/mobility/fleet-engine/essentials/set-up-fleet/jwt).\n\n For example, if you have a driver app, drivers access data from Fleet Engine\n through the app. The app is authenticated using JWTs it gets from your\n backend server. The included JWT claims, along with the service account\n role, determine what parts of your system the driver app has access to and\n what it can do. This approach limits access to only the data required\n to complete their driving assignments.\n\nFleet Engine uses these security approaches to provide the following:\n\n- *Authentication* verifies the identity of the entity making the request.\n Fleet Engine uses ADC for high-trust environments and JWT for low-trust\n environments.\n\n- *Authorization* specifies which resources an authenticated entity has access\n to. Fleet Engine uses service accounts with Google Cloud IAM roles, plus JWT\n claims that ensure authenticated entities have permissions to see or change\n the data they're requesting.\n\nServer and client security setup\n--------------------------------\n\nTo enable security with Fleet Engine, set up the required accounts\nand security on your backend server and on your client applications and\nwebsites.\n\nThe following diagram shows an overview of the steps to set up security on your\nbackend server and client applications.\n\nFor more details, see the following sections.\n\n### Backend server security setup\n\nA fleet administrator needs to follow these steps:\n\n1. **Create and configure service accounts**:\n\n 1. In the Google Cloud Console, create service accounts.\n\n 2. Assign specific IAM roles to the service accounts.\n\n 3. Configure your backend server with the created service accounts. For\n details, see [Service account roles](/maps/documentation/mobility/fleet-engine/essentials/set-up-fleet/service-accounts).\n\n2. **Configure secure communication with Fleet Engine (ADC)** : Configure your\n backend to communicate with your Fleet Engine instance using Application\n Default Credentials with the appropriate \\*Admin service account. For\n details, See\n [Application Default Credentials](https://cloud.google.com/docs/authentication/provide-credentials-adc).\n\n3. **Configure secure communication with client apps (JWT)** : Create a JSON Web\n Token generator to create JWTs with appropriate claims for client\n applications and monitoring websites. For details, see\n [Issue JSON Web Tokens](/maps/documentation/mobility/fleet-engine/essentials/set-up-fleet/issue-jwt).\n\n### Application security setup\n\nApplication developers need to include a way to fetch JSON Web Tokens generated\nby your backend server in your client apps or websites, and use them to securely\ncommunicate with Fleet Engine. For details, see the setup instructions in the\n[Driver Experience](/maps/documentation/mobility/driver-sdk) or [Consumer\nExperience](/maps/documentation/mobility/journey-sharing) documentation for the\napplications you need.\n\nServer and client app security flow\n-----------------------------------\n\nThe following sequence diagram demonstrates the server and client app\nauthentication and authorization flow with Fleet Engine using ADC with the\nbackend server and JWTs with the client applications and websites.\n\n- **Your backend server creates vehicles and trips or tasks in Fleet Engine**.\n\n- **Your backend server a trip or task to a vehicle**:\n The driver app, when active, retrieves the assignment.\n\n- **Your backend server**: Signs and issues a JWT for the respective service\n account with the appropriate IAM role for the assigned task or trip.\n\n- **The client app**: The client app uses the received JWT to send vehicle\n location updates to Fleet Engine.\n\nWhat's next\n-----------\n\n- Create your [Fleet Engine project](/maps/documentation/mobility/fleet-engine/essentials/set-up-fleet/create-project).\n- Learn how to [Issue JSON Web Tokens](/maps/documentation/mobility/fleet-engine/essentials/set-up-fleet/issue-jwt) from your server.\n- Learn more about [Service account roles](/maps/documentation/mobility/fleet-engine/essentials/set-up-fleet/service-accounts).\n- Learn more about [JWTs](/maps/documentation/mobility/fleet-engine/essentials/set-up-fleet/jwt)."]]