เริ่มต้นใช้งาน Application Design Center (ADC) และ Firebase

Firebase ผสานรวมกับ Application Design Center (ADC) จาก Google Cloud เพื่อให้ลูกค้าองค์กรสามารถตอบสนองความต้องการด้านการกํากับดูแลและ การสร้างมาตรฐาน พร้อมทั้งช่วยให้นักพัฒนาแอปสามารถจัดส่งแอปได้อย่างรวดเร็ว การใช้ ADC ช่วยให้มั่นใจได้ว่าโครงสร้างพื้นฐานเป็นไปตามมาตรฐานและแนวทางปฏิบัติแนะนำขององค์กรผ่านเทมเพลตที่กำหนดไว้ล่วงหน้า ซึ่งกำหนดขอบเขตสำหรับการจัดสรรทรัพยากร การให้สิทธิ์ IAM ฯลฯ

ในหน้านี้ คุณจะได้เรียนรู้เกี่ยวกับสิ่งต่อไปนี้

ภาพรวมของ ADC และ Firebase

เราขอแนะนำให้อ่านGoogle Cloudเอกสารประกอบเกี่ยวกับภาพรวมของ ADC Google Cloud เอกสารประกอบยังมีคำแนะนำเชิงลึกหลายรายการสำหรับ ADC ซึ่งรวมถึง แนวคิดหลัก และ คู่มือการตั้งค่าเริ่มต้น

เมื่อใช้ ADC "แอป" จะหมายถึงการจัดกลุ่มเชิงตรรกะของทรัพยากรและบริการที่ทำงานร่วมกันเพื่อส่งมอบฟังก์ชันทางธุรกิจ สำหรับนักพัฒนาแอป Firebase คุณสามารถคิดว่า "แอป" เทียบเท่ากับโปรเจ็กต์ Firebase ซึ่งแอป iOS, Android และเว็บแอปที่ลงทะเบียนทั้งหมดจะใช้ร่วมกันและมีสิทธิ์เข้าถึงทรัพยากรและบริการเดียวกันทั้งหมดสำหรับโปรเจ็กต์ADC

หากต้องการเริ่มต้นใช้งาน เราขอแนะนำให้ใช้ ADC โดยใช้ประสบการณ์ GUI ที่เรียกว่าพื้นที่ออกแบบ ซึ่งมีอยู่ในคอนโซล Google Cloud Canvas การออกแบบช่วยให้คุณ เห็นภาพและสร้างไดอะแกรมสถาปัตยกรรมของโครงสร้างพื้นฐานที่คุณต้องการ ให้แอปของคุณใช้งานได้

โปรดทราบว่า ADC ขับเคลื่อนโดย Terraform ดังนั้น คุณจะเข้าถึงคำจำกัดความของโค้ดของโครงสร้างพื้นฐานที่ กำหนดโดยใช้ ADC ได้เสมอ

ผลิตภัณฑ์ Firebase ที่รองรับ

ต่อไปนี้คือชุดผลิตภัณฑ์ Firebase ที่รองรับในตอนแรกซึ่งใช้กับ ADCได้

กลุ่มเป้าหมายหลักที่ใช้ ADC

วิธีทั่วไปในการทำความเข้าใจและใช้ ADC คือการ แบ่งงานที่เกี่ยวข้องกับ ADC ตาม ลักษณะตัวตน 2 แบบต่อไปนี้

  • วิศวกรแพลตฟอร์ม: บุคลิกภาพนี้ออกแบบ ยืนยัน และเผยแพร่ADC เทมเพลตที่นำกลับมาใช้ใหม่ได้ซึ่งบังคับใช้นโยบายไปยังADC แคตตาล็อก

  • นักพัฒนาแอปพลิเคชัน: ผู้ใช้ประเภทนี้ใช้เทมเพลตที่เผยแพร่ ADC (เช่น จากแคตตาล็อกของทีม ADC) เพื่อกำหนดค่าและติดตั้งใช้งาน โครงสร้างพื้นฐาน นอกจากนี้ยังพัฒนาฐานของโค้ดและฟีเจอร์จริงของแอปด้วย

บทบาท IAM ที่จำเป็นในการควบคุมการเข้าถึง

การมอบหมายบทบาท IAM ช่วยให้คุณควบคุมได้ว่าสมาชิกโปรเจ็กต์ (หรือหลัก) คนใดสามารถทำงานที่เฉพาะเจาะจงได้

