การบังคับใช้นโยบายระดับองค์กรที่เข้มงวดมากขึ้นสำหรับ chrome.debugger ใน Chrome 155

เผยแพร่เมื่อวันที่ 8 กันยายน 2569 อัปเดตล่าสุดเมื่อวันที่ 4 พฤศจิกายน 2569

ตั้งแต่ Chrome 155 เป็นต้นไป Chrome จะอัปเดตวิธีใช้ข้อจำกัดของนโยบายองค์กรกับส่วนขยายโดยใช้ chrome.debugger API

การเปลี่ยนแปลงนี้จะส่งผลต่อส่วนขยายที่ทำงานในเบราว์เซอร์ที่มีการจัดการซึ่งผู้ดูแลระบบได้กำหนดค่า runtime_blocked_hosts, DisableScreenshots หรือกฎการป้องกันข้อมูลรั่วไหล (DLP) ไว้อย่างชัดเจนเท่านั้น

หากส่วนขยายทำงานในเบราว์เซอร์ที่ไม่มีการจัดการ หรือในสภาพแวดล้อมขององค์กรที่ไม่มีข้อจำกัดด้านนโยบายที่เฉพาะเจาะจงเหล่านี้ chrome.debugger จะยังคงทำงานตามปกติโดยไม่มีการเปลี่ยนแปลง

ไทม์ไลน์และการเปิดตัว

  • Chrome 155 เวอร์ชันเบต้า: 16 กันยายน 2026
  • การเปิดตัว Chrome 155 เวอร์ชันเสถียร: 6 ตุลาคม 2026
  • การย้อนกลับ: 3 พฤศจิกายน 2026

การเปลี่ยนแปลงที่สำคัญใน Chrome 155

การเปลี่ยนแปลงต่อไปนี้จะมีผลกับเบราว์เซอร์ที่มีการจัดการขององค์กรเท่านั้น

  • ข้อจำกัดของโฮสต์: หากนโยบายระดับองค์กร (ExtensionSettings) กำหนดค่ารายการโฮสต์ที่ถูกบล็อกซึ่งไม่ใช่รายการว่าง (runtime_blocked_hosts) สำหรับส่วนขยาย ระบบจะปฏิเสธ chrome.debugger.attach() ในเป้าหมายทั้งหมดพร้อมข้อความต่อไปนี้

    "Host access is restricted by policy."

    แม้ว่าต้นทางที่เฉพาะเจาะจงจะรวมอยู่ใน runtime_allowed_hosts ก็ตาม

  • ข้อจำกัดเกี่ยวกับภาพหน้าจอและ DLP: หากนโยบายขององค์กร (DisableScreenshots หรือกฎการป้องกันข้อมูลรั่วไหล (DLP)) ปิดใช้การจับภาพหน้าจอ chrome.debugger.attach() จะดำเนินการไม่สำเร็จพร้อมข้อความแสดงข้อผิดพลาดต่อไปนี้

    "Screenshot capture is restricted by policy."

โปรไฟล์ส่วนตัวและสภาพแวดล้อมที่ไม่มีการจัดการจะยังคงมีสิทธิ์เข้าถึง chrome.debugger แบบไม่จำกัดเช่นเดิม

API chrome.debugger ให้สิทธิ์เข้าถึงโปรโตคอลเครื่องมือสำหรับนักพัฒนาเว็บใน Chrome (CDP) โดยตรงเพื่อความสามารถที่มีประสิทธิภาพ ซึ่งรวมถึงการประเมินสคริปต์ที่กำหนดเองและการสกัดกั้นเครือข่าย เนื่องจาก CDP ทำงานภายใต้โมเดลต้นทางของแพลตฟอร์มเว็บ การกรองตามต้นทางจึงไม่สามารถจำกัด CDP ได้อย่างปลอดภัย ดังนั้น Chrome 155 จึงแก้ไขปัญหานี้ด้วยโมเดลแบบทั้งหมดหรือไม่มีเลย โดยตรวจสอบนโยบายองค์กรล่วงหน้าในการเรียกใช้ chrome.debugger.attach() แต่ละครั้ง

