ควบคุมการเข้าถึงแหล่งข้อมูล

คุณแชร์โควต้าชิ้นงานหรือการคำนวณของโปรเจ็กต์ที่เปิดใช้ Earth Engine กับผู้ใช้ Earth Engine คนอื่นๆ ได้ที่ระดับโปรเจ็กต์ คุณแชร์ชิ้นงานหรือการประมวลผลของ Earth Engine กับผู้ใช้รายอื่นหรือกลุ่มผู้ใช้ได้ หากต้องการแชร์กับกลุ่มผู้ใช้ ให้สร้างกลุ่ม Google ใหม่และจดอีเมลของกลุ่ม (ดูได้จากลิงก์ "เกี่ยวกับ" ในหน้ากลุ่ม) หน้านี้อธิบายวิธี ให้สิทธิ์เข้าถึงทรัพยากรสำหรับบุคคลหรือกลุ่ม รวมถึงบทบาท และสิทธิ์ที่จำเป็นสำหรับกิจกรรมต่างๆ

ตั้งค่าการใช้งานบริการ Earth Engine

หากต้องการใช้ Earth Engine API ในโปรเจ็กต์ Cloud คุณต้องเปิดใช้ API ในโปรเจ็กต์ และผู้ใช้ต้องมีสิทธิ์อย่างน้อยในบทบาทผู้ดูทรัพยากร Earth Engine (ดูข้อมูลเพิ่มเติมเกี่ยวกับบทบาท IAM ของ Earth Engine ที่กำหนดไว้ล่วงหน้า) นอกจากนี้ ผู้ใช้ต้องมีสิทธิ์อย่างน้อย serviceusage.services.use ในโปรเจ็กต์ คุณให้สิทธิ์ดังกล่าวได้ผ่านบทบาทเจ้าของหรือผู้แก้ไขของโปรเจ็กต์ หรือผ่านบทบาทผู้ใช้การใช้งานบริการ ที่เฉพาะเจาะจง ระบบจะแสดงข้อผิดพลาดหากผู้ใช้ไม่มีสิทธิ์ Earth Engine ที่จำเป็น และสิทธิ์การใช้งานบริการในโปรเจ็กต์ที่เลือก

ตั้งค่าสิทธิ์ของเนื้อหา

ตั้งค่าสิทธิ์ระดับเนื้อหา

คุณมีหลายตัวเลือก ในการอัปเดตสิทธิ์ที่ระดับเนื้อหา

  • ใช้ตัวจัดการชิ้นงานในตัวแก้ไขโค้ด
  • ใช้บรรทัดคำสั่งของ Earth Engine
  • ใช้ไลบรารีของไคลเอ็นต์ เช่น ee.data.setAssetAcl()
  • หรือเรียกใช้ REST API โดยตรง

ตั้งค่าสิทธิ์สำหรับเนื้อหาระดับโปรเจ็กต์

การแชร์ที่ระดับโปรเจ็กต์จะตั้งค่าสิทธิ์ในชิ้นงานทั้งหมดในโปรเจ็กต์ Cloud ที่เปิดใช้ Earth Engine พร้อมกัน

คุณแชร์ชิ้นงานที่ระดับโปรเจ็กต์ได้โดยการกำหนดบทบาท Identity and Access Management (IAM) ที่เหมาะสมในหน้าผู้ดูแลระบบ IAM ของโปรเจ็กต์ มีบทบาท IAM ของ Earth Engine ที่กำหนดไว้ล่วงหน้าสำหรับการแชร์เนื้อหาและ ทรัพยากรของ Earth Engine ดูภาพรวมทั่วไปเพิ่มเติมเกี่ยวกับบทบาท IAM ได้ที่ทำความเข้าใจเกี่ยวกับ บทบาท

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

ตั้งค่าสิทธิ์ระดับโปรเจ็กต์

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

  1. เปิดหน้า IAM ใน Google Cloud Console
    เปิดหน้า IAM
    หรือวางเมาส์เหนือชื่อโปรเจ็กต์ในแท็บชิ้นงานของ Code Editor แล้วคลิกไอคอน
  2. คลิกเลือกโปรเจ็กต์ แล้วเลือกโปรเจ็กต์ของคุณ (คุณควรจะ อยู่ในหน้านี้อยู่แล้วหากเปิดหน้า IAM จากโปรแกรมแก้ไขโค้ด)
  3. คลิกเพิ่มที่ด้านบน แล้วเพิ่มอีเมลของบุคคลหรือกลุ่มเป็นสมาชิกใหม่ หรือคลิกไอคอน ข้างสมาชิกที่มีอยู่แล้วในโปรเจ็กต์
  4. ในเมนูแบบเลื่อนลงบทบาท ให้ค้นหาบทบาททรัพยากร Earth Engine ที่คุณ ต้องการให้สิทธิ์ ดูรายละเอียดได้ที่บทบาท IAM ของ Earth Engine ที่กำหนดไว้ล่วงหน้า
  5. คลิกปุ่มบันทึก

