คำอธิบาย
chrome.webAuthenticationProxy
API ช่วยให้ซอฟต์แวร์เดสก์ท็อประยะไกลที่ทำงานในโฮสต์ระยะไกลสกัดกั้นคำขอ 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 ตามปกติ และจะมีการเรียกใช้เหตุการณ์จาก API ของส่วนขยายนี้
วิธีนี้จะล้มเหลวพร้อมข้อผิดพลาดหากมีการแนบส่วนขยายอื่นอยู่แล้ว
ส่วนขยายที่แนบมาต้องเรียกใช้ 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,
)
เริ่มทำงานเมื่อมีการเรียก navigator.credentials.get() ของ WebAuthn ส่วนขยายต้องระบุการตอบกลับโดยการเรียกใช้ 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
ภายในไดเรกทอรีข้อมูลผู้ใช้เริ่มต้น
เนื้อหาของไฟล์ควรว่างเปล่า กล่าวคือ คุณไม่จำเป็นต้องเปลี่ยนเนื้อหาของไฟล์เพื่อทริกเกอร์เหตุการณ์นี้
แอปพลิเคชันโฮสต์ดั้งเดิมอาจใช้กลไกเหตุการณ์นี้เพื่อส่งสัญญาณการเปลี่ยนแปลงสถานะเซสชันระยะไกลที่อาจเกิดขึ้น (เช่น จากยกเลิกการเชื่อมต่อเป็นการเชื่อมต่อ หรือในทางกลับกัน) ในขณะที่อาจมีการระงับ Service Worker ของส่วนขยาย ในตัวแฮนเดิลสําหรับเหตุการณ์นี้ ส่วนขยายจะเรียกใช้เมธอด API attach()
หรือ detach()
ได้ตามความเหมาะสม
ต้องลงทะเบียนเครื่องมือฟังเหตุการณ์แบบพร้อมกันในเวลาโหลด
พารามิเตอร์
- callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
onRequestCanceled
chrome.webAuthenticationProxy.onRequestCanceled.addListener(
callback: function,
)
ทริกเกอร์เมื่อมีการยกเลิกเหตุการณ์ onCreateRequest
หรือ onGetRequest
(เนื่องจากผู้เรียกยกเลิกคำขอ WebAuthn หรือเนื่องจากหมดเวลา) เมื่อได้รับเหตุการณ์นี้ ส่วนขยายควรยกเลิกการประมวลผลคำขอที่เกี่ยวข้องในฝั่งไคลเอ็นต์ ส่วนขยายจะดำเนินการตามคำขอให้เสร็จสมบูรณ์ไม่ได้เมื่อมีการยกเลิกคำขอแล้ว
พารามิเตอร์
- callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(requestId: number) => void
- requestId
ตัวเลข
-