chrome.webAuthenticationProxy

توضیحات

chrome.webAuthenticationProxy API به نرم افزار دسکتاپ راه دور که روی یک میزبان راه دور اجرا می شود اجازه می دهد تا درخواست های Web Authentication API (WebAuthn) را رهگیری کند تا آنها را در یک کلاینت محلی مدیریت کند.

مجوزها

webAuthenticationProxy

در دسترس بودن

Chrome 115+ MV3+

انواع

CreateRequest

خواص

  • درخواست جزئیاتJson

    رشته

    PublicKeyCredentialCreationOptions به navigator.credentials.create() منتقل شد و به صورت یک رشته JSON سریال شد. قالب سریال سازی با PublicKeyCredential.parseCreationOptionsFromJSON() سازگار است.

  • درخواست شناسه

    شماره

    یک شناسه غیر شفاف برای درخواست.

CreateResponseDetails

خواص

  • خطا

    DOMExceptionDetails اختیاری است

    DOMException توسط درخواست راه دور، در صورت وجود، ایجاد می شود.

  • درخواست شناسه

    شماره

    requestId CreateRequest .

  • پاسخ جیسون

    رشته اختیاری

    PublicKeyCredential که توسط درخواست راه دور به دست می‌آید، در صورت وجود، با فراخوانی href="https://w3c.github.io/webauthn/#dom-publickeycredential-tojson"> PublicKeyCredential.toJSON() به‌صورت رشته‌ای JSON سریال‌سازی می‌شود.

DOMExceptionDetails

خواص

  • پیام

    رشته

  • نام

    رشته

GetRequest

خواص

  • درخواست جزئیاتJson

    رشته

    PublicKeyCredentialRequestOptions به navigator.credentials.get() ارسال شد و به صورت یک رشته JSON سریال شد. قالب سریال سازی با PublicKeyCredential.parseRequestOptionsFromJSON() سازگار است.

  • درخواست شناسه

    شماره

    یک شناسه غیر شفاف برای درخواست.

GetResponseDetails

خواص

  • خطا

    DOMExceptionDetails اختیاری است

    DOMException توسط درخواست راه دور، در صورت وجود، ایجاد می شود.

  • درخواست شناسه

    شماره

    requestId CreateRequest .

  • پاسخ جیسون

    رشته اختیاری

    PublicKeyCredential که توسط درخواست راه دور به دست می‌آید، در صورت وجود، با فراخوانی href="https://w3c.github.io/webauthn/#dom-publickeycredential-tojson"> PublicKeyCredential.toJSON() به‌صورت رشته‌ای JSON سریال‌سازی می‌شود.

IsUvpaaRequest

خواص

  • درخواست شناسه

    شماره

    یک شناسه غیر شفاف برای درخواست.

IsUvpaaResponseDetails

خواص

  • isUvpaa

    بولی

  • درخواست شناسه

    شماره

روش ها

attach()

قول بده
chrome.webAuthenticationProxy.attach(
  callback?: function,
)

این برنامه افزودنی را به پروکسی درخواست Web Authentication API فعال می کند.

برنامه های افزودنی دسکتاپ راه دور معمولاً پس از تشخیص پیوست شدن یک جلسه راه دور به این میزبان، این روش را فراخوانی می کنند. هنگامی که این روش بدون خطا برمی‌گردد، پردازش منظم درخواست‌های WebAuthn به حالت تعلیق در می‌آید و رویدادهای این API افزونه مطرح می‌شوند.

اگر افزونه دیگری از قبل ضمیمه شده باشد، این روش با خطا مواجه می شود.

پس از پایان جلسه دسکتاپ راه دور، برنامه افزودنی پیوست شده باید detach() فراخوانی کند تا پردازش درخواست WebAuthn معمولی از سر گرفته شود. اگر برنامه های افزودنی بارگیری شوند، به طور خودکار جدا می شوند.

به رویداد onRemoteSessionStateChange برای سیگنال دادن به تغییر پیوست جلسه راه دور از یک برنامه بومی به برنامه افزودنی (احتمالاً معلق) مراجعه کنید.

پارامترها

  • پاسخ به تماس

    عملکرد اختیاری

    پارامتر callback به نظر می رسد:

    (error?: string) => void

    • خطا

      رشته اختیاری

برمی گرداند

  • قول<رشته | تعریف نشده>

    Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.

completeCreateRequest()

قول بده
chrome.webAuthenticationProxy.completeCreateRequest(
  details: CreateResponseDetails,
  callback?: function,
)

نتیجه تماس navigator.credentials.create() را گزارش می کند. برنامه افزودنی باید این را برای هر رویداد onCreateRequest که دریافت کرده است فراخوانی کند، مگر اینکه درخواست لغو شده باشد (در این صورت، رویداد onRequestCanceled فعال می شود).

پارامترها

  • جزئیات
  • پاسخ به تماس

    عملکرد اختیاری

    پارامتر callback به نظر می رسد:

    () => void

برمی گرداند

  • قول<باطل>

    Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.

completeGetRequest()

قول بده
chrome.webAuthenticationProxy.completeGetRequest(
  details: GetResponseDetails,
  callback?: function,
)

نتیجه تماس navigator.credentials.get() را گزارش می کند. برنامه افزودنی باید این را برای هر رویداد onGetRequest که دریافت کرده است فراخوانی کند، مگر اینکه درخواست لغو شده باشد (در این صورت، رویداد onRequestCanceled فعال می شود).

