अनुमतियों की नीति का इस्तेमाल करके, ऑडियंस मैनेजमेंट को कंट्रोल करने का तरीका जानें. इसके अलावा, .well-known अनुमतियों के यूआरएल को कॉन्फ़िगर करके, किसी तीसरे पक्ष को सौंपे जाने का तरीका भी जानें.
joinAdInterestGroup()
के लिए कॉल करने के कॉन्टेक्स्ट का ऑरिजिन, इंटरेस्ट ग्रुप के मालिक के ऑरिजिन से मेल खाना चाहिए. इसलिए, joinAdInterestGroup()
को किसी iframe (जैसे, डीएसपी से) से कॉल करना होगा. ऐसा तब तक किया जाना चाहिए, जब तक इंटरेस्ट ग्रुप के मालिक की शुरुआत की जगह, मौजूदा दस्तावेज़ के ऑरिजिन से मेल न खाती हो. उदाहरण के लिए, अपने इंटरेस्ट ग्रुप वाली वेबसाइट.
joinAdInterestGroup()
को इनसे अनुमति चाहिए:
- विज़िट की जा रही साइट
- इंटरेस्ट ग्रुप का मालिक
इसका मतलब है कि dsp.example.com
की अनुमति के बिना, malicious.example
के लिए dsp.example.com
के मालिकाना हक वाले इंटरेस्ट ग्रुप के लिए, joinAdInterestGroup()
को कॉल करना संभव नहीं है.
देखी गई साइट से अनुमति
एक ही ऑरिजिन या क्रॉस-ऑरिजिन से अनुमति दी जा सकती है.
डिफ़ॉल्ट रूप से, उन joinAdInterestGroup()
कॉल के लिए अनुमति दी जाती है जो उसी ऑरिजिन से किए गए हों जिसे साइट पर विज़िट किया गया था. दूसरे शब्दों में, मौजूदा पेज के टॉप-लेवल फ़्रेम के ऑरिजिन से ही कॉल करने की अनुमति दी जाती है. साइटें, joinAdInterestGroup()
कॉल को बंद करने के लिए, join-ad-interest-group
की अनुमतियों से जुड़ी नीति के हेडर का इस्तेमाल कर सकती हैं.
joinAdInterestGroup()
के क्रॉस-ऑरिजिन (मौजूदा पेज से अलग ऑरिजिन) को कॉल करने की सुविधा सिर्फ़ तब सफल हो सकती है, जब विज़िट की जा रही साइट ने अनुमतियों के लिए ऐसी नीति सेट की हो जो क्रॉस-ऑरिजिन iframe से joinAdInterestGroup()
को कॉल करने की अनुमति देती हो.
इंटरेस्ट ग्रुप के मालिक की अनुमति
एक जैसी दिलचस्पी वाले ग्रुप के मालिक की अनुमति, इंटरेस्ट ग्रुप के मालिक के ऑरिजिन के ऑरिजिन वाले iframe से joinAdInterestGroup()
को कॉल करने पर साफ़ तौर पर दी जाती है. उदाहरण के लिए, dsp.example.com
iframe, dsp.example.com
के मालिकाना हक वाले इंटरेस्ट ग्रुप के लिए, joinAdInterestGroup()
को कॉल कर सकता है.
इसका मतलब यह है कि joinAdInterestGroup()
, मालिक के डोमेन पर किसी पेज या iframe पर चल सकता है. इसके अलावा, उसे .well-known
यूआरएल की सूची का इस्तेमाल करके दिए गए अन्य डोमेन को सौंपा जा सकता है.
जब कोई फ़्रेम किसी एक डोमेन पर नेविगेट करता है और किसी दूसरे मालिक वाले इंटरेस्ट ग्रुप के लिए joinAdInterestGroup()
, leaveAdInterestGroup()
या clearOriginJoinedAdInterestGroups()
को कॉल करता है, तो ब्राउज़र यूआरएल https://owner.domain/.well-known/interest-group/permissions/?origin=frame.origin
फ़ेच करेगा. इसमें owner.domain
वह डोमेन है जो इंटरेस्ट ग्रुप का मालिक है और frame.origin
फ़्रेम का ऑरिजिन है. फ़ेच करने की प्रक्रिया, क्रेडेंशियल को मिटाने वाले मोड का इस्तेमाल करती है. इसके लिए, उस फ़्रेम के नेटवर्क पार्टीशन की का इस्तेमाल किया जाता है जिसने तरीके को शुरू किया था. लौटाए गए प्रॉमिस के ज़रिए, क्रॉस-ऑरिजिन डेटा को अनचाहे तरीके से लीक होने से बचाने के लिए, फ़ेच कोर्स मोड का इस्तेमाल करता है. फ़ेच किए गए रिस्पॉन्स का JSON MIME टाइप और इस फ़ॉर्मैट में होना चाहिए:
{ "joinAdInterestGroup": true/false,
"leaveAdInterestGroup": true/false
}
इससे पता चलता है कि पाथ में मौजूद ऑरिजिन के पास, जिस डोमेन पर अनुरोध भेजा गया है उसके मालिकाना हक वाले इंटरेस्ट ग्रुप में शामिल होने या उन्हें छोड़ने की अनुमति है या नहीं. छूटी हुई अनुमतियों को गलत माना जाता है. 0 के lifetimeMs
के साथ navigator.joinAdInterestGroup()
को कॉल करने से, इंटरेस्ट ग्रुप खत्म हो जाते हैं. इसलिए, joinAdInterestGroup: true
किसी ऑरिजिन को navigator.leaveAdInterestGroup()
को कॉल करने की अनुमति भी देता है. भले ही, leaveadInterestGroup
मौजूद न हो या 'गलत' पर सेट हो. ध्यान दें कि leaveAdInterestGroup()
और clearOriginJoinedAdInterestGroups()
, दोनों leaveAdInterestGroup
अनुमति की जांच करते हैं.