أرقام تعريف إعداد التقارير

التعرّف على آلية عمل أرقام التعريف المخصّصة للإبلاغ في مزاد "الجمهور المحمي"

نظرة عامة

معرّفات إعداد التقارير هي معرّفات مرتبطة بإعلان معيّن ومتوفّرة للاستخدام في إنشاء عرض أسعار وتقييم عرض أسعار وإعداد التقارير. يقدّم المشتري أرقام تعريف إعداد التقارير في إعدادات مجموعة الاهتمامات، وتصبح متاحة في generateBid() وscoreAd() وreportResult() وreportWin() بموجب شروط مختلفة يتم مناقشتها في هذا الدليل.

تتيح لك أرقام التعريف المخصّصة للإبلاغ الإبلاغ عن معرّف إعلان، كما تتيح لك حالات استخدام مثل الصفقات.

تصبح أرقام تعريف إعداد التقارير متاحة لوظائف البائع والمشتري في Protected Audience
مدى توفّر أرقام تعريف إعداد التقارير

هناك ثلاثة أرقام تعريف للإبلاغ من نوعَين:

  • أرقام تعريف إعداد التقارير غير القابلة للاختيار
    • buyerReportingId (سلسلة)
    • buyerAndSellerReportingId (سلسلة)
  • أرقام تعريف إعداد التقارير القابلة للاختيار
    • selectableBuyerAndSellerReportingIds (مصفوفة من السلاسل النصية)

تختلف طريقة عمل أرقام تعريف إعداد التقارير حسب ما إذا كان يتم استخدام أرقام تعريف إعداد تقارير قابلة للاختيار. عند استخدام أرقام تعريف إعداد التقارير غير القابلة للاختيار فقط، تصبح هذه الأرقام متاحة داخل وظائف إعداد التقارير فقط. عند استخدام أرقام تعريف قابلة للاختيار في التقارير، بالإضافة إلى أرقام تعريف غير قابلة للاختيار في التقارير إذا لزم الأمر، تصبح جميع الأرقام التعريفية المحدّدة متاحة في generateBid() وscoreAd() أيضًا.

أرقام تعريف إعداد التقارير غير القابلة للاختيار

تصبح أرقام تعريف إعداد التقارير متاحة لوظائف البائع والمشتري في Protected Audience
مدى توفّر أرقام تعريف إعداد التقارير القابلة للاختيار

buyerReportingId وbuyerAndSellerReportingId هما معرّفَا إعداد تقارير غير قابلَين للاختيار تم تحديدهما في إعدادات المجموعة ذات الاهتمامات المشتركة، ويصبحان متاحَين في دوال إعداد تقارير المشترين والبائعين. لن يتمّ تشغيل وظائف إعداد تقارير المشترين والبائعين إلّا للإعلان الفائز، وستتلقّى الوظائف أرقام تعريف إعداد التقارير المحدّدة لهذا الإعلان الفائز.

عند استخدامها بدون أرقام تعريف تقارير قابلة للاختيار، تتلقّى وظيفة إعداد تقارير المشترين buyerReportingId أو buyerAndSellerReportingId استنادًا إلى سلوك الاستبدال، وتتلقّى وظيفة إعداد تقارير البائعين buyerAndSellerReportingId. إذا لم يتمّ تحديد buyerReportingId أو buyerAndSellerReportingId في إعدادات مجموعة الاهتمامات، ستتلقّى الدالة reportWin() اسم مجموعة الاهتمامات (interestGroupName) لعرض السعر الفائز.

لا تتوفّر المعرّفات غير القابلة للاختيار في generateBid() وscoreAd() إذا لم يتم استخدامها مع المعرّفات القابلة للاختيار في التقارير.

أرقام تعريف إعداد التقارير في مجموعات الاهتمامات

يحدّد المشتري أرقام تعريف إعداد التقارير لكل إعلان في مجموعة اهتمامات:

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
    // buyerAndSellerReportingId goes to the buyer and seller reporting functions
    buyerAndSellerReportingId: 'bsrid123',
    // buyerReportingId is defined here as an example, but
    // is not used due to the overwrite rules described later
    buyerReportingId: 'brid123',
  }]
});

إعداد تقارير البائعين

