IAM 設定和服務帳戶角色

正確設定身分與存取權管理 (IAM) 是 Fleet Engine 系統安全性和身分管理的必要條件。使用 IAM 角色,針對不同的作業和資料自訂存取權,以滿足駕駛人、消費者和車隊營運商的需求。

什麼是服務帳戶和 IAM 角色?

您可以在 Google Cloud 控制台中設定服務帳戶,以便驗證並授權存取 Fleet Engine 中的資料。Fleet Engine 有一組預先決定的 IAM 角色,可指派給服務帳戶,藉此決定該帳戶可存取哪些資料。詳情請參閱 Google Cloud 說明文件中的「服務帳戶總覽」。

Fleet Engine 會使用 IAM 角色和政策,管理 Fleet Engine API 方法和資源的授權。詳情請參閱 Google Cloud 說明文件中的「角色總覽」。請僅使用下列各節所述的 Fleet Engine 服務帳戶角色。

如要進一步瞭解如何授予 IAM 角色,請參閱「使用 Google Cloud 控制台授予 IAM 角色」。

Fleet Engine 服務帳戶角色

您為 Fleet Engine 安裝作業選擇的 Mobility 服務,會決定所包含的角色和權限。

以下角色說明權限與 Fleet Engine 角色的運作方式:

  • ondemandAdmindeliveryAdmin 角色可執行 Fleet Engine 中的所有作業。請僅在可信任的環境中使用這些角色,例如後端伺服器和 Fleet Engine 之間的通訊。

  • driverSdkUserconsumerSdkUser 角色僅可取得指派行程的詳細資料,以及更新或接收車輛位置。這類角色通常用於信任度較低的環境中,例如駕駛員、消費者或監控應用程式。

下表說明隨選行程和排定任務的角色和權限。

隨選行程

角色 權限

Fleet Engine On-demand 管理員

roles/fleetengine.ondemandAdmin

可授予所有車輛和行程資源的讀寫權限。具有此角色的使用者不必使用 JWT,應盡可能使用應用程式預設憑證。這個角色會忽略自訂 JWT 權利要求。請將這個角色的使用權限限制在後端伺服器等信任環境。

Fleet Engine 推動者 SDK 使用者

roles/fleetengine.driverSdkUser

更新車輛位置和路線,並擷取車輛和行程相關資訊。使用透過此角色建立的自訂宣告,搭配 JWT 驗證和授權共乘或外送服務的駕駛應用程式。

Fleet Engine 用戶 SDK 使用者

roles/fleetengine.consumerSdkUser

搜尋車輛,並擷取車輛和行程的相關資訊。使用 JWT 搭配透過此角色建立的自訂宣告,用於共乘或外送的消費者應用程式。

排定的工作

角色 權限

Fleet Engine Delivery 管理員

roles/fleetengine.deliveryAdmin

可讀取及寫入提交資源。具有此角色的使用者不必使用 JWT,而應改用應用程式預設憑證。忽略自訂 JWT 權利要求。請將此角色的使用權限限制在後端伺服器等信任環境。

Fleet Engine Delivery 的 Fleet Reader

roles/fleetengine.deliveryFleetReader

授予讀取運送車輛和工作,以及使用追蹤 ID 搜尋工作的權限。具有此角色的服務帳戶所核發的權杖,通常會透過運送車隊操作員的網路瀏覽器使用。

不受信任的 Fleet Engine Delivery 駕駛員使用者

roles/fleetengine.deliveryUntrustedDriver

授予更新運送車輛位置的權限。具有此角色的服務帳戶所發出的權杖通常會用於提交服務的驅動程式行動裝置。

注意:不受信任的意思是指駕駛人的裝置並非由公司 IT 部門管理,而是由駕駛人提供,且通常沒有適當的 IT 安全控管機制。採用自備裝置政策的機構應選擇這個角色的安全性,並僅透過行動應用程式將車輛位置更新內容傳送至 Fleet Engine。所有其他互動都應由後端伺服器發起。

Fleet Engine Delivery 一般使用者

roles/fleetengine.deliveryConsumer

授予使用追蹤 ID 搜尋工作,以及讀取 (但不更新) 工作資訊的權限。具有此角色的服務帳戶所發出的權杖,通常會在提交消費者的網路瀏覽器中使用。

Fleet Engine Delivery 受信任驅動者

roles/fleetengine.deliveryTrustedDriver

授予權限,可建立及更新運送車輛和工作,包括更新運送車輛位置和工作狀態或結果。具有此角色的服務帳戶所發出的權杖,通常會用於提交驅動程式的行動裝置或後端伺服器。

注意:所謂「受信任」是指駕駛人的裝置由公司 IT 部門管理,且具備適當的安全控制項。提供這些裝置的機構可以選擇將 Fleet Engine 互動整合至行動應用程式。

如何搭配使用 Fleet Engine 的 IAM 角色和服務帳戶

如要使用服務帳戶在 Fleet Engine 中進行驗證和授權,請按照下列一般步驟操作:

  1. 針對您需要的每個角色,在 Google Cloud 控制台中建立服務帳戶。您需要服務帳戶才能驗證駕駛人、消費者、車隊監控和車隊管理應用程式和網站,也就是任何需要存取 Fleet Engine 資料的軟體。需要相同權限的軟體可以使用相同的服務帳戶。

  2. 為每個服務帳戶指派 Fleet Engine IAM 政策角色。選取特定於 Fleet Engine 的 IAM 政策角色,為使用者提供適當的權限,讓他們能夠存取或更新 Fleet Engine 中的資料。

  3. 在應用程式和軟體中使用適當的服務帳戶,驗證與 Fleet Engine 的連線,並授權存取已指派角色所授予的資源。

如要進一步瞭解服務帳戶角色如何與 Fleet Engine 安全性配合運作,請參閱安全性總覽。如要進一步瞭解服務帳戶角色,請參閱 Google Cloud 說明文件中的「瞭解身分與存取權管理角色」。

後續步驟

  • 請參閱 JSON Web Token 相關說明,瞭解 Fleet Engine 中的使用方式。
  • 如需 Fleet Engine 安全性總覽,請參閱安全性總覽
  • 如需 Google Cloud 控制台服務帳戶角色的完整說明,請參閱「瞭解 IAM 角色