เช่น คุณอาจมอบหมายบทบาทผู้ดูแลระบบศูนย์ออกแบบแอปพลิเคชัน (roles/designcenter.admin) ให้กับวิศวกรแพลตฟอร์มที่ต้องสร้างและ มอบหมายพื้นที่ จัดการแคตตาล็อก และออกแบบเทมเพลต อย่างไรก็ตาม คุณอาจกำหนดบทบาทผู้แก้ไขแอปพลิเคชัน (roles/designcenter.applicationEditor) ให้กับ นักพัฒนาแอปพลิเคชันเพื่อให้ใช้เทมเพลตได้ แต่สร้าง เทมเพลตไม่ได้

ตารางต่อไปนี้อธิบายงานที่เกี่ยวข้องกับ ADC บุคคลที่ต้องการ และบทบาทที่จำเป็น

งาน ลักษณะตัวตน บทบาท IAM 1
สร้างและจัดการเทมเพลต
จัดการADCวงจร
ทั้งหมด (รวมถึงการจัดการพื้นที่ แคตตาล็อก เทมเพลต การกำหนดค่าและการติดตั้งใช้งานแอป)
วิศวกรแพลตฟอร์ม ผู้ดูแลระบบ Application Design Center
(roles/designcenter.admin) ในโปรเจ็กต์การจัดการ
สร้างและจัดการเทมเพลต รวมถึงกำหนดค่าและติดตั้งใช้งานแอป วิศวกรแพลตฟอร์ม ผู้ใช้ Application Design Center
(roles/designcenter.user) ในโปรเจ็กต์การจัดการ
สร้างบัญชีบริการสำหรับการติดตั้งใช้งาน ADC แอป
สร้างบัญชีบริการ วิศวกรแพลตฟอร์ม สร้างบัญชีบริการ
(roles/iam.serviceAccountCreator) ในโปรเจ็กต์การจัดการ
ให้สิทธิ์เข้าถึงบัญชีบริการแก่ โปรเจ็กต์ที่ใช้สำหรับการติดตั้งใช้งาน ADC วิศวกรแพลตฟอร์ม ผู้ดูแลระบบ IAM ของโปรเจ็กต์
(roles/resourcemanager.projectIamAdmin) ในโปรเจ็กต์การติดตั้งใช้งาน
กำหนดค่าและติดตั้งใช้งานADC แอป
ควบคุมวงจรแอปทั้งหมด
(รวมถึงการผสานรวมกับซอร์สโค้ดและระบบ CI/CD)
นักพัฒนาแอปพลิเคชัน ผู้ดูแลระบบแอปพลิเคชัน
(roles/designcenter.applicationAdmin) ในโปรเจ็กต์การจัดการ
กำหนดค่าและติดตั้งใช้งานแอปตามเทมเพลตและการเชื่อมต่อที่มีอยู่ ซึ่งผู้ดูแลระบบตั้งค่าไว้ นักพัฒนาแอปพลิเคชัน เครื่องมือแก้ไขแอปพลิเคชัน
(roles/designcenter.applicationEditor) ในโปรเจ็กต์การจัดการ

1 ต้องกำหนดบทบาทเหล่านี้หลายบทบาทในโปรเจ็กต์การจัดการ ซึ่งเป็นทรัพยากรระดับบนสุดภายในลำดับชั้นของ Google Cloud

เวิร์กโฟลว์ทั่วไป

ส่วนนี้จะอธิบายเวิร์กโฟลว์ทั่วไปสำหรับการสร้างและใช้เทมเพลต ADC ขั้นตอนต่างๆ จะติดแท็กด้วย อวตารที่มักจะทำตามขั้นตอนนั้น

  1. ขั้นตอนที่ 1: ตั้งค่า ADC (วิศวกรแพลตฟอร์ม)
  2. ขั้นตอนที่ 2: สร้างเทมเพลต (วิศวกรแพลตฟอร์ม)
  3. ขั้นตอนที่ 3: ใช้เทมเพลต (นักพัฒนาแอปพลิเคชัน)
  4. ขั้นตอนที่ 4: พัฒนาแอปจริง (นักพัฒนาแอปพลิเคชัน)

ขั้นตอนที่ 1: ตั้งค่า ADC (วิศวกรแพลตฟอร์ม)