خلال مرحلة إعداد تقارير البائع، تصبح قيمة buyerAndSellerReportingId متاحة reportResult():

function reportResult(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId // 'bsrid123'
  } = browserSignals;

  sendReportTo(`https://seller.example/report?bsrid=${buyerAndSellerReportingId}`);
}

قبل توفّر رقم التعريف داخل reportResult()، يتم التحقّق من أنّه يتوافق مع متطلّبات ميزة "المَعلمة k" من خلال مالك مجموعة الاهتمامات وعنوان URL لنصّ عروض الأسعار وعنوان URL لعرض الإعلان وحجم الإعلان (يتم استبعاد حجم الإعلان من عملية التحقّق هذه حتى الربع الأول من عام 2025 على الأقل). إذا لم تكن مجهولة الهوية بدرجة k، سيستمر تشغيل الدالة reportResult()، ولكن لن تتوفّر قيمة معرّف إعداد التقارير داخل الدالة.

إعداد تقارير المشترين

خلال مرحلة إعداد تقارير المشترين في المزاد، يصبح معرّف إعداد تقارير واحد متاحًا reportWin(). إذا تمّ تحديد أكثر من رقم تعريف واحد لإعداد التقارير في مجموعة الاهتمامات، يتمّ تطبيق قاعدة استبدال حيث يتمّ استبدال buyerAndSellerReportingId بـ buyerReportingId:

  • إذا تم تحديد كل من buyerAndSellerReportingId وbuyerReportingId، ستحلّ buyerAndSellerReportingId محلّ buyerReportingId، وستتوفّر buyerAndSellerReportingId داخل reportWin().
  • إذا تم تحديد buyerReportingId فقط، ستكون buyerReportingId متاحة.
  • إذا لم يتم تحديد buyerAndSellerReportingId أو buyerReportingId، ستكون السمة interestGroupName متاحة.
function reportWin(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId // 'bsrid123'
  } = browserSignals;

  sendReportTo(`https://seller.example/report?bsrid=${buyerAndSellerReportingId}`);
}

يتم التحقّق من رقم تعريف إعداد التقارير الذي يصبح متاحًا داخل reportWin() للتأكّد من أنّه يتوافق مع مبدأ "المجهوليّة التدرّجية" مع مالك مجموعة الاهتمامات وعنوان URL لنص عروض الأسعار وعنوان URL لعرض الإعلان وحجم الإعلان (يتم استبعاد حجم الإعلان من هذا التحقّق حتى الربع الأول من عام 2025 على الأقل). إذا تعذّر اجتياز عملية التحقّق من إخفاء الهوية وفقًا لعدد k، سيستمر تنفيذ reportWin()، ولكن لن تتوفّر قيمة معرّف إعداد التقارير داخل الدالة.

تم تحديد buyerReportingId فقط

إذا تمّ تحديد buyerReportingId فقط في إعدادات مجموعة الاهتمامات:

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
    buyerReportingId: 'brid123',
  }]
});

بعد ذلك، يكون buyerReportingId متاحًا داخل reportWin():

function reportWin(..., browserSignals, ...) {
  const {
    buyerReportingId, // 'brid123'
  } = browserSignals;
}

قبل أن تصبح reportWin() متاحة buyerReportingId، يتم التحقّق من buyerReportingId من أجل الحفاظ على خصوصية k-anonymity مع مالك مجموعة الاهتمامات وعنوان URL لنص عروض الأسعار وعنوان URL لعرض الإعلان وحجم الإعلان (يتم استبعاد حجم الإعلان من هذا التحقّق حتى الربع الأول من عام 2025 على الأقل).

تمّ تحديد buyerAndSellerReportingId فقط

إذا تمّ تحديد buyerAndSellerReportingId فقط في إعدادات مجموعة الاهتمامات:

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
    buyerAndSellerReportingId: 'bsrid123',
  }]
});

بعد ذلك، يكون buyerAndSellerReportingId متاحًا داخل reportWin():

function reportWin(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId, // 'bsrid123'
  } = browserSignals;
}

