browser.webAuthenticationProxy

الوصف

تتيح واجهة برمجة التطبيقات chrome.webAuthenticationProxy لبرامج الاتصال عن بُعد بين أجهزة الكمبيوتر التي تعمل على جهاز مضيف بعيد اعتراض طلبات واجهة برمجة التطبيقات Web Authentication API‏ (WebAuthn) من أجل معالجتها على جهاز عميل محلي.

الأذونات

webAuthenticationProxy

مدى التوفّر

الإصدار 115 من Chrome والإصدارات الأحدث browser.* ‎ منذ الإصدار 148 من Chrome الإصدار 3 من MV والإصدارات الأحدث

الأنواع

CreateRequest

الخصائص

  • requestDetailsJson

    سلسلة

    تم تمرير PublicKeyCredentialCreationOptions إلى navigator.credentials.create()، وتم تسلسله كسلسلة JSON. يتوافق تنسيق التسلسل مع PublicKeyCredential.parseCreationOptionsFromJSON().

  • requestId

    الرقم

    معرّف غير واضح للطلب

CreateResponseDetails

الخصائص

  • خطأ

    DOMExceptionDetails اختياري

    ‫DOMException الذي تم الحصول عليه من الطلب عن بُعد، إن توفّر.

  • requestId

    الرقم

    ‫requestId لـ CreateRequest

  • responseJson

    string اختياري

    ‫PublicKeyCredential، الذي ينتج عن الطلب عن بُعد، إن وُجد، ويتم تسلسله كسلسلة JSON من خلال استدعاء href="https://w3c.github.io/webauthn/#dom-publickeycredential-tojson"> PublicKeyCredential.toJSON().

DOMExceptionDetails

الخصائص

  • رسالة

    سلسلة

  • الاسم

    سلسلة

GetRequest

الخصائص

  • requestDetailsJson

    سلسلة

    تم تمرير PublicKeyCredentialRequestOptions إلى navigator.credentials.get()، وتم تسلسله كسلسلة JSON. يتوافق تنسيق التسلسل مع PublicKeyCredential.parseRequestOptionsFromJSON().

  • requestId

    الرقم

    معرّف غير واضح للطلب

GetResponseDetails

الخصائص

  • خطأ

    DOMExceptionDetails اختياري

    ‫DOMException الذي تم الحصول عليه من الطلب عن بُعد، إن توفّر.

  • requestId

    الرقم

    ‫requestId لـ CreateRequest

  • responseJson

    string اختياري

    ‫PublicKeyCredential، الذي ينتج عن الطلب عن بُعد، إن وُجد، ويتم تسلسله كسلسلة JSON من خلال استدعاء href="https://w3c.github.io/webauthn/#dom-publickeycredential-tojson"> PublicKeyCredential.toJSON().

IsUvpaaRequest

الخصائص

  • requestId

    الرقم

    معرّف غير واضح للطلب

IsUvpaaResponseDetails

الخصائص

  • isUvpaa

    قيمة منطقية

  • requestId

    الرقم

الطُرق

attach()

browser.webAuthenticationProxy.attach(): Promise<string | undefined>

يضبط هذا الإعداد هذه الإضافة كخادم وكيل نشط لطلبات Web Authentication API.

عادةً ما تستدعي إضافات سطح المكتب البعيد هذه الطريقة بعد رصد إرفاق جلسة عن بُعد بهذا المضيف. بعد عرض هذه الطريقة بدون خطأ، يتم تعليق المعالجة العادية لطلبات WebAuthn، ويتم عرض الأحداث من واجهة برمجة التطبيقات الخاصة بهذه الإضافة.

وتتعذّر هذه الطريقة مع ظهور خطأ إذا كانت هناك إضافة مختلفة مرفقة حاليًا.

يجب أن تستدعي الإضافة المرفقة detach() بعد انتهاء جلسة سطح المكتب البعيد من أجل استئناف معالجة طلبات WebAuthn العادية. يتم فصل الإضافات تلقائيًا في حال إلغاء تحميلها.

يُرجى الرجوع إلى الحدث onRemoteSessionStateChange للإشارة إلى تغيير في مرفق الجلسة عن بُعد من تطبيق أصلي إلى الإضافة (التي قد تكون معلّقة).

المرتجعات

  • Promise<string | undefined>

completeCreateRequest()

browser.webAuthenticationProxy.completeCreateRequest(
  details: CreateResponseDetails,
)
: Promise<void>

يُبلغ عن نتيجة مكالمة navigator.credentials.create(). يجب أن تستدعي الإضافة هذه الدالة لكل حدث onCreateRequest تتلقّاه، ما لم يتم إلغاء الطلب (وفي هذه الحالة، يتم تنشيط حدث onRequestCanceled).

