กำหนดค่าการเข้าถึง Google แบบส่วนตัวใน Firestore ที่เข้ากันได้กับ MongoDB

หน้านี้อธิบายวิธีเปิดใช้และกำหนดค่าการเข้าถึง Google แบบส่วนตัวใน Cloud Firestore

เกี่ยวกับการเข้าถึง Google แบบส่วนตัวใน Cloud Firestore

โดยค่าเริ่มต้น เมื่อ Compute Engine VM ไม่มีที่อยู่ IP ภายนอกที่กำหนดให้กับอินเทอร์เฟซเครือข่าย จะส่งแพ็กเก็ตไปยังปลายทางที่อยู่ IP ภายในอื่นๆ ได้เท่านั้น คุณสามารถอนุญาตให้ VM เหล่านี้เชื่อมต่อกับบริการ Cloud Firestore ได้โดยเปิดใช้การเข้าถึง Google แบบส่วนตัวในซับเน็ตที่อินเทอร์เฟซเครือข่ายของ VM ใช้

บริการและโปรโตคอลที่เกี่ยวข้อง

  • วิธีการในคู่มือนี้ใช้กับ Cloud Firestore เท่านั้น

  • โดเมนเริ่มต้นและโดเมน VIP ที่ Cloud Firestore ใช้และช่วง IP ของโดเมนดังกล่าวรองรับเฉพาะโปรโตคอล MongoDB ในพอร์ต 443 เท่านั้น ระบบไม่รองรับโปรโตคอลอื่นๆ ทั้งหมด

ข้อกำหนดเกี่ยวกับเครือข่าย

อินเทอร์เฟซ VM สามารถเข้าถึง Google API และบริการต่างๆ ผ่านเครือข่าย Google ภายในโดยใช้การเข้าถึง Google แบบส่วนตัวได้ หากเป็นไปตามเงื่อนไขต่อไปนี้ทั้งหมด

  • อินเทอร์เฟซ VM เชื่อมต่อกับซับเน็ตที่เปิดใช้การเข้าถึง Google แบบส่วนตัว

  • อินเทอร์เฟซ VM ไม่มีการกำหนดที่อยู่ IP ภายนอก

  • ที่อยู่ IP ต้นทางของแพ็กเก็ตที่ส่งจาก VM ตรงกับที่อยู่ IP รายการใดรายการหนึ่งต่อไปนี้

    • ที่อยู่ IPv4 ภายในหลักของอินเทอร์เฟซ VM
    • ที่อยู่ IPv4 ภายในจากช่วง IP แทน

VM ที่มีที่อยู่ IPv4 ภายนอกที่กำหนดให้กับอินเทอร์เฟซเครือข่ายไม่จำเป็นต้องใช้การเข้าถึง Google แบบส่วนตัวเพื่อเชื่อมต่อกับ Google API และบริการต่างๆ อย่างไรก็ตาม เครือข่าย VPC ต้องเป็นไปตามข้อกำหนดสำหรับการเข้าถึง Google APIs และบริการต่างๆ

สิทธิ์ IAM

เจ้าของโปรเจ็กต์ ผู้แก้ไข และผู้ใช้หลักของ IAM ที่มีบทบาทผู้ดูแลระบบเครือข่ายจะสร้างหรืออัปเดตซับเน็ตและกำหนดที่อยู่ IP ได้

ดูข้อมูลเพิ่มเติมเกี่ยวกับบทบาทได้ในเอกสารประกอบเรื่องบทบาท IAM

การบันทึก

Cloud Logging จะบันทึกคำขอ API ทั้งหมดที่ทำจากอินสแตนซ์ VM ในซับเน็ตที่เปิดใช้การเข้าถึง Google แบบส่วนตัว รายการบันทึกจะระบุแหล่งที่มาของคำขอ API เป็นที่อยู่ IP ภายในของอินสแตนซ์การโทร

คุณสามารถกำหนดค่ารายงานการใช้งานรายวันและรายงานสรุปรายเดือนให้ส่งไปยังบักเก็ต Cloud Storage ได้ ดูรายละเอียดได้ที่หน้าการดูรายงานการใช้งาน

สรุปการกำหนดค่า

ตารางต่อไปนี้สรุปวิธีต่างๆ ที่คุณสามารถกำหนดค่าการเข้าถึง Google แบบส่วนตัวใน Cloud Firestore ดูวิธีการและข้อมูลโดยละเอียดเพิ่มเติมได้ที่การกำหนดค่าเครือข่าย

ตัวเลือกโดเมน ช่วง IP การกำหนดค่า DNS การกำหนดค่าการกำหนดเส้นทาง การกำหนดค่าไฟร์วอลล์

โดเมนเริ่มต้น (firestore.goog)

ระบบจะใช้โดเมนเริ่มต้นเมื่อคุณไม่ได้กำหนดค่าระเบียน DNS สำหรับ restricted.firestore.goog

