- class QWebEngineWebAuthUxRequest#
QWebEngineWebAuthUxRequest
类封装了 WebAuth UX 请求的数据。更多…自 6.7 版本开始引入。
概要#
属性#
pinRequestᅟ
- WebAuth请求的PIN请求信息relyingPartyIdᅟ
- WebAuth请求的信赖方idrequestFailureReasonᅟ
- WebAuth请求的失败原因stateᅟ
- WebAuth请求当前的UX状态userNamesᅟ
- 支持的凭证的可用用户名。当当前WebAuth请求的UX状态是“选择账户”时,需要这个。WebAuth对话框会显示用户名。用户需要选择一个账户才能继续
方法#
def
pinRequest()
def
relyingPartyId()
def
state()
def
userNames()
槽(a class="headerlink" href="#slots" title="链接到本标题">#)
信号(a class="headerlink" href="#signals" title="链接到本标题">#)
def
stateChanged()
注意
此文档可能包含自动从C++转换为Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译存在问题,您还可以通过在https:/bugreports.qt.io/projects/PYSIDE上创建工单来告诉我们
详细说明#
此类包含WebAuth UX信息和API。在身份验证过程中,WebAuth可能需要用户交互。这些请求通过显示对话框来处理。《a class="reference external" href="https://doc.qt.ac.cn/qt-6/qtwebengine-qmlmodule.html">QtWebEngine
QWebEngineWebAuthUxRequest
在生命周期内模拟整个WebAuth UX请求,从显示UX对话框开始,通过状态变化更新其内容,最后关闭对话框。当验证器需要用户交互时,通常会导致WebAuth UX请求。
QWebEnginePage
有责任通知应用程序新的WebAuth UX请求,通过同时发出webAuthUxRequested
信号和一个新创建的QWebEngineWebAuthUxRequest
来执行此操作。然后应用程序可以检查此请求并显示WebAuth UX对话框。QWebEngineWebAuthUxRequest
对象会定期发出stateChanged
信号,以通知潜在的观察者当前的WebAuth UX状态。观察者会相应地更新WebAuth对话框。有关如何处理Web引擎验证器请求的更多信息,请参阅《span class="xref std std-ref">简单浏览器。
- 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
验证器不支持大 Blob。
QWebEngineWebAuthUxRequest.RequestFailureReason.NoCommonAlgorithms
没有公共算法。
QWebEngineWebAuthUxRequest.RequestFailureReason.StorageFull
由于验证器存储不足,无法创建驻留凭证。
QWebEngineWebAuthUxRequest.RequestFailureReason.UserConsentDenied
用户拒绝了同意。
QWebEngineWebAuthUxRequest.RequestFailureReason.WinUserCancelled
用户在原生窗口 UI 中单击了取消。
注意
当使用
from __feature__ import true_property
时可以直接使用属性,否则通过访问器函数。- property pinRequestᅟ: QWebEngineWebAuthPinRequest#
此属性包含 WebAuth 请求的 PIN 请求信息。
当当前 WebAuth 请求状态为
CollectPin
时需要此属性。WebAuth 对话框会显示 PIN 请求对话框。用户需要输入 PIN 并调用setPin()
以继续。- 访问函数
- 属性relyingPartyId: str#
此属性存储 WebAuth 请求的 relying party ID。
- 访问函数
- 属性requestFailureReason: QWebEngineWebAuthUxRequest.RequestFailureReason#
此属性存储 WebAuth 请求的失败原因。
此属性存储当前 WebAuth 请求的 UX 状态。
stateChanged()
会在当前状态发生变化时发出。在状态变化后更新 WebAuth 对话框。- 访问函数
- 属性userNames: 字符串列表#
此属性存储为居民凭证支持提供的可用用户名。当当前 WebAuth 请求的 UX 状态为
SelectAccount
时需要该属性。WebAuth 对话框显示用户名。用户需要选择一个账户以继续。- 访问函数
- cancel()#
取消当前的WebAuth请求。
另请参阅
- pinRequest()#
属性
pinRequest
的获取器。- relyingPartyId()#
- 返回类型:
str
属性
relyingPartyId
的获取器。- requestFailureReason()#
- 返回类型:
属性
requestFailureReason
的获取器。- retry()#
重试当前的WebAuth请求。
另请参阅
- setPin(pin)#
- 参数:
pin – str
将PIN发送到提示输入PIN的认证器。当前WebAuth请求的UX状态为
CollectPin
时,此操作是必需的。WebAuth请求将被阻塞,直到用户响应PIN。- setSelectedAccount(selectedAccount)#
- 参数:
selectedAccount – str
将选择的账号名称发送到认证器。当前WebAuth请求的UX状态为
SelectAccount
时,此操作是必需的。WebAuth请求将被阻塞,直到用户选择一个账号并调用此方法。另请参阅
- 状态()#
- 返回类型:
属性
state
的获取器。- stateChanged(状态)#
- 参数:
状态 –
WebAuthUxState
每当WebAuth UX的
状态
发生更改时,都会发出此信号。另请参阅
属性
state
的通知信号。- 用户名()#
- 返回类型:
字符串列表
属性
userNames
的获取器。