การควบคุมบริการ VPC

Earth Engine รองรับการควบคุมบริการ VPC ซึ่งเป็นฟีเจอร์ความปลอดภัยของ Google Cloud ที่ช่วยให้ผู้ใช้รักษาความปลอดภัยของทรัพยากรและลดความเสี่ยงในการขโมยข้อมูลได้ การเพิ่มทรัพยากรลงในขอบเขตบริการ VPC จะช่วยให้คุณควบคุมการดำเนินการอ่านและเขียนข้อมูลได้มากขึ้น

ดูข้อมูลเพิ่มเติมเกี่ยวกับฟีเจอร์และการกำหนดค่า VPC-SC

ข้อจำกัด

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

ข้อจำกัด ตัวอย่างทางเลือก
โปรแกรมแก้ไขโค้ดไม่รองรับ และการควบคุมบริการ VPC จะไม่อนุญาตให้ใช้กับทรัพยากร และไคลเอ็นต์ภายในขอบเขตบริการ ใช้ Earth Engine Python API ร่วมกับ ไลบรารี geemap
ชิ้นงานเดิมจะไม่ได้รับการปกป้องโดยการควบคุมบริการ VPC ใช้ชิ้นงาน ที่จัดเก็บไว้ในโปรเจ็กต์ Cloud
การส่งออกไปยัง Google ไดรฟ์ไม่รองรับการควบคุมบริการ VPC
แอป Earth Engine ไม่รองรับทรัพยากรและไคลเอ็นต์ภายในขอบเขตบริการ ไม่มีวิธีแก้ปัญหาชั่วคราว

การใช้ Earth Engine กับทรัพยากรภายในขอบเขตบริการ VPC ที่ปลอดภัยจะใช้ได้เฉพาะกับแพ็กเกจราคา Professional และ Premium เท่านั้น การพยายามใช้ Earth Engine API กับโปรเจ็กต์ที่ปลอดภัยด้วย VPC-SC ซึ่งเชื่อมโยงกับแพ็กเกจราคา Basic จะทำให้เกิดข้อผิดพลาด ดูข้อมูลเพิ่มเติมเกี่ยวกับการกำหนดราคาของ Earth Engine ได้ที่เอกสารประกอบอย่างเป็นทางการ

ดูข้อมูลเพิ่มเติมเกี่ยวกับการควบคุมบริการ VPC และข้อจำกัดได้ใน ผลิตภัณฑ์ที่รองรับและ ข้อจำกัด

บทบาทและสิทธิ์

ส่วนต่อไปนี้จะอธิบายสิทธิ์และบทบาทที่จำเป็นต่อการทำ กิจกรรมและเข้าถึงทรัพยากรของ Earth Engine ดูข้อมูลเพิ่มเติมเกี่ยวกับสิทธิ์และบทบาทของโปรเจ็กต์ Cloud ได้ในเอกสารประกอบของ Google Cloud

บทบาท IAM ของ Earth Engine ที่กำหนดไว้ล่วงหน้า

Earth Engine มีบทบาทที่กำหนดไว้ล่วงหน้าซึ่งช่วยให้ควบคุมทรัพยากร Earth Engine ภายในโปรเจ็กต์ได้ในระดับต่างๆ บทบาทเหล่านี้ได้แก่

บทบาท ชื่อ คำอธิบาย
roles/earthengine.viewer ผู้ดูทรัพยากร Earth Engine ให้สิทธิ์ในการดูและแสดงรายการชิ้นงานและงาน
roles/earthengine.writer ผู้เขียนทรัพยากร Earth Engine ให้สิทธิ์ในการอ่าน สร้าง แก้ไข และลบชิ้นงาน นำเข้ารูปภาพและตาราง อ่านและอัปเดตงาน ดำเนินการคำนวณแบบอินเทอร์แอกทีฟ และสร้างงานส่งออกที่ใช้เวลานาน
roles/earthengine.admin ผู้ดูแลระบบ Earth Engine ให้สิทธิ์สำหรับทรัพยากร Earth Engine ทั้งหมด รวมถึงการเปลี่ยน การควบคุมการเข้าถึงเนื้อหา Earth Engine
roles/earthengine.appsPublisher ผู้เผยแพร่แอป Earth Engine ให้สิทธิ์ในการสร้างบัญชีบริการเพื่อใช้กับแอป Earth Engine รวมถึงให้สิทธิ์ในการแก้ไขและลบแอปที่เป็นของโปรเจ็กต์ภายใต้โปรเจ็กต์ Cloud

