正確設定 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 安裝作業選擇的接送服務會決定包含的角色和權限。
下列角色說明權限如何搭配 Fleet Engine 角色運作:
ondemandAdmin 和 deliveryAdmin 角色可以執行 Fleet Engine 中的所有作業。請僅在信任的環境中使用這些角色,例如後端伺服器與 Fleet Engine 之間的通訊。
driverSdkUser 和 consumerSdkUser 角色只能取得已指派行程的詳細資料,以及更新或接收車輛位置資訊。這類角色通常由低信任環境中的用戶使用,例如駕駛人、消費者或監控應用程式。
下表說明隨選行程和排定工作獲派的角色和權限。
隨選行程
| 角色 | 權限 |
|---|---|
Fleet Engine On-demand 管理員
|
授予所有車輛和行程資源的讀取、寫入和刪除權限。具有這個角色的主體不需要使用 JWT,應盡可能改用應用程式預設憑證。這個角色會忽略自訂 JWT 聲明。請僅在受信任的環境 (例如後端伺服器) 中使用這個角色。 |
Fleet Engine 推動者 SDK 使用者
|
更新車輛位置和路線,並擷取車輛和行程的相關資訊。使用透過這個角色建立的自訂聲明 JWT,從共乘或外送的駕駛人應用程式進行驗證和授權。 |
Fleet Engine 用戶 SDK 使用者
|
搜尋車輛,並擷取車輛和行程的相關資訊。使用透過這個角色建立的自訂聲明 JWT,適用於共乘或外送服務的消費者應用程式。 |
排定的任務
| 角色 | 權限 |
|---|---|
Fleet Engine Delivery 管理員
|
授予遞送資源的讀取、寫入和刪除權限。 具有這個角色的主體不需要使用 JWT,而是應使用應用程式預設憑證。忽略自訂 JWT 聲明。請將這個角色的使用權限限制在後端伺服器等信任環境。 |
Fleet Engine Delivery 的 Fleet 讀取者
|
可授予讀取送貨車輛和工作,以及使用追蹤 ID 搜尋工作的權限。服務帳戶核發的權杖通常會透過外送車隊營運商的網頁瀏覽器使用, |
不受信任的 Fleet Engine Delivery 駕駛員使用者
|
授予更新送貨車輛位置的權限。服務帳戶核發的權杖 (具備這項角色) 通常會用於送貨司機的行動裝置。 注意:所謂「不受信任」,是指駕駛人的裝置並非由公司 IT 部門管理,而是由駕駛人提供,通常沒有適當的 IT 安全控管措施。如果機構採用「自攜裝置」政策,應選擇這個角色,並只透過行動應用程式將車輛位置更新資訊傳送至 Fleet Engine,確保安全無虞。所有其他互動都應來自後端伺服器。 |
Fleet Engine Delivery 一般使用者
|
授予使用追蹤 ID 搜尋工作的權限,以及讀取 (但無法更新) 工作資訊的權限。服務帳戶核發的權杖通常會透過這項角色,從遞送消費者使用的網頁瀏覽器存取。 |
Fleet Engine Delivery 受信任驅動者
|
授予建立及更新送貨車輛和工作項目的權限,包括更新送貨車輛位置和工作狀態或結果。服務帳戶核發的權杖通常會透過外送人員的行動裝置或後端伺服器使用。 注意:所謂「信任」是指由公司 IT 管理,且具備適當安全控管機制的司機裝置。提供這些裝置的機構可以選擇將 Fleet Engine 互動功能整合到行動應用程式中。 |
如何搭配 Fleet Engine 使用 IAM 角色和服務帳戶
如要在 Fleet Engine 中使用服務帳戶進行驗證和授權,請按照下列一般步驟操作:
在 Google Cloud 控制台中建立服務帳戶,並指派所需角色。您需要服務帳戶,才能驗證駕駛人、消費者、車隊監控和車隊管理應用程式和網站,以及任何需要存取 Fleet Engine 資料的軟體。如果軟體需要相同的權限,可以使用同一個服務帳戶。
為每個服務帳戶指派 Fleet Engine IAM 政策角色。選取 Fleet Engine 專屬的 IAM 政策角色,提供適當的權限,以便存取或更新 Fleet Engine 中的資料。
在應用程式和軟體中使用適當的服務帳戶,驗證與 Fleet Engine 的連線,並授權存取指派角色授予的資源。
如要進一步瞭解服務帳戶角色如何融入 Fleet Engine 安全性,請參閱「安全性總覽」。如要完整瞭解服務帳戶角色,請參閱 Google Cloud 說明文件中的「瞭解 IAM 角色」。
後續步驟
- 請參閱 JSON 網頁符記,瞭解如何在 Fleet Engine 中使用這類符記。
- 如要瞭解 Fleet Engine 安全性總覽,請參閱「安全性總覽」。
- 如要完整瞭解 Google Cloud 控制台服務帳戶角色,請參閱「瞭解 IAM 角色」一文。