الوصف
تتيح واجهة برمجة التطبيقات chrome.webAuthenticationProxy
لبرامج الاتصال عن بُعد بين أجهزة الكمبيوتر التي تعمل على جهاز مضيف بعيد اعتراض طلبات Web Authentication API (WebAuthn) من أجل معالجتها على جهاز عميل محلي.
الأذونات
webAuthenticationProxy
مدى التوفّر
الأنواع
CreateRequest
الخصائص
- requestDetailsJson
سلسلة
يتم تحويل قيمة
PublicKeyCredentialCreationOptions
التي تم تمريرها إلىnavigator.credentials.create()
إلى سلسلة JSON. يتوافق تنسيق التسلسل معPublicKeyCredential.parseCreationOptionsFromJSON()
. - requestId
الرقم
معرّف مبهم للطلب.
CreateResponseDetails
الخصائص
- خطأ
DOMExceptionDetails اختياري
تمثّل هذه السمة
DOMException
التي تم الحصول عليها من الطلب عن بُعد، إن وُجدت. - requestId
الرقم
تمثّل هذه السمة
requestId
الخاصة بـCreateRequest
. - responseJson
سلسلة اختيارية
تمثّل
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
سلسلة اختيارية
تمثّل
PublicKeyCredential
، التي يتم عرضها من خلال الطلب البعيد، إذا كان ذلك ممكنًا، تسلسل البيانات على شكل سلسلة JSON من خلال استدعاء href="https://w3c.github.io/webauthn/#dom-publickeycredential-tojson">PublicKeyCredential.toJSON()
.
IsUvpaaRequest
الخصائص
- requestId
الرقم
معرّف مبهم للطلب.
IsUvpaaResponseDetails
الخصائص
- isUvpaa
قيمة منطقية
- requestId
الرقم
الطُرق
attach()
chrome.webAuthenticationProxy.attach(): Promise<string | undefined>
يُستخدَم لجعل هذه الإضافة هي الخادم الوكيل النشط لطلبات Web Authentication API.
عادةً ما تستدعي إضافات سطح المكتب البعيد هذه الطريقة بعد رصد ربط جلسة بعيدة بهذا المضيف. بعد أن تعرض هذه الطريقة بدون خطأ، يتم تعليق المعالجة العادية لطلبات WebAuthn، ويتم إنشاء أحداث من واجهة برمجة التطبيقات هذه.
يتعذّر تنفيذ هذه الطريقة ويظهر خطأ إذا كان هناك ملحق مختلف مرفقًا.
يجب أن تتصل الإضافة المرفقة بالدالة detach()
بعد انتهاء جلسة سطح المكتب البعيد من أجل استئناف المعالجة العادية لطلبات WebAuthn. تصبح الإضافات غير مرتبطة تلقائيًا إذا تم إلغاء تحميلها.
راجِع حدث onRemoteSessionStateChange
للإشارة إلى تغيير في ربط الجلسة عن بُعد من تطبيق أصلي إلى الإضافة (التي قد تكون معلّقة).
المرتجعات
-
Promise<string | undefined>
completeCreateRequest()
chrome.webAuthenticationProxy.completeCreateRequest(
details: CreateResponseDetails,
): Promise<void>
تعرض هذه السمة نتيجة مكالمة navigator.credentials.create()
. يجب أن تنفّذ الإضافة هذا الإجراء لكل حدث onCreateRequest
تلقّته، ما لم يتم إلغاء الطلب (في هذه الحالة، يتم تنشيط حدث onRequestCanceled
).
المعلمات
- التفاصيل
المرتجعات
-
Promise<void>
completeGetRequest()
chrome.webAuthenticationProxy.completeGetRequest(
details: GetResponseDetails,
): Promise<void>
تعرض هذه السمة نتيجة مكالمة navigator.credentials.get()
. يجب أن تنفّذ الإضافة هذا الإجراء لكل حدث onGetRequest
تلقّته، ما لم يتم إلغاء الطلب (في هذه الحالة، يتم تنشيط حدث onRequestCanceled
).
المعلمات
- التفاصيل
المرتجعات
-
Promise<void>
completeIsUvpaaRequest()
chrome.webAuthenticationProxy.completeIsUvpaaRequest(
details: IsUvpaaResponseDetails,
): Promise<void>
تعرض هذه السمة نتيجة مكالمة PublicKeyCredential.isUserVerifyingPlatformAuthenticator()
. يجب أن تطلب الإضافة هذا الإذن لكل حدث onIsUvpaaRequest
تلقّته.
المعلمات
- التفاصيل
المرتجعات
-
Promise<void>
detach()
chrome.webAuthenticationProxy.detach(): Promise<string | undefined>
يزيل هذه الإضافة من أن تكون خادم وكيل نشطًا لطلبات Web Authentication API.
يتم عادةً استدعاء هذه الطريقة عندما ترصد الإضافة أنّه تم إنهاء جلسة سطح المكتب البعيد. بعد أن تعرض هذه الطريقة النتيجة، تتوقف الإضافة عن العمل كوكيل نشط لطلب Web Authentication API.
راجِع حدث onRemoteSessionStateChange
للإشارة إلى تغيير في ربط الجلسة عن بُعد من تطبيق أصلي إلى الإضافة (التي قد تكون معلّقة).
المرتجعات
-
Promise<string | undefined>
الفعاليات
onCreateRequest
chrome.webAuthenticationProxy.onCreateRequest.addListener(
callback: function,
)
يتم إطلاق هذا الحدث عند إجراء طلب WebAuthn navigator.credentials.create()
. يجب أن تقدّم الإضافة ردًا من خلال الاتصال بـ completeCreateRequest()
باستخدام requestId
من requestInfo
.
المعلمات
- callback
دالة
تظهر المَعلمة
callback
على النحو التالي:(requestInfo: CreateRequest) => void
- requestInfo
-
onGetRequest
chrome.webAuthenticationProxy.onGetRequest.addListener(
callback: function,
)
يتم إطلاق هذا الحدث عند إجراء طلب WebAuthn navigator.credentials.get(). يجب أن تقدّم الإضافة ردًا من خلال الاتصال بـ completeGetRequest()
باستخدام requestId
من requestInfo
المعلمات
- callback
دالة
تظهر المَعلمة
callback
على النحو التالي:(requestInfo: GetRequest) => void
- requestInfo
-
onIsUvpaaRequest
chrome.webAuthenticationProxy.onIsUvpaaRequest.addListener(
callback: function,
)
يتم إطلاق هذا الحدث عند إجراء مكالمة PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable()
. يجب أن تقدّم الإضافة ردًا من خلال الاتصال بـ completeIsUvpaaRequest()
باستخدام requestId
من requestInfo
المعلمات
- callback
دالة
تظهر المَعلمة
callback
على النحو التالي:(requestInfo: IsUvpaaRequest) => void
- requestInfo
-
onRemoteSessionStateChange
chrome.webAuthenticationProxy.onRemoteSessionStateChange.addListener(
callback: function,
)
يمكن أن يتسبّب تطبيق أصلي مرتبط بهذا الامتداد في إطلاق هذا الحدث من خلال الكتابة إلى ملف يحمل اسمًا يساوي رقم تعريف الامتداد في دليل باسم WebAuthenticationProxyRemoteSessionStateChange
داخل دليل بيانات المستخدم التلقائي.
يجب أن يكون محتوى الملف فارغًا. أي أنّه ليس من الضروري تغيير محتوى الملف لتفعيل هذا الحدث.
قد يستخدم تطبيق المضيف الأصلي آلية الأحداث هذه للإشارة إلى تغيير محتمل في حالة الجلسة البعيدة (أي من منفصلة إلى مرتبطة، أو العكس) بينما قد يتم تعليق عامل خدمة الإضافة. في معالج هذا الحدث، يمكن للإضافة استدعاء طريقتَي واجهة برمجة التطبيقات attach()
أو detach()
وفقًا لذلك.
يجب تسجيل معالج الأحداث بشكل متزامن في وقت التحميل.
المعلمات
- callback
دالة
تظهر المَعلمة
callback
على النحو التالي:() => void
onRequestCanceled
chrome.webAuthenticationProxy.onRequestCanceled.addListener(
callback: function,
)
يتم تشغيل هذا الحدث عند إلغاء حدث onCreateRequest
أو onGetRequest
(لأنّ المتصل أوقف طلب WebAuthn أو لأنّ المهلة انتهت). عند تلقّي هذا الحدث، يجب أن تلغي الإضافة معالجة الطلب ذي الصلة من جهة العميل. لا يمكن للإضافات إكمال طلب بعد إلغائه.
المعلمات
- callback
دالة
تظهر المَعلمة
callback
على النحو التالي:(requestId: number) => void
- requestId
الرقم
-