โปรดทราบว่าคุณอาจตั้งค่าบทบาทดั้งเดิม หรือที่กำหนดเอง ได้หากบทบาท Earth Engine ที่กำหนดไว้ล่วงหน้าไม่ตรงตามความต้องการ คุณดูชุดสิทธิ์ที่เชื่อมโยงกับแต่ละบทบาทได้จาก หน้าบทบาท IAM โดยการกรอง ไปยังบทบาทที่เฉพาะเจาะจงแล้วคลิกบทบาทนั้น

สิทธิ์เข้าถึง Earth Engine API โดยสมบูรณ์

หากต้องการให้ผู้ใช้มีสิทธิ์เข้าถึงบริการ Earth Engine อย่างเต็มรูปแบบ ไม่ว่าจะผ่าน REST API โดยตรง ผ่าน Code Editor หรือผ่านไลบรารีไคลเอ็นต์ ผู้ใช้จะต้องมีสิทธิ์ดำเนินการต่างๆ เช่น

สิทธิ์ที่จำเป็น
  • clientauthconfig.clients.listWithSecrets
  • earthengine.assets.get
  • earthengine.assets.getIamPolicy
  • earthengine.assets.list
  • earthengine.computations.create
  • earthengine.operations.get
  • earthengine.operations.list
  • monitoring.timeSeries.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.operations.get
  • serviceusage.operations.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
  • serviceusage.services.use
บทบาทที่แนะนำ
  • ผู้บริโภคการใช้บริการ (roles/serviceusage.serviceUsageConsumer) และอย่างใดอย่างหนึ่งต่อไปนี้
    • ผู้ดูทรัพยากร Earth Engine (roles/earthengine.viewer) หรือ
    • ผู้เขียนทรัพยากร Earth Engine (roles/earthengine.writer) หรือ
    • ผู้ดูแลระบบทรัพยากร Earth Engine (roles/earthengine.admin)
  • ผู้แก้ไขการกำหนดค่า OAuth (roles/oauthconfig.editor) จำเป็นเพิ่มเติมสำหรับผู้ใช้ที่เข้าถึง Earth Engine ผ่าน สภาพแวดล้อม Notebook และใช้ Notebook Authenticator ดูรายละเอียดเพิ่มเติมได้ที่ การตรวจสอบสิทธิ์สมุดบันทึก Colab หรือ JupyterLab
หมายเหตุ Google Cloud กำหนดให้มีบทบาทผู้ใช้การใช้งานบริการเพื่อใช้โปรเจ็กต์เป็นโปรเจ็กต์ที่ใช้งานอยู่เมื่อเรียกใช้ API และee.Initialize(project=X) จะล้มเหลวหากไม่มีสิทธิ์นี้ในโปรเจ็กต์ X นอกจากนี้ คุณยังเลือกโปรเจ็กต์นี้ใน Cloud Console เพื่อแสดง การใช้ทรัพยากรได้ด้วย

การแชร์ชิ้นงานเท่านั้น

ให้บทบาท IAM ของ Earth Engine ที่กำหนดไว้ล่วงหน้าแก่ผู้ใช้พร้อมสิทธิ์ขั้นต่ำเพื่อดำเนินการที่จำเป็น โปรดทราบว่าผู้ใช้จะใช้ทรัพยากรของโปรเจ็กต์ไม่ได้หากไม่มีserviceusage สิทธิ์ที่จำเป็น

การจัดการโครงการก่อสร้างถนน

แสดงรายการและแสดงโปรเจ็กต์ที่พร้อมใช้งาน

ซึ่งจะเกิดขึ้นเมื่อใช้ตัวแก้ไขโค้ดเพื่อเรียกดูโปรเจ็กต์ที่พร้อมใช้งาน

สิทธิ์ที่จำเป็น
  • resourcemanager.projects.get
  • resourcemanager.folders.list
  • resourcemanager.folders.get
  • resourcemanager.organizations.get (ไม่ปกติ)
บทบาทที่แนะนำ
  • ผู้ดู (roles/viewer) หรือ
    ผู้ดูทรัพยากร Earth Engine (roles/earthengine.viewer) ในโปรเจ็กต์ที่เกี่ยวข้อง หรือ
    เบราว์เซอร์ (roles/browser ขอแนะนำสำหรับกรณีขององค์กรขั้นสูง)
  • ผู้ดูโฟลเดอร์ (roles/resourcemanager.folderViewer) ในโฟลเดอร์ที่เกี่ยวข้อง