จัดการกับการปฏิเสธการแนบอย่างเหมาะสม

จัดการการปฏิเสธการแนบในโค้ดส่วนขยายเสมอเพื่อให้ความคิดเห็นที่ชัดเจนแก่ผู้ใช้ระดับองค์กร

// Promise-based (Manifest V3)
try {
  await chrome.debugger.attach({ tabId }, "1.3");
} catch (error) {
  if (error.message.includes("Host access is restricted by policy")) {
    console.warn("Debugger attach blocked: Extension has host restrictions configured by enterprise policy.");
  } else if (error.message.includes("Screenshot capture is restricted by policy")) {
    console.warn("Debugger attach blocked: Screenshots or DLP restrictions are enforced by enterprise policy.");
  } else {
    console.warn("Debugger attach failed:", error.message);
  }
}

// Callback-based
chrome.debugger.attach({ tabId }, "1.3", () => {
  if (chrome.runtime.lastError) {
    console.warn("Debugger attach failed:", chrome.runtime.lastError.message);
  }
});

พิจารณา API ระดับสูงทางเลือก

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

  • ใช้ chrome.scripting API เพื่อเรียกใช้สคริปต์และแทรกสไตล์ลงในหน้าที่ได้รับอนุญาต
  • ใช้ API chrome.declarativeNetRequest เพื่อตรวจสอบ แก้ไข หรือบล็อกคำขอเครือข่ายแบบประกาศ
  • ใช้ chrome.cookies API ที่มีสิทธิ์ของโฮสต์มาตรฐาน

คำแนะนำสำหรับผู้ดูแลระบบขององค์กร

อัปเดต (4 พฤศจิกายน 2026): การบังคับใช้นโยบาย Chrome 155 ได้รับการย้อนกลับผ่านการอัปเดตการกำหนดค่าฝั่งเซิร์ฟเวอร์ ซึ่ง Chrome จะดาวน์โหลดโดยอัตโนมัติและมีผลหลังจากรีสตาร์ท หากต้องการปิดใช้การบังคับใช้โดยไม่ต้องรอการอัปเดตนี้ ให้เปิด Chrome ด้วยแฟล็กบรรทัดคำสั่ง --disable-features=ExtensionDebuggerStrictPolicyRestrictions

คำแนะนำต่อไปนี้จะยังคงมีผลจนกว่าการย้อนกลับจะมีผล

ผู้ดูแลระบบระดับองค์กรที่จัดการนโยบายส่วนขยายควรทราบว่าส่วนขยายที่ต้องใช้สิทธิ์โปรแกรมแก้ไขข้อบกพร่องจะไม่สามารถทำงานร่วมกับข้อจำกัดโฮสต์บางส่วน (runtime_blocked_hosts) ได้ หากส่วนขยายต้องใช้ chrome.debugger จะต้องไม่มีโฮสต์ที่ถูกบล็อกซึ่งกำหนดค่าไว้ใน ExtensionSettings

หากปิดใช้การจับภาพหน้าจอโดยใช้ DisableScreenshots หรือกฎการป้องกันข้อมูลรั่วไหล (DLP) chrome.debugger.attach() จะไม่สำเร็จ

องค์กรที่ต้องการรายการที่บล็อกของโฮสต์หรือข้อจำกัดของภาพหน้าจอควรตรวจสอบว่าส่วนขยายภายในหรือส่วนขยายที่ได้รับอนุมัติสามารถย้ายข้อมูลไปยัง API ระดับที่สูงขึ้น เช่น chrome.scripting หรือ chrome.declarativeNetRequest ได้หรือไม่

แชร์ความคิดเห็น

ดูรายละเอียดเพิ่มเติมได้ที่เอกสารประกอบเกี่ยวกับ API ของ chrome.debugger หากมีคำถามหรือความคิดเห็น โปรดติดต่อเราที่ Chromium Extensions Google Group