PySide6.QtWebEngineCore.QWebEngineWebAuthUxRequest

class QWebEngineWebAuthUxRequest

QWebEngineWebAuthUxRequest 类封装了 WebAuth UX 请求的数据。更多

PySide6.QtWebEngineCore.QWebEngineWebAuthUxRequest 的继承图

在版本6.7中添加。

概要

属性

  • pinRequestᅟ - WebAuth 请求的 PIN 请求信息

  • relyingPartyIdᅟ - WebAuth 请求的依赖方 ID

  • requestFailureReasonᅟ - WebAuth 请求的失败原因

  • stateᅟ - WebAuth 请求的当前用户体验状态

  • userNamesᅟ - 可用于居民凭证支持的用户名。当当前WebAuth请求的UX状态为SelectAccount时,需要此信息。WebAuth对话框会显示用户名。用户需要选择一个账户以继续

方法

插槽

信号

注意

本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。

详细描述

该类包含WebAuth UX的信息和API。在认证过程中,WebAuth可能需要用户交互。这些请求通过向用户显示对话框来处理。QtWebEngine目前支持用户验证、常驻凭证和显示请求失败的UX请求。

QWebEngineWebAuthUxRequest 模拟了一个WebAuth UX请求的整个生命周期,从显示UX对话框开始,通过状态变化更新其内容,最后关闭对话框。

WebAuth UX 请求通常在认证器需要用户交互时触发。QWebEnginePage 的责任是通知应用程序新的 WebAuth UX 请求,它通过发出 webAuthUxRequested 信号以及一个新创建的 QWebEngineWebAuthUxRequest 来实现这一点。然后,应用程序可以检查此请求并显示 WebAuth UX 对话框。

QWebEngineWebAuthUxRequest 对象定期发出 stateChanged 信号,以通知潜在的观察者当前的 WebAuth UX 状态。观察者相应地更新 WebAuth 对话框。

有关如何处理Web引擎认证器请求的更多信息,请参阅Simple Browser

class WebAuthUxState

此枚举描述了当前WebAuth UX请求的状态。

常量

描述

QWebEngineWebAuthUxRequest.WebAuthUxState.NotStarted

WebAuth UX 请求尚未开始。

QWebEngineWebAuthUxRequest.WebAuthUxState.SelectAccount

认证器需要常驻凭证详细信息。应用程序需要显示一个账户详细信息对话框,用户需要选择一个账户以继续。

QWebEngineWebAuthUxRequest.WebAuthUxState.CollectPin

认证器需要用户验证。应用程序需要显示一个PIN请求对话框。

QWebEngineWebAuthUxRequest.WebAuthUxState.FinishTokenCollection

认证器需要令牌/用户验证(如点击FIDO密钥)以完成该过程。

QWebEngineWebAuthUxRequest.WebAuthUxState.RequestFailed

WebAuth 请求失败。显示错误详情。

QWebEngineWebAuthUxRequest.WebAuthUxState.Cancelled

WebAuth 请求已取消。关闭 WebAuth 对话框。

QWebEngineWebAuthUxRequest.WebAuthUxState.Completed

WebAuth 请求已完成。关闭 WebAuth 对话框。

class PinEntryReason

此枚举描述了可能提示验证器要求输入PIN的原因。

常量

描述

QWebEngineWebAuthUxRequest.PinEntryReason.Set

正在设置一个新的PIN码。

QWebEngineWebAuthUxRequest.PinEntryReason.Change

在使用此认证器之前,必须更改现有的PIN。

QWebEngineWebAuthUxRequest.PinEntryReason.Challenge

正在收集现有PIN以证明用户验证。

class PinEntryError

此枚举描述了可能提示认证器要求输入PIN的错误。

常量

描述

QWebEngineWebAuthUxRequest.PinEntryError.NoError

没有发生错误。

QWebEngineWebAuthUxRequest.PinEntryError.InternalUvLocked

内部UV已锁定,因此我们回退到PIN。

QWebEngineWebAuthUxRequest.PinEntryError.WrongPin

用户输入的PIN码与认证器的PIN码不匹配。

QWebEngineWebAuthUxRequest.PinEntryError.TooShort

用户输入的新PIN码太短。

QWebEngineWebAuthUxRequest.PinEntryError.InvalidCharacters

用户输入的新PIN包含无效字符。

QWebEngineWebAuthUxRequest.PinEntryError.SameAsCurrentPin

用户输入的新PIN码与当前设置的PIN码相同。

class RequestFailureReason

此枚举描述了WebAuth请求失败的原因。