136.124.0.0/23 คุณเข้าถึงบริการ Cloud Firestore ผ่านที่อยู่ IP สาธารณะ จึงไม่จำเป็นต้องมีการกำหนดค่า DNS พิเศษ

ตรวจสอบว่าเครือข่าย VPC สามารถกำหนดเส้นทางการรับส่งข้อมูลไปยังช่วงที่อยู่ IP ที่บริการ Cloud Firestore ใช้ได้

ตรวจสอบว่ากฎไฟร์วอลล์อนุญาตให้ส่งข้อมูลขาออกไปยังช่วงที่อยู่ IP ของ 136.124.0.0/23

กฎไฟร์วอลล์ขาออกที่อนุญาตโดยค่าเริ่มต้นจะอนุญาตการรับส่งข้อมูลนี้ หากไม่มีกฎที่มีลำดับความสำคัญสูงกว่าที่บล็อกการรับส่งข้อมูลดังกล่าว

restricted.firestore.goog

ใช้ restricted.firestore.goog เพื่อเข้าถึงบริการ Cloud Firestore โดยใช้ชุดที่อยู่ IP ที่กำหนดเส้นทางได้จากภายใน Google Cloud เท่านั้น ใช้ได้ในสถานการณ์การควบคุมบริการ VPC

199.36.153.2/31 กำหนดค่าระเบียน DNS เพื่อส่งคำขอไปยังช่วงที่อยู่ IP 199.36.153.2/31 ตรวจสอบว่าเครือข่าย VPC มีเส้นทางไปยังช่วงที่อยู่ IP 199.36.153.2/31 ตรวจสอบว่ากฎไฟร์วอลล์อนุญาตให้ส่งข้อมูลขาออกไปยังช่วงที่อยู่ IP ของ 199.36.153.2/31

การกำหนดค่าเครือข่าย

ส่วนนี้จะอธิบายวิธีกำหนดค่าเครือข่ายเพื่อเข้าถึง Cloud Firestore โดยใช้การเข้าถึง Google แบบส่วนตัว

การกำหนดค่า DNS

Cloud Firestore API ใช้ชื่อโดเมนและที่อยู่ IP ที่แตกต่างกันสำหรับการเข้าถึง Google แบบส่วนตัว ซึ่งต่างจาก Google API อื่นๆ ดังนี้

  • restricted.firestore.goog เปิดใช้สิทธิ์เข้าถึง API สำหรับ Cloud Firestore API

    • ที่อยู่ IP: 199.36.153.2 และ 199.36.153.3

    • เนื่องจาก Cloud Firestore เป็นไปตามข้อกำหนดของการควบคุมบริการ VPC คุณจึงใช้โดเมนนี้ในสถานการณ์การควบคุมบริการ VPC ได้

วิธีสร้างโซน DNS และระเบียนสำหรับ Cloud Firestore

  1. สร้างโซน DNS ส่วนตัวสำหรับ firestore.goog

    ลองสร้างโซนส่วนตัวของ Cloud DNS เพื่อวัตถุประสงค์นี้

  2. ในโซน firestore.goog ให้สร้างระเบียนต่อไปนี้

    1. ระเบียน A สำหรับ restricted.firestore.goog ที่ชี้ไปยังที่อยู่ IP ต่อไปนี้ 199.36.153.2 และ 199.36.153.3

    2. ระเบียน CNAME สำหรับ *.firestore.goog ที่ชี้ไปยัง restricted.firestore.goog

    หากต้องการสร้างระเบียนเหล่านี้ใน Cloud DNS โปรดดูหัวข้อเพิ่มระเบียน

การกำหนดค่าการกำหนดเส้นทาง

เครือข่าย VPC ต้องมีเส้นทางที่เหมาะสมซึ่งมีการ Hop ถัดไปเป็นเกตเวย์อินเทอร์เน็ตเริ่มต้น Google Cloud ไม่รองรับการกำหนดเส้นทางการรับส่งข้อมูลไปยัง Google APIs และบริการผ่านอินสแตนซ์ VM อื่นๆ หรือการ Hop ถัดไปที่กำหนดเอง แม้ว่าจะเรียกว่าเกตเวย์อินเทอร์เน็ตเริ่มต้น แต่แพ็กเก็ตที่ส่งจาก VM ในเครือข่าย VPC ไปยัง Google APIs และบริการต่างๆ จะยังคงอยู่ภายในเครือข่ายของ Google

  • หากเลือกตัวเลือกโดเมนเริ่มต้น อินสแตนซ์ VM จะเชื่อมต่อกับบริการ Cloud Firestore โดยใช้ช่วงที่อยู่ IP สาธารณะต่อไปนี้ 136.124.0.0/23 ที่อยู่ IP เหล่านี้สามารถกำหนดเส้นทางแบบสาธารณะได้ แต่เส้นทางจาก VM ในเครือข่าย VPC ไปยังที่อยู่เหล่านั้นจะยังคงอยู่ภายในเครือข่ายของ Google

  • Google ไม่เผยแพร่เส้นทางบนอินเทอร์เน็ตไปยังที่อยู่ IP ใดๆ ที่โดเมน restricted.firestore.goog ใช้ ด้วยเหตุนี้ โดเมนนี้จึงเข้าถึงได้โดย VM ในเครือข่าย VPC หรือระบบภายในองค์กรที่เชื่อมต่อกับเครือข่าย VPC เท่านั้น

