กำหนดค่านโยบาย JavaScript ที่ทำแซนด์บ็อกซ์

คุณสามารถกำหนดค่าสคริปต์นโยบายที่จำกัดสิทธิ์ของคอนเทนเนอร์ฝั่งเซิร์ฟเวอร์ได้ หน้านี้จะแสดงวิธีกำหนดค่าไฟล์นโยบายสำหรับคอนเทนเนอร์ วิธีการเหล่านี้ขอสมมุติว่าคุณคุ้นเคยกับนโยบายเทมเพลตที่กำหนดเองสำหรับ Tag Manager อยู่แล้ว

ไฟล์นโยบายฝั่งเซิร์ฟเวอร์คือไฟล์ JavaScript ที่ใช้ไวยากรณ์ gtag.js ในการกำหนดและลงทะเบียนนโยบายอย่างน้อย 1 รายการ

  1. สร้างไฟล์ JavaScript ที่สร้างและลงทะเบียนนโยบายอย่างน้อย 1 รายการ ฟังก์ชันนโยบายแต่ละรายการจะมีการลงทะเบียนสำหรับสิทธิ์ที่เฉพาะเจาะจงหรือสิทธิ์ทั้งหมด ฟังก์ชันนโยบายจะปฏิเสธคำขอสิทธิ์เมื่อแสดงผลเป็น "เท็จ" หรือส่งข้อยกเว้น เช่น

    gtag('policy', 'all', function(container, policy, data) {
      // This function will run for every permission check. Return true to
      // allow the permission check. Return false or throw an exception to
      // deny the permission check.
    
      // container is the container id (e.g. GTM-ABC123)
      // policy is the permission type (e.g. get_cookies)
      // data is an object containing data about the permission request
    
      // This policy applies to only one container. This check allows the
      // same policy file to apply to more than one Tag Manager server
      // container.
      if (container !== 'GTM-ABC123') return true;
    
      // Since this code runs on all permission checks, conditionally check
      // the permission type and decide to permit or deny the permission.
      switch (policy) {
    
        // Container GTM-ABC123 can send HTTP requests. Everything else is
        // prohibited.
        case 'send_http':
          return true;
    
        // All other permission requests are denied.
        default:
          return false;
      }
    });
    
    gtag('policy', 'get_cookies', function(container, policy, data) {
      // This function will run for checks on the get_cookies permission.
    
      // Deny all permission checks to read cookies except for the 'user_id'
      // cookie. This check applies to all containers that load this policy
      // file.
      return data.name === 'user_id';
    });
    
  2. ฝากไฟล์ JavaScript ใน HTTPS URL ที่เข้าถึงได้แบบสาธารณะ ไฟล์อาจโฮสต์บนเว็บเซิร์ฟเวอร์ใดก็ได้ แต่ขั้นตอนด้านล่างอธิบายวิธีโฮสต์ไฟล์ดังกล่าวในที่เก็บข้อมูล Google Cloud Storage

    1. ไปที่ console.cloud.google.com และเลือกโปรเจ็กต์ที่ด้านบนของหน้า
    2. เลือกพื้นที่เก็บข้อมูล -> เบราว์เซอร์ในการนําทางด้านซ้าย
    3. คลิกสร้างที่เก็บข้อมูล
    4. ทำตามขั้นตอนเพื่อสร้างที่เก็บข้อมูล สําหรับการควบคุมการเข้าถึง ให้เลือกแบบละเอียด
    5. คลิกอัปโหลดไฟล์ แล้วอัปโหลดไฟล์ JavaScript นโยบาย
    6. เมื่ออัปโหลดไฟล์แล้ว ให้คลิกชื่อไฟล์ แล้วเลือกแก้ไขสิทธิ์
    7. คลิกเพิ่มรายการด้วยข้อมูลต่อไปนี้
      • เอนทิตี: สาธารณะ
      • ชื่อ: allUsers
      • เข้าถึง: Reader
    8. คลิกบันทึก
    9. คลิก ลูกศรย้อนกลับ เพื่อกลับไปยังหน้าก่อนหน้า
    10. ในบรรทัดสำหรับไฟล์นโยบาย ให้คลิกคัดลอก URL
  3. ทำตามขั้นตอนในสร้างหรือกำหนดค่าเซิร์ฟเวอร์การติดแท็กใหม่เพื่อแก้ไขการกำหนดค่าเซิร์ฟเวอร์การติดแท็ก เมื่อระบบแจ้งให้ป้อน URL ของนโยบาย ให้ป้อน URL จากขั้นตอนที่ 2