قبل أن تصبح reportWin() متاحة buyerAndSellerReportingId، يتم التحقّق من buyerAndSellerReportingId من أجل الحفاظ على خصوصية k-anonymity مع مالك مجموعة الاهتمامات وعنوان URL لنص عروض الأسعار وعنوان URL لعرض الإعلان وحجم الإعلان (يتم استبعاد حجم الإعلان من هذا التحقّق حتى الربع الأول من عام 2025 على الأقل).

تم تحديد كل من buyerAndSellerReportingId وbuyerReportingId

في حال تحديد كلّ من buyerAndSellerReportingId وbuyerReportingId في إعدادات مجموعة الاهتمامات:

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
    buyerReportingId: 'brid123',
    buyerAndSellerReportingId: 'bsrid123',
  }]
});

بعد ذلك، لا يتوفّر سوى buyerAndSellerReportingId داخل reportWin() بسبب سلوك الاستبدال:

function reportWin(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId, // 'bsrid123'
  } = browserSignals;
}

قبل أن تصبح reportWin() متاحة buyerAndSellerReportingId، يتم التحقّق من buyerAndSellerReportingId من أجل الحفاظ على خصوصية k-anonymity مع مالك مجموعة الاهتمامات وعنوان URL لنص عروض الأسعار وعنوان URL لعرض الإعلان وحجم الإعلان (يتم استبعاد حجم الإعلان من هذا التحقّق حتى الربع الأول من عام 2025 على الأقل).

لم يتم تحديد buyerAndSellerReportingId أو buyerReportingId

في حال عدم تحديد أيّ من أرقام تعريف إعداد التقارير في إعدادات المجموعة ذات الاهتمامات المشتركة:

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
  }]
});

بعد ذلك، تتوفّر مجموعة الاهتمامات name داخل reportWin():

function reportWin(..., browserSignals, ...) {
  const {
    interestGroupName, // 'example-interest-group'
  } = browserSignals;
}

قبل أن يصبح اسم مجموعة الاهتمامات (interestGroupName) متاحًا reportWin()، يتم التحقّق من أنّه يتوافق مع مبدأ "المجهوليّة التدرّجية" (k-anonymity) مع مالك مجموعة الاهتمامات وعنوان URL لنصّ عروض الأسعار وعنوان URL لعرض الإعلان وحجم الإعلان (يتم استبعاد حجم الإعلان من عملية التحقّق هذه حتى الربع الأول من عام 2025 على الأقل).

أرقام التعريف القابلة للاختيار في التقارير

تصبح أرقام تعريف إعداد التقارير متاحة لوظائف البائع والمشتري في Protected Audience
مدى توفّر أرقام تعريف إعداد التقارير مع رقم تعريف إعداد تقارير قابل للاختيار

تسمح معرّفات إعداد التقارير القابلة للاختيار للمشتري باختيار معرّف أثناء إنشاء عروض الأسعار، ويُتيح المتصفّح القيمة المحدّدة scoreAd() ودوالّ إعداد التقارير. يتم تقديم قيمة selectableBuyerAndSellerReportingIds، وهي صفيف من السلاسل، إلى generateBid()، ويمكن للمشتري عرض معرّف واحد تم اختياره على أنّه selectedBuyerAndSellerReportingId.

سيتمّ تشغيل الدالتَين generateBid() وscoreAd() لكلّ إعلان محدّد في إعدادات مجموعة الاهتمامات، وستتلقّى أرقام تعريف إعداد التقارير لكلّ إعلان. لن يتمّ تشغيل وظائف إعداد تقارير المشترين والبائعين إلّا للإعلان الفائز، وستتلقّى الوظائف أرقام تعريف إعداد التقارير المحدّدة لهذا الإعلان الفائز.

عند استخدام أرقام تعريف إعداد التقارير غير القابلة للاختيار مع أرقام تعريف إعداد التقارير القابلة للاختيار، يتغيّر سلوكها عن سير العمل الموضّح في القسم السابق. على عكس السلوك الأوّلي للمعلومات التعريفية غير القابلة للاختيار في التقارير والتي لا تتوفّر إلا داخل وظائف إعداد التقارير، تتيح المعلومات التعريفية القابلة للاختيار في التقارير أن تصبح المعلومات التعريفية غير القابلة للاختيار في التقارير متاحة أيضًا داخل generateBid() وscoreAd().

.

مجموعة الاهتمامات المشتركة