ผู้มีบทบาทเป็นวิศวกรแพลตฟอร์ม (หรือสูงกว่า) จะทำงานเหล่านี้ให้เสร็จสมบูรณ์เพื่อตั้งค่า ADC โดยปกติแล้ว คุณจะต้องทำ งานเหล่านี้เพียงครั้งเดียวเพื่อตั้งค่าทุกอย่างให้พร้อมใช้งาน ADC

  1. การADCตั้งค่าเบื้องต้น

    ทำตามขั้นตอนและคำแนะนำในคู่มือการตั้งค่าเริ่มต้น สำหรับ ADC ในเอกสารประกอบของ Google Cloud โปรดทราบว่าคู่มือนี้ถือว่าคุณจะตั้งค่าขอบเขตระดับโฟลเดอร์

    หลังจากตั้งค่านี้เสร็จแล้ว คุณควรมีพื้นที่ ซึ่งเป็นพื้นที่เฉพาะสำหรับทีมในการทำงานร่วมกัน สร้างเทมเพลต และติดตั้งใช้งานแอปพลิเคชัน ตรวจสอบว่าได้แชร์พื้นที่นี้ (รวมถึงโฟลเดอร์และแคตตาล็อก) กับทุกคนที่คุณต้องการทำงานด้วย ADC

  2. ตั้งค่าการเข้าถึงและผู้ใช้สำหรับพื้นที่ทำงาน

    ทำตามขั้นตอนในหัวข้อจัดการผู้ใช้พื้นที่ สำหรับ ADC ในเอกสารประกอบของ Google Cloud ใช้คำแนะนำที่อธิบายไว้ก่อนหน้านี้ในหน้านี้เกี่ยวกับบทบาท IAM ที่จำเป็นในการควบคุมการเข้าถึง

  3. จัดสรรโปรเจ็กต์ล่วงหน้า

    สร้างGoogle Cloudโปรเจ็กต์ใหม่อย่างน้อย 1 รายการในโฟลเดอร์ ตรวจสอบว่าคุณได้ลิงก์บัญชี Cloud Billing กับโปรเจ็กต์เหล่านี้ โปรเจ็กต์เหล่านี้จะใช้โดยนักพัฒนาแอปพลิเคชันเมื่อนักพัฒนาแอปเหล่านั้น ติดตั้งใช้งานโครงสร้างพื้นฐานที่กำหนดไว้ในเทมเพลต

  4. กำหนดค่าบัญชีบริการสำหรับการติดตั้งใช้งาน

    ADC จัดการการจัดสรรทรัพยากรโดยอัตโนมัติ โดยใช้บัญชีบริการที่มีขอบเขตที่จำกัด ซึ่งจะช่วยป้องกันไม่ให้ นักพัฒนาแอปพลิเคชันใช้บัญชีของตนเองเพื่อติดตั้งใช้งานโครงสร้างพื้นฐาน

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

ขั้นตอนที่ 2: สร้างเทมเพลต (วิศวกรแพลตฟอร์ม)

บทบาทวิศวกรแพลตฟอร์มใช้ ผืนผ้าใบการออกแบบ หรือแม้แต่ Gemini Cloud Assist เพื่อสร้าง ADC เทมเพลตใหม่

  1. กำหนดทรัพยากร

    ใช้ Canvas การออกแบบ ลากและวางคอมโพเนนต์ลงใน Canvas แล้วสร้าง การเชื่อมต่อระหว่างคอมโพเนนต์ คอมโพเนนต์เหล่านี้คือวิธีที่คุณกำหนดบริการ Firebase (และ Google Cloud) ที่ต้องการให้นักพัฒนาแอปพลิเคชันใช้

    ตัวอย่างเช่น เทมเพลตอาจกำหนดทรัพยากรดังนี้

    • นักพัฒนาแอปสามารถพัฒนาแอป iOS, Android และเว็บที่ใช้ทรัพยากรเดียวกันได้
    • นักพัฒนาแอปพลิเคชันสามารถใช้ Firebase AI Logic, Firebase Authentication, Cloud Firestore และ Firebase Security Rules ในแอปของตน (ดูรายการผลิตภัณฑ์ Firebase ทั้งหมดที่รองรับสำหรับ ADC)
    • Firebase Security Rules จะได้รับการตั้งค่าเริ่มต้นเป็นปฏิเสธคำขอเข้าถึงทั้งหมด จากนั้นเมื่อนักพัฒนาแอปพลิเคชันใช้เทมเพลตนี้สำหรับการติดตั้งใช้งานของตนเอง ก็จะสามารถเปลี่ยนSecurity Rulesเหล่านี้ให้สอดคล้อง กับรูปแบบการเข้าถึงที่ต้องการได้
  2. กำหนดนโยบาย

    หากต้องการกำหนดนโยบาย เช่น บทบาท IAM สำหรับโครงสร้างพื้นฐานที่ติดตั้งใช้งาน หรือภูมิภาคที่อนุญาตสำหรับทรัพยากร คุณจะต้องกำหนดนโยบายเหล่านั้น ในอินเทอร์เฟซที่เกี่ยวข้อง ขณะนี้ ADC ไม่รองรับการกำหนดนโยบายที่ระดับเทมเพลต

    คุณสามารถมอบหมายบทบาท Firebase IAM ที่เฉพาะเจาะจงให้กับสมาชิกโปรเจ็กต์ได้ตามสิ่งที่คุณต้องการให้สมาชิกทำ เช่น หากสมาชิกจำเป็นต้องดูทรัพยากรในคอนโซล Firebase เท่านั้น ให้มอบหมายบทบาทผู้ดู Firebase (roles/firebase.viewer) ให้กับสมาชิก

    คุณกำหนดข้อจำกัดด้านภูมิภาคสำหรับทรัพยากรได้ที่ระดับโฟลเดอร์หรือองค์กร

  3. เพิ่มเทมเพลตลงในแคตตาล็อก

    หลังจากทดสอบเทมเพลตแล้ว ให้เพิ่มเทมเพลตลงใน ADCแคตตาล็อกของทีม คุณต้องแชร์แคตตาล็อกนี้ กับบุคคลที่เหมาะสม โดยเฉพาะนักพัฒนาแอป เพื่อให้ นักพัฒนาแอปใช้เทมเพลตได้ (ดูขั้นตอนที่ 1: ตั้งค่า ADC ด้านบน)