المعلمات

المرتجعات

  • وعد<فراغ>

completeGetRequest()

browser.webAuthenticationProxy.completeGetRequest(
  details: GetResponseDetails,
)
: Promise<void>

يُبلغ عن نتيجة مكالمة navigator.credentials.get(). يجب أن تستدعي الإضافة هذه الدالة لكل حدث onGetRequest تتلقّاه، ما لم يتم إلغاء الطلب (وفي هذه الحالة، يتم تنشيط حدث onRequestCanceled).

المعلمات

المرتجعات

  • وعد<فراغ>

completeIsUvpaaRequest()

browser.webAuthenticationProxy.completeIsUvpaaRequest(
  details: IsUvpaaResponseDetails,
)
: Promise<void>

يُبلغ عن نتيجة مكالمة PublicKeyCredential.isUserVerifyingPlatformAuthenticator(). يجب أن تستدعي الإضافة هذه الطريقة لكل حدث onIsUvpaaRequest تتلقّاه.

المعلمات

المرتجعات

  • وعد<فراغ>

detach()

browser.webAuthenticationProxy.detach(): Promise<string | undefined>

تزيل هذه الإضافة من كونها الخادم الوكيل النشط لطلبات Web Authentication API.

يتم عادةً استدعاء هذه الطريقة عندما ترصد الإضافة أنّه تم إنهاء جلسة سطح المكتب البعيد. بعد عرض هذه الطريقة، تتوقف الإضافة عن العمل كخادم وكيل نشط لطلبات Web Authentication API.

يُرجى الرجوع إلى الحدث onRemoteSessionStateChange للإشارة إلى تغيير في مرفق الجلسة عن بُعد من تطبيق أصلي إلى الإضافة (التي قد تكون معلّقة).

المرتجعات

  • Promise<string | undefined>

الفعاليات

onCreateRequest

browser.webAuthenticationProxy.onCreateRequest.addListener(
  callback: function,
)

يتم تفعيل هذا الحدث عند إجراء طلب WebAuthn navigator.credentials.create(). يجب أن تقدّم الإضافة ردًا من خلال طلب completeCreateRequest() باستخدام requestId من requestInfo.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (requestInfo: CreateRequest) => void

onGetRequest

browser.webAuthenticationProxy.onGetRequest.addListener(
  callback: function,
)

يتم تشغيل هذا الحدث عند إجراء طلب navigator.credentials.get()‎ من خلال WebAuthn. يجب أن تقدّم الإضافة ردًا من خلال طلب completeGetRequest() باستخدام requestId من requestInfo

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (requestInfo: GetRequest) => void

onIsUvpaaRequest

browser.webAuthenticationProxy.onIsUvpaaRequest.addListener(
  callback: function,
)

يتم تفعيله عند إجراء مكالمة PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable(). يجب أن تقدّم الإضافة ردًا من خلال طلب completeIsUvpaaRequest() باستخدام requestId من requestInfo

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (requestInfo: IsUvpaaRequest) => void

onRemoteSessionStateChange

browser.webAuthenticationProxy.onRemoteSessionStateChange.addListener(
  callback: function,
)

يمكن أن يتسبب تطبيق أصلي مرتبط بهذه الإضافة في بدء هذا الحدث من خلال الكتابة في ملف يحمل اسمًا يساوي معرّف الإضافة في دليل باسم WebAuthenticationProxyRemoteSessionStateChange داخل دليل بيانات المستخدم التلقائي

يجب أن تكون محتويات الملف فارغة. أي أنّه ليس من الضروري تغيير محتوى الملف لتشغيل هذا الحدث.

قد يستخدم تطبيق المضيف الأصلي آلية الحدث هذه للإشارة إلى تغيير محتمل في حالة الجلسة عن بُعد (أي من "غير متصل" إلى "متصل" أو العكس) بينما قد يكون مشغّل خدمات الإضافة معلّقًا. في معالج هذا الحدث، يمكن للإضافة طلب طريقتَي واجهة برمجة التطبيقات attach() أو detach() وفقًا لذلك.

يجب تسجيل متتبِّع الأحداث بشكل متزامن في وقت التحميل.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

    () => void

onRequestCanceled

browser.webAuthenticationProxy.onRequestCanceled.addListener(
  callback: function,
)

يتم تنشيطه عند إلغاء حدث onCreateRequest أو onGetRequest (بسبب إلغاء المتصل لطلب WebAuthn أو بسبب انتهاء مهلته). عند تلقّي هذا الحدث، على الإضافة إلغاء معالجة الطلب ذي الصلة من جهة العميل. لا يمكن للإضافات إكمال طلب بعد إلغائه.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (requestId: number) => void

    • requestId

      الرقم