常量

描述

QWebEngineWebAuthUxRequest.RequestFailureReason.Timeout

认证会话已超时。

QWebEngineWebAuthUxRequest.RequestFailureReason.KeyNotRegistered

密钥未在认证器中注册。

QWebEngineWebAuthUxRequest.RequestFailureReason.KeyAlreadyRegistered

密钥已经在该认证器中注册。请尝试使用另一个密钥注册或使用另一个认证器。

QWebEngineWebAuthUxRequest.RequestFailureReason.SoftPinBlock

由于用户多次输入错误的密钥,认证器被锁定。

QWebEngineWebAuthUxRequest.RequestFailureReason.HardPinBlock

由于用户多次输入错误的密钥并重置了PIN以再次使用特定的认证器,认证器被锁定。

QWebEngineWebAuthUxRequest.RequestFailureReason.AuthenticatorRemovedDuringPinEntry

在输入PIN码期间移除了认证器。

QWebEngineWebAuthUxRequest.RequestFailureReason.AuthenticatorMissingResidentKeys

认证器不支持常驻密钥。

QWebEngineWebAuthUxRequest.RequestFailureReason.AuthenticatorMissingUserVerification

认证器不支持用户验证。

QWebEngineWebAuthUxRequest.RequestFailureReason.AuthenticatorMissingLargeBlob

认证器不支持大块数据。

QWebEngineWebAuthUxRequest.RequestFailureReason.NoCommonAlgorithms

没有共同的算法。

QWebEngineWebAuthUxRequest.RequestFailureReason.StorageFull

由于认证器存储空间不足,无法创建常驻凭证。

QWebEngineWebAuthUxRequest.RequestFailureReason.UserConsentDenied

用户拒绝同意。

QWebEngineWebAuthUxRequest.RequestFailureReason.WinUserCancelled

用户在原生窗口界面中点击了取消。

注意

当使用from __feature__ import true_property时,属性可以直接使用,否则通过访问器函数使用。

property pinRequestᅟ: QWebEngineWebAuthPinRequest

此属性保存WebAuth请求的PIN请求信息。

当当前的WebAuth请求状态为CollectPin时,这是必需的。WebAuth对话框显示一个PIN请求对话框。用户需要输入PIN并调用setPin()以继续。

Access functions:
property relyingPartyIdᅟ: str

此属性保存WebAuth请求的依赖方ID。

Access functions:
property requestFailureReasonᅟ: QWebEngineWebAuthUxRequest.RequestFailureReason

此属性保存WebAuth请求的失败原因。

Access functions:
property stateᅟ: QWebEngineWebAuthUxRequest.WebAuthUxState

此属性保存WebAuth请求的当前用户体验状态。

stateChanged() 在当前状态发生变化时发出。根据状态的变化更新 WebAuth 对话框。

Access functions:
property userNamesᅟ: list of strings

此属性保存用于居民凭证支持的可用用户名。当当前WebAuth请求的UX状态为SelectAccount时,这是必需的。WebAuth对话框显示用户名。用户需要选择一个帐户以继续。

Access functions:
cancel()

取消当前的WebAuth请求。

另请参阅

已取消 stateChanged()

pinRequest()
Return type:

QWebEngineWebAuthPinRequest

属性 pinRequestᅟ 的获取器。

relyingPartyId()
Return type:

字符串

属性 relyingPartyIdᅟ 的获取器。

requestFailureReason()
Return type:

RequestFailureReason

属性 requestFailureReasonᅟ 的获取器。

retry()

重试当前的WebAuth请求。

另请参阅

stateChanged()

setPin(pin)
Parameters:

pin – 字符串

pin发送到提示输入PIN的认证器。当当前WebAuth请求的用户体验状态为CollectPin时,这是必需的。WebAuth请求将被阻止,直到用户响应PIN。

setSelectedAccount(selectedAccount)
Parameters:

selectedAccount – str

selectedAccount名称发送到认证器。当当前WebAuth请求的用户体验状态为SelectAccount时,这是必需的。WebAuth请求将被阻止,直到用户选择一个账户并调用此方法。

另请参阅

userNames SelectAccount

state()
Return type:

WebAuthUxState

属性 stateᅟ 的获取器。

stateChanged(state)
Parameters:

状态WebAuthUxState

每当WebAuth UX的state状态发生变化时,都会发出此信号。

另请参阅

state WebAuthUxState

属性 stateᅟ 的通知信号。

userNames()
Return type:

字符串列表

属性 userNamesᅟ 的获取器。