حقل أرقام التعريف القابلة للاختيار لإعداد التقارير - selectableBuyerAndSellerReportingIds - هو صفيف من السلاسل التي يحدّدها المشتري في مجموعة الاهتمامات للإعلان. يمكن أيضًا تحديد معرّفات إعداد التقارير غير القابلة للاختيار إلى جانب معرّفات إعداد التقارير القابلة للاختيار:

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
    buyerReportingId: 'brid123',
    buyerAndSellerReportingId: 'bsrid123',
    selectableBuyerAndSellerReportingIds: ['sbsrid1', 'sbsrid2', 'sbsrid3']
  }]
});

إنشاء عروض أسعار المشترين

إذا تمّ تحديد selectableBuyerAndSellerReportingIds في إعدادات مجموعة الاهتمامات، سيصبح متوفّرًا داخل generateBid() مع أرقام التعريف الأخرى لإعداد التقارير التي تمّ تحديدها.

function generateBid(interestGroup, ...) {
  const [{
    buyerReportingId, // 'brid123'
    buyerAndSellerReportingId, // 'bsrid123'
    selectableBuyerAndSellerReportingIds // ['sbsrid1', 'sbsrid2', 'sbsrid3']
  }] = interestGroup.ads;

  return {
    bid: 1,
    render: 'https://buyer.example/ad.html',
    selectedBuyerAndSellerReportingId: 'sbsrid2' // Buyer returns the selected ID
  };
}

يمكن للمشتري اختيار أحد المعرّفات من صفيف selectableBuyerAndSellerReportingIds في generateBid() وإرجاع المعرّف المحدّد على أنّه selectedBuyerAndSellerReportingId. يتم رفض عروض الأسعار إذا لم تكن القيمة المحدّدة متوفّرة في صفيف selectableBuyerAndSellerReportingIds. إذا تمّ تحديد selectableBuyerAndSellerReportingIds في إعدادات مجموعة الاهتمامات، ولم يُرجع المشتري selectedBuyerAndSellerReportingId من generateBid()، ستعود أرقام تعريف إعداد التقارير إلى السلوك الموضّح في أرقام تعريف إعداد التقارير غير القابلة للاختيار.

لا يمكن أن يفوز مقدّم عروض أسعار بقيمة معروضة لسمة selectedbuyerAndSellerReportingId إلا في المزاد إذا كانت قيمة selectedbuyerAndSellerReportingId مجهولة الهوية بشكل جماعي باستخدام مقياس k مع buyerAndSellerReportingId (إذا كان متوفّرًا) وbuyerReportingId (إذا كان متوفّرًا) ومالك مجموعة الاهتمامات وعنوان URL لنص عروض الأسعار وعنوان URL لعرض الإعلان وحجم الإعلان (يتم استبعاد حجم الإعلان من هذا التحقّق حتى الربع الأول من عام 2025 على الأقل).

تقييم إعلانات البائعين

بالنسبة إلى البائع، يصبح selectedBuyerAndSellerReportingId الذي أعاده المشتري من generateBid() متوفّرًا في scoreAd()، بالإضافة إلى buyerAndSellerReportingId إذا تم تحديده في إعدادات مجموعة الاهتمامات.

function scoreAd(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId, // 'bsrid123'
    selectedBuyerAndSellerReportingId, // 'sbsrid2'
  } = browserSignals;

  // ...
}

إعداد تقارير البائعين

بالنسبة إلى تقارير البائعين، يصبح selectedBuyerAndSellerReportingId الذي أعاده المشتري من generateBid() متاحًا في reportResult()، بالإضافة إلى buyerAndSellerReportingId، إذا تم تحديده في مجموعة الاهتمامات.

function reportResult(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId, // 'bsrid123'
    selectedBuyerAndSellerReportingId // 'sbsrid2'
  } = browserSignals;
  
  // ...
}

