คำอธิบาย
chrome.webAuthenticationProxy
API ช่วยให้ซอฟต์แวร์เดสก์ท็อประยะไกลที่ทำงานบนโฮสต์ระยะไกลสกัดกั้นคำขอ Web Authentication API (WebAuthn) เพื่อจัดการคำขอในไคลเอ็นต์ภายในได้
สิทธิ์
webAuthenticationProxy
ความพร้อมใช้งาน
ประเภท
CreateRequest
พร็อพเพอร์ตี้
-
requestDetailsJson
สตริง
ผ่าน
PublicKeyCredentialCreationOptions
ไปยังnavigator.credentials.create()
แล้ว โดยเรียงลำดับเป็นสตริง JSON รูปแบบการเรียงอันดับใช้ได้กับPublicKeyCredential.parseCreationOptionsFromJSON()
-
requestId
ตัวเลข
ตัวระบุที่คลุมเครือสำหรับคำขอ
CreateResponseDetails
พร็อพเพอร์ตี้
-
ข้อผิดพลาด
DOMExceptionDetails optional
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 optional
DOMException
ที่ได้รับจากคำขอระยะไกล (หากมี) -
requestId
ตัวเลข
requestId
ของCreateRequest
-
responseJson
string ไม่บังคับ
PublicKeyCredential
ที่ได้จากคำขอระยะไกล (หากมี) แปลงเป็นสตริง JSON ด้วยการเรียกใช้ href="https://w3c.github.io/webauthn/#dom-publickeycredential-tojson">PublicKeyCredential.toJSON()
IsUvpaaRequest
พร็อพเพอร์ตี้
-
requestId
ตัวเลข
ตัวระบุที่คลุมเครือสำหรับคำขอ
IsUvpaaResponseDetails
พร็อพเพอร์ตี้
-
isUvpaa
boolean
-
requestId
ตัวเลข
เมธอด
attach()
chrome.webAuthenticationProxy.attach(
callback?: function,
)
ทำให้ส่วนขยายนี้เป็นพร็อกซีคำขอ Web Authentication API ที่ใช้งานอยู่
ส่วนขยาย Remote Desktop มักเรียกวิธีนี้หลังจากตรวจพบการแนบของเซสชันระยะไกลกับโฮสต์นี้ เมื่อเมธอดนี้แสดงผลโดยไม่มีข้อผิดพลาด ระบบจะระงับการประมวลผลคำขอ WebAuthn ตามปกติ และเพิ่มเหตุการณ์จาก API ของส่วนขยายนี้
วิธีนี้ใช้งานไม่ได้โดยมีข้อผิดพลาด หากมีส่วนขยายอื่นแนบอยู่แล้ว
ส่วนขยายที่แนบมาต้องเรียกใช้ detach()
เมื่อเซสชัน Remote Desktop สิ้นสุดลงก่อน จึงจะมีการดำเนินการตามคำขอ WebAuthn ตามปกติต่อ ระบบจะแยกส่วนขยายออกโดยอัตโนมัติหากยกเลิกการโหลด
โปรดดูเหตุการณ์ onRemoteSessionStateChange
สำหรับการส่งสัญญาณการเปลี่ยนแปลงไฟล์แนบของเซสชันระยะไกลจากแอปพลิเคชันของระบบไปยังส่วนขยาย (อาจถูกระงับ)
พารามิเตอร์
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(error?: string) => void
-
ข้อผิดพลาด
string ไม่บังคับ
-
การคืนสินค้า
-
คำมั่นสัญญา<สตริง | ไม่ระบุ>
รองรับคำสัญญาในไฟล์ Manifest V3 ขึ้นไป แต่จะมี Callback สำหรับ ความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 อย่างในการเรียกใช้ฟังก์ชันเดียวกันได้ จะมีการแก้ไขด้วยประเภทเดียวกันที่ส่งไปยัง Callback
completeCreateRequest()
chrome.webAuthenticationProxy.completeCreateRequest(
details: CreateResponseDetails,
callback?: function,
)
รายงานผลการโทร navigator.credentials.create()
ส่วนขยายต้องเรียกใช้รายการนี้สำหรับทุกเหตุการณ์ onCreateRequest
ที่ได้รับคำขอ เว้นแต่จะมีการยกเลิกคำขอ (ในกรณีนี้ เหตุการณ์ onRequestCanceled
จะเริ่มทำงาน)
พารามิเตอร์
-
รายละเอียด
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
การคืนสินค้า
-
คำมั่นสัญญา<โมฆะ>
รองรับคำสัญญาในไฟล์ Manifest V3 ขึ้นไป แต่จะมี Callback สำหรับ ความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 อย่างในการเรียกใช้ฟังก์ชันเดียวกันได้ จะมีการแก้ไขด้วยประเภทเดียวกันที่ส่งไปยัง Callback
completeGetRequest()
chrome.webAuthenticationProxy.completeGetRequest(
details: GetResponseDetails,
callback?: function,
)
รายงานผลการโทร navigator.credentials.get()
ส่วนขยายต้องเรียกใช้รายการนี้สำหรับทุกเหตุการณ์ onGetRequest
ที่ได้รับคำขอ เว้นแต่จะมีการยกเลิกคำขอ (ในกรณีนี้ เหตุการณ์ onRequestCanceled
จะเริ่มทำงาน)
พารามิเตอร์
-
รายละเอียด
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
การคืนสินค้า
-
คำมั่นสัญญา<โมฆะ>
รองรับคำสัญญาในไฟล์ Manifest V3 ขึ้นไป แต่จะมี Callback สำหรับ ความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 อย่างในการเรียกใช้ฟังก์ชันเดียวกันได้ จะมีการแก้ไขด้วยประเภทเดียวกันที่ส่งไปยัง Callback
completeIsUvpaaRequest()
chrome.webAuthenticationProxy.completeIsUvpaaRequest(
details: IsUvpaaResponseDetails,
callback?: function,
)
รายงานผลการโทร PublicKeyCredential.isUserVerifyingPlatformAuthenticator()
ส่วนขยายต้องเรียกใช้รายการนี้สำหรับทุกเหตุการณ์ onIsUvpaaRequest
ที่ส่วนขยายได้รับ
พารามิเตอร์
-
รายละเอียด
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
การคืนสินค้า
-
คำมั่นสัญญา<โมฆะ>
รองรับคำสัญญาในไฟล์ Manifest V3 ขึ้นไป แต่จะมี Callback สำหรับ ความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 อย่างในการเรียกใช้ฟังก์ชันเดียวกันได้ จะมีการแก้ไขด้วยประเภทเดียวกันที่ส่งไปยัง Callback
detach()
chrome.webAuthenticationProxy.detach(
callback?: function,
)
นําส่วนขยายนี้ออกจากการเป็นพร็อกซีคําขอ Web Authentication API ที่ใช้งานอยู่
โดยทั่วไปจะเรียกวิธีนี้เมื่อส่วนขยายตรวจพบว่ามีการยกเลิกเซสชัน Remote Desktop เมื่อเมธอดนี้ส่งคืน ส่วนขยายจะหยุดเป็นพร็อกซีคำขอ Web Authentication API ที่ใช้งานอยู่
โปรดดูเหตุการณ์ onRemoteSessionStateChange
สำหรับการส่งสัญญาณการเปลี่ยนแปลงไฟล์แนบของเซสชันระยะไกลจากแอปพลิเคชันของระบบไปยังส่วนขยาย (อาจถูกระงับ)
พารามิเตอร์
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(error?: string) => void
-
ข้อผิดพลาด
string ไม่บังคับ
-
การคืนสินค้า
-
คำมั่นสัญญา<สตริง | ไม่ระบุ>
รองรับคำสัญญาในไฟล์ Manifest V3 ขึ้นไป แต่จะมี Callback สำหรับ ความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 อย่างในการเรียกใช้ฟังก์ชันเดียวกันได้ จะมีการแก้ไขด้วยประเภทเดียวกันที่ส่งไปยัง Callback
กิจกรรม
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
ภายในไดเรกทอรีข้อมูลผู้ใช้เริ่มต้น
เนื้อหาของไฟล์ควรว่างเปล่า กล่าวคือ คุณไม่จำเป็นต้องเปลี่ยนเนื้อหาของไฟล์เพื่อเรียกเหตุการณ์นี้
แอปพลิเคชันโฮสต์เนทีฟอาจใช้กลไกเหตุการณ์นี้เพื่อส่งสัญญาณการเปลี่ยนสถานะเซสชันระยะไกลที่เป็นไปได้ (เช่น จากถอดออกเป็นแนบหรือกลับกัน) ในขณะที่โปรแกรมทำงานของบริการส่วนขยายอาจถูกระงับ ในเครื่องจัดการสำหรับเหตุการณ์นี้ ส่วนขยายสามารถเรียกใช้เมธอด API attach()
หรือ detach()
ตามความเหมาะสม
Listener เหตุการณ์ต้องลงทะเบียนแบบซิงโครนัสที่เวลาในการโหลด
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
onRequestCanceled
chrome.webAuthenticationProxy.onRequestCanceled.addListener(
callback: function,
)
เริ่มทำงานเมื่อกิจกรรม onCreateRequest
หรือ onGetRequest
ถูกยกเลิก (เนื่องจากผู้โทรล้มเลิกคำขอ WebAuthn หรือหมดเวลา) เมื่อได้รับเหตุการณ์นี้ ส่วนขยายควรยกเลิกการประมวลผลคำขอที่เกี่ยวข้องในฝั่งไคลเอ็นต์ ส่วนขยายจะดำเนินการตามคำขอไม่ได้หลังจากยกเลิกแล้ว
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(requestId: number) => void
-
requestId
ตัวเลข
-