پارامترها

  • جزئیات
  • پاسخ به تماس

    عملکرد اختیاری

    پارامتر callback به نظر می رسد:

    () => void

برمی گرداند

  • قول<باطل>

    Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.

completeIsUvpaaRequest()

قول بده
chrome.webAuthenticationProxy.completeIsUvpaaRequest(
  details: IsUvpaaResponseDetails,
  callback?: function,
)

نتیجه تماس PublicKeyCredential.isUserVerifyingPlatformAuthenticator() را گزارش می کند. برنامه افزودنی باید این را برای هر رویداد onIsUvpaaRequest که دریافت کرده است فراخوانی کند.

پارامترها

  • جزئیات
  • پاسخ به تماس

    عملکرد اختیاری

    پارامتر callback به نظر می رسد:

    () => void

برمی گرداند

  • قول<باطل>

    Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.

detach()

قول بده
chrome.webAuthenticationProxy.detach(
  callback?: function,
)

این برنامه افزودنی را از فعال بودن پروکسی درخواست Web Authentication API حذف می کند.

این روش معمولاً زمانی فراخوانی می شود که برنامه افزودنی تشخیص دهد که یک جلسه دسکتاپ راه دور خاتمه یافته است. پس از بازگشت این روش، برنامه افزودنی دیگر پروکسی درخواست API Authentication Web فعال نخواهد بود.

به رویداد onRemoteSessionStateChange برای سیگنال دادن به تغییر پیوست جلسه راه دور از یک برنامه بومی به برنامه افزودنی (احتمالاً معلق) مراجعه کنید.

پارامترها

  • پاسخ به تماس

    عملکرد اختیاری

    پارامتر callback به نظر می رسد:

    (error?: string) => void

    • خطا

      رشته اختیاری

برمی گرداند

  • قول<رشته | تعریف نشده>

    Promises در Manifest V3 و نسخه های جدیدتر پشتیبانی می شود، اما callbacks برای سازگاری به عقب ارائه شده است. شما نمی توانید از هر دو در یک فراخوانی تابع استفاده کنید. وعده با همان نوعی که به callback ارسال می شود حل می شود.

رویدادها

onCreateRequest

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

هنگامی که یک فراخوانی navigator.credentials.create() WebAuthn رخ می دهد فعال می شود. برنامه افزودنی باید با فراخوانی completeCreateRequest() با requestId از requestInfo پاسخی ارائه دهد.

پارامترها

  • پاسخ به تماس

    تابع

    پارامتر callback به نظر می رسد:

    (requestInfo: CreateRequest) => void

onGetRequest

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

هنگامی که یک فراخوانی () navigator.credentials.get WebAuthn رخ می دهد فعال می شود. برنامه افزودنی باید با فراخوانی completeGetRequest() با requestId از requestInfo پاسخی ارائه دهد

پارامترها

  • پاسخ به تماس

    تابع

    پارامتر callback به نظر می رسد:

    (requestInfo: GetRequest) => void

onIsUvpaaRequest

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

هنگامی که فراخوانی PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable() رخ می دهد فعال می شود. برنامه افزودنی باید با فراخوانی completeIsUvpaaRequest() با requestId از requestInfo پاسخی ارائه کند.

پارامترها

  • پاسخ به تماس

    تابع

    پارامتر callback به نظر می رسد:

    (requestInfo: IsUvpaaRequest) => void

onRemoteSessionStateChange

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

یک برنامه بومی مرتبط با این برنامه افزودنی می‌تواند با نوشتن در فایلی با نامی برابر با شناسه برنامه افزودنی در فهرستی به نام WebAuthenticationProxyRemoteSessionStateChange در فهرست پیش‌فرض داده‌های کاربر، این رویداد را فعال کند.

محتویات فایل باید خالی باشد. یعنی نیازی به تغییر محتویات فایل برای راه اندازی این رویداد نیست.

برنامه میزبان بومی ممکن است از این مکانیسم رویداد برای سیگنال دادن به تغییر وضعیت جلسه از راه دور احتمالی (یعنی از جدا به پیوست یا برعکس) استفاده کند، در حالی که کارگر سرویس برنامه افزودنی احتمالاً معلق است. در کنترل کننده این رویداد، برنامه افزودنی می تواند متدهای API attach() یا detach() را بر این اساس فراخوانی کند.

شنونده رویداد باید در زمان بارگذاری به صورت همزمان ثبت شود.

پارامترها

  • پاسخ به تماس

    تابع

    پارامتر callback به نظر می رسد:

    () => void

onRequestCanceled

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

هنگامی که یک رویداد onCreateRequest یا onGetRequest لغو می‌شود فعال می‌شود (به دلیل اینکه درخواست WebAuthn توسط تماس‌گیرنده لغو شد یا به دلیل اتمام زمان آن). هنگام دریافت این رویداد، برنامه افزودنی باید پردازش درخواست مربوطه را در سمت مشتری لغو کند. پس از لغو درخواست، برنامه های افزودنی نمی توانند آن را تکمیل کنند.

پارامترها

  • پاسخ به تماس

    تابع

    پارامتر callback به نظر می رسد:

    (requestId: number) => void

    • درخواست شناسه

      شماره