إذا تمّ تحديد selectableBuyerAndSellerReportingIds في إعدادات مجموعة الاهتمامات، وتمّ عرض selectedBuyerAndSellerReportingId من generateBid()، لن يتمكّن من الفوز بالمزاد ما لم يكن selectedBuyerAndSellerReportingId وbuyerAndSellerReportingId (في حال توفّرهما) مجهولَين من خلال مقياس k مع مالك مجموعة الاهتمامات وعنوان URL لنصّ عروض الأسعار وعنوان URL لعرض الإعلان وحجم الإعلان (يتم استبعاد حجم الإعلان من هذا التحقّق حتى الربع الأول من عام 2025 على الأقل)، ولن يتمّ تنفيذ reportResult() لهذا عرض السعر. لذلك، إذا تمّ استدعاء reportResult() باستخدام قيمة selectedBuyerAndSellerReportingId، يعني ذلك أنّ أرقام تعريف إعداد التقارير اجتازت عملية التحقّق من الخفيّة بدرجة k، وستكون جميع أرقام تعريف إعداد التقارير المحدّدة متاحة داخل reportResult().

إعداد تقارير المشترين

إذا تمّ تحديد selectableBuyerAndSellerReportingIds في إعدادات المجموعة ذات الاهتمامات المشتركة، وتمّ عرض selectedBuyerAndSellerReportingId من generateBid()، ستتوفّر جميع أرقام تعريف إعداد التقارير التي تمّ تحديدها في إعدادات المجموعة ذات الاهتمامات المشتركة. يُرجى العلم أنّه على غرار تقارير البائعين، إذا لم تكن أرقام تعريف الإبلاغ مجهولة الهوية بدرجة k، لن يتمكّنوا من الفوز بالمزاد ولن يتم عرض reportWin() لهذا العرض.

function reportWin(..., browserSignals, ...) {
  const {
    buyerReportingId, // 'brid123'
    buyerAndSellerReportingId, // 'bsrid123'
    selectedBuyerAndSellerReportingId // 'sbsrid2'
  } = browserSignals;

  // ...
}

قواعد الاستبدال

في ما يلي ملخّص لقواعد الاستبدال لكلّ من أرقام تعريف الإبلاغ غير القابلة للاختيار وأرقام تعريف الإبلاغ القابلة للاختيار. يحدِّد المتصفّح أيًّا من selectableBuyerAndSellerReportingIds وbuyerAndSellerReportingId وbuyerReportingId واسم مجموعة الاهتمامات يتم تمريره إلى reportWin() باستخدام المنطق التالي:

  • إذا تم عرض selectedBuyerAndSellerReportingId من عرض سعر، ستكون كلّ من selectedBuyerAndSellerReportingId وbuyerAndSellerReportingId (في حال تحديدها في مجموعة الاهتمامات) وbuyerReportingId (في حال تحديدها في مجموعة الاهتمامات) متاحة لإعداد التقارير.
  • بخلاف ذلك، إذا تمّ تحديد buyerAndSellerReportingId في مجموعة الاهتمامات، سيكون buyerAndSellerReportingId متاحًا فقط لإعداد التقارير.
  • بخلاف ذلك، إذا تمّ تحديد buyerReportingId في مجموعة الاهتمامات، سيكون buyerReportingId متاحًا فقط لإعداد التقارير.
  • في الحالات الأخرى، تتوفّر فقط مجموعة الاهتمامات name لإعداد التقارير.

يوضِّح الجدول التالي سلوك الكتابة فوق البيانات:

هل تمّ تحديد أرقام تعريف إعداد التقارير في إعدادات المجموعة ذات الاهتمامات المشتركة؟ معرّفات إعداد التقارير المتاحة
selectableBuyerAnd
SellerReportingIds
buyerAndSeller
ReportingId
buyerReportingId reportWin() reportResult()
نعم، واخترت
في generateBid()
اختياري اختياري 1) selectedBuyerAnd
SellerReportingIds


2) buyerAndSeller
ReportingId
(في حال تحديدها)

3) buyerReportingId (في حال تحديدها)
1) selectedBuyerAnd
SellerReportingIds


2) buyerAndSeller
ReportingId
(في حال تحديده)

لا، أو لم يتم اختيار
في generateBid()
نعم تم تجاهلها buyerAndSeller
ReportingId
buyerAndSeller
ReportingId
لا، أو لم يتم اختيار
في generateBid()
لا نعم buyerReportingId بدون
لا، أو لم يتم اختيار
في generateBid()
لا لا interestGroupName بدون

التفاعل مع الملاحظات ومشاركتها