chrome.webAuthenticationProxy

תיאור

ה-API של chrome.webAuthenticationProxy מאפשר לתוכנת מחשב מרחוק שפועלת במארח מרוחק ליירט בקשות של Web Authentication API (WebAuthn) כדי לטפל בהן בלקוח מקומי.

הרשאות

webAuthenticationProxy

זמינות

Chrome 115+ MV3+

סוגים

CreateRequest

מאפיינים

  • requestDetailsJson

    מחרוזת

    השדה PublicKeyCredentialCreationOptions מועבר אל navigator.credentials.create(), עובר סריאליזציה למחרוזת JSON. פורמט העריכה בסדרה תואם ל-PublicKeyCredential.parseCreationOptionsFromJSON().

  • requestId

    number

    מזהה אטום של הבקשה.

CreateResponseDetails

מאפיינים

  • error

    הערך של DOMException שהתקבלה מהבקשה המרוחקת, אם הייתה כזו.

  • requestId

    number

    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

    number

    מזהה אטום של הבקשה.

GetResponseDetails

מאפיינים

  • error

    הערך של DOMException שהתקבלה מהבקשה המרוחקת, אם הייתה כזו.

  • requestId

    number

    requestId של CreateRequest.

  • responseJson

    מחרוזת אופציונלי

    ה-PublicKeyCredential, שהתקבל מהבקשה מרחוק, אם יש כזה, עובר סריאליזציה למחרוזת JSON באמצעות קריאה ל- href="https://w3c.github.io/webauthn/#dom-publickeycredential-tojson"> PublicKeyCredential.toJSON().

IsUvpaaRequest

מאפיינים

  • requestId

    number

    מזהה אטום של הבקשה.

IsUvpaaResponseDetails

מאפיינים

  • isUvpaa

    בוליאני

  • requestId

    number

שיטות

attach()

הבטחה
chrome.webAuthenticationProxy.attach(
  callback?: function,
)

התוסף הזה הופך את שרת ה-proxy הפעיל לבקשת API לאימות באינטרנט.

תוספים למחשב מרוחק בדרך כלל מפעילים את השיטה הזו אחרי זיהוי צירוף של סשן מרוחק למארח הזה. כאשר השיטה הזו מוחזרת ללא שגיאות, העיבוד הקבוע של בקשות WebAuthn מושעה והאירועים מה-API של התוסף הזה עולים.

השיטה הזו תיכשל ותוצג שגיאה אם כבר מצורף תוסף אחר.

כדי להמשיך בעיבוד בקשת WebAuthn הרגיל, התוסף המצורף צריך להפעיל את הקריאה detach() בסיום הסשן של Remote Desktop. התוספים מנותקים אוטומטית אם מסירים אותם.

יש לעיין באירוע onRemoteSessionStateChange כדי לאותת על שינוי של קובץ מצורף של סשן מרוחק מאפליקציה מקורית לתוסף (שעשוי להיות מושעה).

פרמטרים

  • קריאה חוזרת (callback)

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    (error?: string) => void

    • error

      מחרוזת אופציונלי

החזרות

  • Promise<string | לא מוגדר>

    הבטחות נתמכות במניפסט מגרסה V3 ואילך, אבל ניתנות קריאות חוזרות (callback) בשביל תאימות לאחור. לא ניתן להשתמש בשתיהן באותה בקשה להפעלת פונקציה. ההבטחה הזו מצליחה לפתור את הבעיה באותו סוג שמועבר לקריאה החוזרת.

completeCreateRequest()

הבטחה
chrome.webAuthenticationProxy.completeCreateRequest(
  details: CreateResponseDetails,
  callback?: function,
)

מדווח על התוצאה של שיחת navigator.credentials.create(). התוסף חייב להפעיל את הפונקציה הזו עבור כל אירוע של onCreateRequest שהוא מקבל, אלא אם הבקשה בוטלה (במקרה כזה, מופעל אירוע של onRequestCanceled).

פרמטרים

  • קריאה חוזרת (callback)

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    () => void

החזרות

  • הבטחה<Empty>

    הבטחות נתמכות במניפסט מגרסה V3 ואילך, אבל ניתנות קריאות חוזרות (callback) בשביל תאימות לאחור. לא ניתן להשתמש בשתיהן באותה בקשה להפעלת פונקציה. ההבטחה הזו מצליחה לפתור את הבעיה באותו סוג שמועבר לקריאה החוזרת.

completeGetRequest()

הבטחה
chrome.webAuthenticationProxy.completeGetRequest(
  details: GetResponseDetails,
  callback?: function,
)

מדווח על התוצאה של שיחת navigator.credentials.get(). התוסף חייב להפעיל את הפונקציה הזו עבור כל אירוע של onGetRequest שהוא מקבל, אלא אם הבקשה בוטלה (במקרה כזה, מופעל אירוע של onRequestCanceled).

פרמטרים

  • פרטים
  • קריאה חוזרת (callback)

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    () => void

החזרות

  • הבטחה<Empty>

    הבטחות נתמכות במניפסט מגרסה V3 ואילך, אבל ניתנות קריאות חוזרות (callback) בשביל תאימות לאחור. לא ניתן להשתמש בשתיהן באותה בקשה להפעלת פונקציה. ההבטחה הזו מצליחה לפתור את הבעיה באותו סוג שמועבר לקריאה החוזרת.