หากเครือข่าย VPC มีเส้นทางเริ่มต้นที่มีการ Hop ถัดไปเป็นเกตเวย์อินเทอร์เน็ตเริ่มต้น คุณสามารถใช้เส้นทางนั้นเพื่อเข้าถึงบริการ Cloud Firestore ได้โดยไม่ต้องสร้างเส้นทางที่กำหนดเอง ดูรายละเอียดได้ที่การกำหนดเส้นทางด้วยเส้นทางเริ่มต้น

หากคุณได้แทนที่เส้นทางเริ่มต้น (ปลายทาง 0.0.0.0/0 หรือ ::0/0) ด้วยเส้นทางที่กำหนดเองซึ่งการ Hop ถัดไปไม่ใช่อินเทอร์เน็ตเกตเวย์เริ่มต้น คุณสามารถปฏิบัติตามข้อกำหนดการกำหนดเส้นทางสำหรับบริการ Cloud Firestore โดยใช้การกำหนดเส้นทางที่กำหนดเองแทนได้

การกำหนดเส้นทางด้วยเส้นทางเริ่มต้น

เครือข่าย VPC แต่ละเครือข่ายจะมีเส้นทางเริ่มต้น IPv4 (0.0.0.0/0) เมื่อสร้างขึ้น

เส้นทางเริ่มต้นจะระบุเส้นทางไปยังที่อยู่ IP สำหรับปลายทางต่อไปนี้

  • โดเมนเริ่มต้น (firestore.goog): 136.124.0.0/23
  • restricted.firestore.goog: 199.36.153.2/31

ดูวิธีการตรวจสอบการกำหนดค่าเส้นทางเริ่มต้นในเครือข่ายที่กำหนดสำหรับคอนโซล Google Cloud และ Google Cloud CLI ได้ที่หัวข้อกำหนดค่าการเข้าถึง Google แบบส่วนตัว

การกำหนดเส้นทางด้วยเส้นทางที่กำหนดเอง

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

  • โดเมนเริ่มต้น (firestore.goog): 136.124.0.0/23
  • restricted.firestore.goog: 199.36.153.2/31

ดูวิธีการตรวจสอบการกำหนดค่าเส้นทางที่กำหนดเองในเครือข่ายที่ระบุสำหรับคอนโซล Google Cloud และ Google Cloud CLI ได้ที่หัวข้อกำหนดค่าการเข้าถึง Google แบบส่วนตัว

การกำหนดค่าไฟร์วอลล์

การกำหนดค่าไฟร์วอลล์ของเครือข่าย VPC ต้องอนุญาตการเข้าถึงจาก VM ไปยังที่อยู่ IP ที่บริการ Cloud Firestore ใช้ กฎ allow egress โดยนัยเป็นไปตามข้อกำหนดนี้

ในการกำหนดค่าไฟร์วอลล์บางรายการ คุณต้องสร้างกฎการอนุญาตขาออกที่เฉพาะเจาะจง เช่น สมมติว่าคุณได้สร้างกฎการปฏิเสธขาออกที่บล็อกการรับส่งข้อมูลไปยังปลายทางทั้งหมด (0.0.0.0 สำหรับ IPv4) ในกรณีนี้ คุณต้องสร้างกฎไฟร์วอลล์อนุญาตขาออก 1 ข้อซึ่งมีลำดับความสำคัญสูงกว่ากฎปฏิเสธขาออกสำหรับช่วงที่อยู่ IP แต่ละช่วงที่โดเมนที่คุณเลือกใช้ ดังนี้

  • โดเมนเริ่มต้น (firestore.goog: 136.124.0.0/23
  • restricted.firestore.goog: 199.36.153.2/31

หากต้องการสร้างกฎไฟร์วอลล์ โปรดดูหัวข้อการสร้างกฎไฟร์วอลล์ คุณสามารถจำกัด VM ที่จะใช้กฎไฟร์วอลล์ได้เมื่อกำหนดเป้าหมายของกฎการอนุญาตขาออกแต่ละข้อ

การกำหนดค่าการเข้าถึง Google แบบส่วนตัว

คุณจะเปิดใช้การเข้าถึง Google แบบส่วนตัวได้หลังจากที่ปฏิบัติตามข้อกำหนดของเครือข่ายในเครือข่าย VPC แล้ว สำหรับวิธีการใช้คอนโซล Google Cloud และ Google Cloud CLI ให้ทำตามขั้นตอนที่ระบุไว้ในหัวข้อเปิดใช้การเข้าถึง Google แบบส่วนตัว

ขั้นตอนถัดไป