เอกสารนี้อธิบายวิธีที่ Fleet Engine รักษาความปลอดภัยในการแลกเปลี่ยนข้อมูลระหว่างสภาพแวดล้อมหลัก 3 อย่างของระบบ Fleet Engine ได้แก่ เซิร์ฟเวอร์แบ็กเอนด์, เซิร์ฟเวอร์ Fleet Engine รวมถึงแอปพลิเคชันไคลเอ็นต์และเว็บไซต์
Fleet Engine จัดการความปลอดภัยด้วยวิธีพื้นฐาน 2 วิธี โดยใช้หลักการให้สิทธิ์ขั้นต่ำที่สุด ดังนี้
ข้อมูลรับรองเริ่มต้นของแอปพลิเคชัน (ADC): สำหรับสภาพแวดล้อมที่มีสิทธิ์สูง เช่น การสื่อสารระหว่างเซิร์ฟเวอร์กับเซิร์ฟเวอร์ ใช้เมื่อเซิร์ฟเวอร์แบ็กเอนด์สร้างยานพาหนะและการเดินทาง รวมถึงจัดการยานพาหนะและการเดินทางเหล่านั้นใน Fleet Engine โปรดดูรายละเอียดที่หัวข้อข้อมูลรับรองเริ่มต้นของแอปพลิเคชัน
โทเค็นเว็บ JSON (JWT): สำหรับสภาพแวดล้อมที่มีความน่าเชื่อถือต่ำ เช่น แอปพลิเคชันไคลเอ็นต์ที่ทำงานบนสมาร์ทโฟนและเบราว์เซอร์ ใช้เพื่อดำเนินการที่มีสิทธิ์ต่ำกว่า เช่น การอัปเดตตำแหน่งยานพาหนะใน Fleet Engine
JWT ที่สภาพแวดล้อมที่มีความน่าเชื่อถือต่ำต้องการจะสร้างและออกโดยเซิร์ฟเวอร์แบ็กเอนด์เพื่อปกป้องคีย์ลับของบัญชีบริการ และรวมการอ้างสิทธิ์เพิ่มเติมที่เจาะจงสำหรับ Fleet Engine โปรดดูรายละเอียดที่หัวข้อ JSON Web Tokens
ตัวอย่างเช่น หากคุณมีแอปคนขับ คนขับจะเข้าถึงข้อมูลจาก Fleet Engine ผ่านแอป โดยแอปจะได้รับการตรวจสอบสิทธิ์โดยใช้ JWT ที่ได้รับจากเซิร์ฟเวอร์แบ็กเอนด์ การอ้างสิทธิ์ JWT ที่รวมไว้ พร้อมกับบทบาทของบัญชีบริการ จะกำหนดว่าแอปคนขับสามารถเข้าถึงส่วนใดของระบบและทำอะไรได้บ้าง วิธีนี้จะจำกัดการเข้าถึงเฉพาะข้อมูลที่จำเป็นสำหรับการทำงานขับรถให้เสร็จสมบูรณ์
Fleet Engine ใช้วิธีการรักษาความปลอดภัยเหล่านี้เพื่อให้บริการต่อไปนี้
การตรวจสอบสิทธิ์จะยืนยันตัวตนของเอนทิตีที่ส่งคำขอ Fleet Engine ใช้ ADC สำหรับสภาพแวดล้อมที่มีความน่าเชื่อถือสูง และใช้ JWT สำหรับสภาพแวดล้อมที่มีความน่าเชื่อถือต่ำ
การให้สิทธิ์จะระบุทรัพยากรที่เอนทิตีที่ผ่านการตรวจสอบสิทธิ์มีสิทธิ์เข้าถึง Fleet Engine ใช้บัญชีบริการที่มีบทบาท Google Cloud IAM รวมถึงการอ้างสิทธิ์ JWT ที่ช่วยให้มั่นใจว่าเอนทิตีที่ตรวจสอบสิทธิ์แล้วมีสิทธิ์ดูหรือเปลี่ยนแปลงข้อมูลที่ขอ
การตั้งค่าความปลอดภัยของเซิร์ฟเวอร์และไคลเอ็นต์
หากต้องการเปิดใช้การรักษาความปลอดภัยด้วย Fleet Engine ให้ตั้งค่าบัญชีและการรักษาความปลอดภัยที่จำเป็นในเซิร์ฟเวอร์แบ็กเอนด์ รวมถึงในแอปพลิเคชันไคลเอ็นต์และเว็บไซต์
แผนภาพต่อไปนี้แสดงภาพรวมของขั้นตอนในการตั้งค่าความปลอดภัยในเซิร์ฟเวอร์แบ็กเอนด์และแอปพลิเคชันไคลเอ็นต์