เลือกโปรเจ็กต์ที่จะใช้ในโปรแกรมแก้ไขโค้ด

สิทธิ์ที่จำเป็น
  • resourcemanager.projects.get
  • serviceusage.services.get
หากยังไม่ได้ตั้งค่าโปรเจ็กต์

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

  • resourcemanager.projects.update และ
  • serviceusage.services.enable
บทบาทที่แนะนำ
  • ผู้มีสิทธิ์ดู (roles/viewer) หรือ
  • ผู้ดูทรัพยากร Earth Engine (roles/earthengine.viewer) และ
    ผู้ใช้การใช้งานบริการ (roles/serviceusage.serviceUsageConsumer)
บทบาทเพิ่มเติม (หากยังไม่ได้ตั้งค่าโปรเจ็กต์ก่อนหน้านี้)
  • เอดิเตอร์ (roles/editor) หรือ
  • ผู้ย้ายข้อมูลโปรเจ็กต์ (roles/resourcemanager.projectMover) และ
    ผู้ดูแลระบบ IAM ของโปรเจ็กต์ (roles/resourcemanager.projectIamAdmin) และ
    ผู้ดูแลระบบการใช้งานบริการ (roles/serviceusage.serviceUsageAdmin)

สร้างโปรเจ็กต์ผ่านเครื่องมือแก้ไขโค้ด

สิทธิ์ที่จำเป็น
  • resourcemanager.projects.get
  • resourcemanager.projects.create
  • resourcemanager.projects.update
  • serviceusage.services.get
  • serviceusage.services.enable
บทบาทที่แนะนำ
  • เอดิเตอร์ (roles/editor) หรือ
  • ผู้ย้ายข้อมูลโปรเจ็กต์ (roles/resourcemanager.projectMover) และ
    ผู้สร้างโปรเจ็กต์ (roles/resourcemanager.projectCreator) และ
    ผู้ดูแลระบบการใช้งานบริการ (roles/serviceusage.serviceUsageAdmin)
หมายเหตุ องค์กรอาจไม่ให้บทบาทผู้แก้ไขแก่คุณ ดังนั้นคุณอาจต้องมี บทบาทที่ละเอียดยิ่งขึ้น คุณต้องมีProject Mover เพื่อ ครอบคลุมสิทธิ์ projects.update

การเลือกระดับที่ไม่ใช่เชิงพาณิชย์

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

การเลือกระดับ
สิทธิ์ที่จำเป็น
  • earthengine.config.update
บทบาทที่แนะนำ
  • ผู้เขียนทรัพยากร Earth Engine (roles/earthengine.writer)
เพิ่มบัญชีสำหรับการเรียกเก็บเงิน

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

สิทธิ์ที่จำเป็น
  • billing.accounts.get
บทบาทที่แนะนำ
  • ผู้มีสิทธิ์ดูของบัญชีสำหรับการเรียกเก็บเงิน (roles/billing.viewer)

การจดทะเบียนโครงการเชิงพาณิชย์

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

สิทธิ์ที่จำเป็น
บัญชีสำหรับการเรียกเก็บเงิน
  • billing.subscriptions.list
นอกจากนี้
  • billing.accounts.get (สำหรับการสร้างแพ็กเกจแบบจำกัดใหม่)
  • billing.subscriptions.create (สำหรับการสร้างแพ็กเกจ Basic หรือ Professional ใหม่)
โครงการระบบคลาวด์
  • earthengine.computations.create
  • earthengine.config.update
  • serviceusage.services.get
  • serviceusage.services.enable
บทบาทที่แนะนำ
บัญชีสำหรับการเรียกเก็บเงิน
  • ผู้มีสิทธิ์ดูบัญชีสำหรับการเรียกเก็บเงิน (roles/billing.viewer) สำหรับการสร้างแพ็กเกจแบบจำกัดใหม่
  • ผู้ดูแลระบบบัญชีสำหรับการเรียกเก็บเงิน (roles/billing.admin) สำหรับการสร้างแพ็กเกจ Basic หรือ Professional ใหม่
โครงการระบบคลาวด์
  • ผู้เขียนทรัพยากร Earth Engine (roles/earthengine.writer)
  • ผู้ดูแลระบบการใช้บริการ (roles/serviceusage.serviceUsageAdmin)

การจัดการแพ็กเกจ Earth Engine เชิงพาณิชย์