completeIsUvpaaRequest()

הבטחה
chrome.webAuthenticationProxy.completeIsUvpaaRequest(
  details: IsUvpaaResponseDetails,
  callback?: function,
)

מדווח על התוצאה של שיחת PublicKeyCredential.isUserVerifyingPlatformAuthenticator(). התוסף חייב להפעיל זאת עבור כל אירוע onIsUvpaaRequest שהוא קיבל.

פרמטרים

  • קריאה חוזרת (callback)

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    () => void

החזרות

  • הבטחה<Empty>

    הבטחות נתמכות במניפסט מגרסה V3 ואילך, אבל ניתנות קריאות חוזרות (callback) בשביל תאימות לאחור. לא ניתן להשתמש בשתיהן באותה בקשה להפעלת פונקציה. ההבטחה הזו מצליחה לפתור את הבעיה באותו סוג שמועבר לקריאה החוזרת.

detach()

הבטחה
chrome.webAuthenticationProxy.detach(
  callback?: function,
)

הסרת התוסף הזה מתפקיד שרת ה-proxy הפעיל לבקשת API לאימות אינטרנט.

השיטה הזו מופעלת בדרך כלל כשהתוסף מזהה שסשן של שולחן עבודה מרוחק הסתיים. אחרי שה-method הזה חוזר, התוסף מפסיק להיות שרת ה-proxy הפעיל של Web Authentication API.

יש לעיין באירוע onRemoteSessionStateChange כדי לאותת על שינוי של קובץ מצורף של סשן מרוחק מאפליקציה מקורית לתוסף (שעשוי להיות מושעה).

פרמטרים

  • קריאה חוזרת (callback)

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    (error?: string) => void

    • error

      מחרוזת אופציונלי

החזרות

  • Promise<string | לא מוגדר>

    הבטחות נתמכות במניפסט מגרסה V3 ואילך, אבל ניתנות קריאות חוזרות (callback) בשביל תאימות לאחור. לא ניתן להשתמש בשתיהן באותה בקשה להפעלת פונקציה. ההבטחה הזו מצליחה לפתור את הבעיה באותו סוג שמועבר לקריאה החוזרת.

אירועים

onCreateRequest

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

מופעלת כשמתבצעת קריאה של WebAuthn navigator.credentials.create(). התוסף חייב לספק תגובה באמצעות קריאה ל-completeCreateRequest() עם requestId מהאפליקציה requestInfo.

פרמטרים

  • קריאה חוזרת (callback)

    פונקציה

    הפרמטר callback נראה כך:

    (requestInfo: CreateRequest) => void

onGetRequest

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

מופעלת כשמתבצעת קריאה של WebAuthn navigator.credentials.get() . התוסף חייב לספק תגובה בהתקשרות אל completeGetRequest() עם requestId מהאפליקציה requestInfo

פרמטרים

  • קריאה חוזרת (callback)

    פונקציה

    הפרמטר callback נראה כך:

    (requestInfo: GetRequest) => void

onIsUvpaaRequest

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

מופעלת כשמתבצעת קריאה ל-PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable(). התוסף חייב לספק תגובה בהתקשרות אל completeIsUvpaaRequest() עם requestId מהאפליקציה requestInfo

פרמטרים

  • קריאה חוזרת (callback)

    פונקציה

    הפרמטר callback נראה כך:

    (requestInfo: IsUvpaaRequest) => void

onRemoteSessionStateChange

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

אפליקציה מקורית שמשויכת לתוסף הזה יכולה לגרום להפעלת האירוע הזה. לשם כך, צריך לכתוב לקובץ עם שם זהה למזהה התוסף בספרייה בשם WebAuthenticationProxyRemoteSessionStateChange בתוך ספריית נתוני המשתמשים שמוגדרת כברירת מחדל

התוכן של הקובץ צריך להיות ריק. כלומר, לא צריך לשנות את התוכן של הקובץ כדי להפעיל את האירוע הזה.

האפליקציה המקורית המארחת עשויה להשתמש במנגנון האירוע הזה כדי לאותת על שינוי אפשרי במצב הסשן מרחוק (כלומר, ניתוק למצב מחובר או להיפך), כשיש חשד שהעובד של שירות התוסף מושעה. ב-handler של האירוע הזה, התוסף יכול לקרוא ל-methods של ה-API attach() או detach() בהתאם.

ה-event listener חייב להיות רשום באופן סינכרוני בזמן הטעינה.

פרמטרים

  • קריאה חוזרת (callback)

    פונקציה

    הפרמטר callback נראה כך:

    () => void

onRequestCanceled

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

מופעלת כשאירוע onCreateRequest או onGetRequest מבוטל (כי בקשת WebAuthn בוטלה על ידי מבצע הקריאה החוזרת, או כי הסתיים הזמן הקצוב לתפוגה שלה). עם קבלת האירוע הזה, התוסף אמור לבטל את העיבוד של הבקשה המתאימה בצד הלקוח. לתוספים אין אפשרות להשלים בקשה לאחר ביטולה.

פרמטרים

  • קריאה חוזרת (callback)

    פונקציה

    הפרמטר callback נראה כך:

    (requestId: number) => void

    • requestId

      number