ดูรายละเอียดเพิ่มเติมได้ที่หัวข้อต่อไปนี้
การตั้งค่าความปลอดภัยของเซิร์ฟเวอร์แบ็กเอนด์
ผู้ดูแลระบบ Fleet ต้องทำตามขั้นตอนต่อไปนี้
สร้างและกำหนดค่าบัญชีบริการ
สร้างบัญชีบริการในคอนโซล Google Cloud
มอบหมายบทบาท IAM ที่เฉพาะเจาะจงให้กับบัญชีบริการ
กำหนดค่าเซิร์ฟเวอร์แบ็กเอนด์ด้วยบัญชีบริการที่สร้างขึ้น โปรดดูรายละเอียดที่หัวข้อบทบาทในบัญชีบริการ
กำหนดค่าการสื่อสารที่ปลอดภัยกับ Fleet Engine (ADC): กำหนดค่าแบ็กเอนด์เพื่อสื่อสารกับอินสแตนซ์ Fleet Engine โดยใช้ข้อมูลเข้าสู่ระบบเริ่มต้นของแอปพลิเคชันกับบัญชีบริการผู้ดูแลระบบที่เหมาะสม โปรดดูรายละเอียดที่หัวข้อข้อมูลรับรองเริ่มต้นของแอปพลิเคชัน
กำหนดค่าการสื่อสารที่ปลอดภัยกับแอปไคลเอ็นต์ (JWT): สร้างเครื่องมือสร้าง JSON Web Token เพื่อสร้าง JWT ที่มีการอ้างสิทธิ์ที่เหมาะสมสำหรับแอปพลิเคชันไคลเอ็นต์และเว็บไซต์ตรวจสอบ โปรดดูรายละเอียดที่หัวข้อออกเว็บโทเค็น JSON
การตั้งค่าความปลอดภัยของแอปพลิเคชัน
นักพัฒนาแอปพลิเคชันต้องระบุวิธีดึงข้อมูลโทเค็นเว็บ JSON ที่สร้างโดยเซิร์ฟเวอร์แบ็กเอนด์ในแอปหรือเว็บไซต์ไคลเอ็นต์ และใช้โทเค็นดังกล่าวเพื่อสื่อสารกับ Fleet Engine อย่างปลอดภัย ดูรายละเอียดได้ที่วิธีการตั้งค่าในเอกสารประกอบเกี่ยวกับประสบการณ์ของผู้ขับขี่หรือประสบการณ์ของผู้บริโภคสำหรับแอปพลิเคชันที่คุณต้องการ
ขั้นตอนการรักษาความปลอดภัยของแอปเซิร์ฟเวอร์และไคลเอ็นต์
แผนภาพลำดับต่อไปนี้แสดงขั้นตอนการตรวจสอบสิทธิ์และการให้สิทธิ์ของแอปเซิร์ฟเวอร์และแอปไคลเอ็นต์กับ Fleet Engine โดยใช้ ADC กับเซิร์ฟเวอร์แบ็กเอนด์และ JWT กับแอปพลิเคชันไคลเอ็นต์และเว็บไซต์

เซิร์ฟเวอร์แบ็กเอนด์จะสร้างยานพาหนะและการเดินทางหรืองานใน Fleet Engine
เซิร์ฟเวอร์แบ็กเอนด์ของคุณจะมอบหมายการเดินทางหรืองานให้ยานพาหนะ: เมื่อแอปคนขับทำงานอยู่ แอปจะดึงข้อมูลการมอบหมาย
เซิร์ฟเวอร์แบ็กเอนด์: ลงชื่อและออก JWT สำหรับบัญชีบริการที่เกี่ยวข้องซึ่งมีบทบาท IAM ที่เหมาะสมสำหรับงานหรือการเดินทางที่ได้รับมอบหมาย
แอปไคลเอ็นต์: แอปไคลเอ็นต์ใช้ JWT ที่ได้รับเพื่อส่งการอัปเดตตำแหน่งของยานพาหนะไปยัง Fleet Engine
ขั้นตอนถัดไป
- สร้างโปรเจ็กต์ Fleet Engine
- ดูวิธีออกโทเค็นเว็บ JSON จากเซิร์ฟเวอร์
- ดูข้อมูลเพิ่มเติมเกี่ยวกับบทบาทของบัญชีบริการ
- ดูข้อมูลเพิ่มเติมเกี่ยวกับ JWT