สิทธิ์ต่อไปนี้เกี่ยวข้องกับการจัดการแพ็กเกจราคาของ Earth Engine

สิทธิ์ที่จำเป็น
ในบัญชีสำหรับการเรียกเก็บเงิน
  • billing.subscriptions.create (หากต้องการเปลี่ยนแพ็กเกจ Earth Engine)
  • billing.subscriptions.list (เพื่อดูแพ็กเกจ Earth Engine ปัจจุบัน)
บทบาทที่แนะนำ
ในบัญชีสำหรับการเรียกเก็บเงิน
  • ผู้ดูบัญชีสำหรับการเรียกเก็บเงิน (roles/billing.viewer) เพื่อดูแพ็กเกจ Earth Engine ปัจจุบัน
  • ผู้ดูแลระบบบัญชีสำหรับการเรียกเก็บเงิน (roles/billing.admin) เพื่อเปลี่ยนแพ็กเกจ Earth Engine

การจัดการงานแบบกลุ่ม

สิทธิ์ต่อไปนี้เกี่ยวข้องกับการกำหนดค่าขีดจำกัดต่อโปรเจ็กต์สำหรับจำนวนงานแบบกลุ่มที่ทำงานพร้อมกัน ฟีเจอร์นี้ใช้ได้เฉพาะผู้ใช้เชิงพาณิชย์ของ Earth Engine เท่านั้น

การดูขีดจำกัดงานแบบกลุ่มระดับโปรเจ็กต์

สิทธิ์ที่จำเป็น
ในบัญชี Cloud
earthengine.config.get

การตั้งค่าขีดจำกัดของงานแบบกลุ่มระดับโปรเจ็กต์

สิทธิ์ที่จำเป็น
ในบัญชี Cloud
earthengine.config.update
หมายเหตุ: สิทธิ์นี้ยังครอบคลุมถึงการดูขีดจํากัดระดับแพ็กเกจที่ กําหนดค่าไว้ในบัญชีสำหรับการเรียกเก็บเงินด้วย
สิทธิ์ที่จำเป็น
ในบัญชีสำหรับการเรียกเก็บเงิน
billing.subscriptions.list

การจัดการแอป

แสดงข้อมูลแอป

สิทธิ์ที่จำเป็น
  • iam.serviceAccounts.get
  • iam.serviceAccounts.getIamPolicy หากแอปถูกจำกัด (พบได้น้อย)
บทบาทที่แนะนำ ผู้มีสิทธิ์ดู (roles/viewer) หรือ
ผู้เผยแพร่แอป Earth Engine (roles/earthengine.appsPublisher)

เผยแพร่/อัปเดตแอป

สิทธิ์ที่จำเป็น
  • iam.serviceAccounts.get
  • iam.serviceAccounts.create
  • iam.serviceAccounts.enable
  • iam.serviceAccounts.getIamPolicy
  • iam.serviceAccounts.setIamPolicy
  • iam.serviceAccounts.disable หากย้ายแอปจากโปรเจ็กต์หนึ่งไปยังอีกโปรเจ็กต์หนึ่ง (ไม่พบบ่อย)
บทบาทที่แนะนำ ผู้เผยแพร่แอป Earth Engine (roles/earthengine.appsPublisher) หรือ
ผู้ดูแลระบบบัญชีบริการ (roles/iam.serviceAccountAdmin)
หมายเหตุ
  • นอกจากนี้ บัญชีบริการของแอป Earth Engine ยังระบุตัวตนต่อเซิร์ฟเวอร์ Earth Engine โดยแสดงโทเค็นเพื่อการเข้าถึง OAuth ดังนั้น ระบบจึงเพิ่มข้อมูลประจำตัวบางอย่างในระหว่างการสร้างแอปเป็น ผู้สร้างโทเค็นบัญชีบริการ (roles/iam.serviceAccountTokenCreator) ในบัญชีบริการ
  • ในกรณีของแอป Earth Engine สาธารณะ ข้อมูลประจำตัวที่ได้รับบทบาทนั้นคือ earth-engine-public-apps@appspot.gserviceaccount.com และในกรณีของแอปที่ถูกจำกัด ข้อมูลประจำตัวคือกลุ่ม Google ที่จำกัดการเข้าถึงซึ่งผู้สร้างแอปกำหนดค่าไว้

ลบแอป

สิทธิ์ที่จำเป็น iam.serviceAccounts.disable
บทบาทที่แนะนำ ผู้เผยแพร่แอป Earth Engine (roles/earthengine.appsPublisher) หรือ
ผู้ดูแลระบบบัญชีบริการ (roles/iam.serviceAccountAdmin)