ขั้นตอนที่ 3: ใช้เทมเพลต (นักพัฒนาแอปพลิเคชัน)

ผู้ใช้ที่มีลักษณะเป็นนักพัฒนาแอปพลิเคชันจะเลือกเทมเพลตที่กำหนดไว้ล่วงหน้า กำหนดค่าเทมเพลต สำหรับ Use Case ที่เฉพาะเจาะจง แล้วจึงติดตั้งใช้งานโครงสร้างพื้นฐาน

  1. เลือกเทมเพลตและกำหนดค่า

    จากADCแคตตาล็อก ให้เลือกเทมเพลต และกำหนดค่าเพื่อสร้างฉบับร่างของแอปพลิเคชัน การกำหนดค่าที่ใช้ได้ เช่น ภูมิภาคที่เป็นไปได้สำหรับทรัพยากร จะจำกัดเฉพาะการกำหนดค่าที่วิศวกรแพลตฟอร์มตั้งค่าไว้เมื่อสร้างเทมเพลต

  2. ติดตั้งใช้งานโครงสร้างพื้นฐาน

    หลังจากสร้างฉบับร่างของแอปพลิเคชันแล้ว ให้ติดตั้งใช้งานADCแอปกับโปรเจ็กต์ที่จัดสรรไว้ล่วงหน้าโปรเจ็กต์ใดโปรเจ็กต์หนึ่งที่สร้างขึ้นสำหรับการติดตั้งใช้งานโครงสร้างพื้นฐาน (ดูขั้นตอนที่ 1: ตั้งค่าADCด้านบน)

    คุณสามารถไปที่Firebaseคอนโซล และดูทรัพยากรที่จัดสรรและบริการที่เปิดใช้สำหรับโปรเจ็กต์ของคุณ

ขั้นตอนที่ 4: พัฒนาแอปจริง (นักพัฒนาแอปพลิเคชัน)

ADC ช่วยตั้งค่า Firebase และGoogle Cloud โครงสร้างพื้นฐาน (เช่น การจัดสรรทรัพยากรและการเปิดใช้ API) อย่างไรก็ตาม เครื่องมือนี้ไม่ได้เขียนโค้ดของแอปจริงที่ใช้ทรัพยากรและ API เหล่านั้น

สิ่งสำคัญที่ผู้ใช้ที่มีบทบาทเป็นนักพัฒนาแอปพลิเคชันต้องทำมีดังนี้

  1. เชื่อมต่อฐานของโค้ดของแอปกับ Firebase

    รับและเพิ่มการกำหนดค่า Firebase ลงในฐานของโค้ดของแต่ละแอป

    เช่น หากเทมเพลตอนุญาตให้ใช้แอป Android คุณจะต้องเพิ่มไฟล์ google-services.json ลงในไดเรกทอรีที่เหมาะสมภายในโปรเจ็กต์ Android

  2. ทำให้โค้ดและทรัพยากรสอดคล้องกัน

    (หากใช้ Cloud Firestore) อย่าลืมอัปเดตและเผยแพร่ Firebase Security Rules เพื่อให้สอดคล้องกับโมเดลข้อมูล Cloud Firestore สำหรับแอป

คุณทำอะไรได้อีกบ้าง

  • ตรวจสอบADC "แอป" ที่ติดตั้งใช้งาน ซึ่งจะลงทะเบียนใน App Hub โดยอัตโนมัติ ซึ่งช่วยให้สามารถตรวจสอบ แบบรวม ดูต้นทุน และแก้ปัญหาสำหรับทรัพยากร Firebase ในบริบทของการGoogle Cloudติดตั้งใช้งานที่กว้างขึ้น