QAuthenticator 类
QAuthenticator 类提供了一个身份验证对象。更多信息...
头文件 | #include <QAuthenticator> |
CMake | find_package(Qt6 REQUIRED COMPONENTS Network) target_link_libraries(mytarget PRIVATE Qt6::Network) |
qmake | QT += network |
- 所有成员列表,包括继承的成员
- QAuthenticator 是网络编程 API 的一部分。网络编程 API.
注意:此类中的所有函数都是可重入的。可重入.
公共函数
QAuthenticator() | |
QAuthenticator(const QAuthenticator &other) | |
~QAuthenticator() | |
bool | isNull() const |
QVariant | option(const QString &opt) const |
QVariantHash | options() const |
QString | password() const |
QString | realm() const |
void | setOption(const QString &opt, const QVariant &value) |
void | setPassword(const QString &password) |
void | setUser(const QString &user) |
QString | user() const |
bool | operator!=(const QAuthenticator &other) const |
QAuthenticator & | operator=(const QAuthenticator &other) |
bool | operator==(const QAuthenticator &other) const |
详细描述
QAuthenticator 类通常用于 QNetworkAccessManager 和 QAbstractSocket 的 authenticationRequired() 和 proxyAuthenticationRequired() 信号。此类提供了一种在访问需要身份验证的服务时,将所需的身份验证信息传递回套接字的方法。
QAuthenticator 支持以下身份验证方法
- 基本
- NTLM 第 2 版
- Digest-MD5
- SPNEGO/Negotiate
选项
除了身份验证所需的用户名和密码之外,一个 QAuthenticator 对象还可以包含额外的选项。可以使用 options() 函数查询服务器发送的传入选项;可以使用 setOption() 函数设置传出选项,以便由身份验证器进行计算处理。接受的选项和提供的选项取决于身份验证类型(请参阅方法())。
以下表格列出了已知的传入选项以及接受的传出选项。传入选项列表并非详尽无遗,因为服务器可能在任何时候包含额外的信息。传出选项列表是详尽的,并且不会处理或返回给服务器任何未知选项。
基础知识
基本认证机制不支持传出选项。
NTLM版本2
NTLM认证机制目前不支持传入或传出选项。在Windows上,如果没有设置用户,将在本地系统中查找域\用户凭据以启用单点登录功能。
Digest-MD5
Digest-MD5认证机制不支持传出选项。
SPNEGO/Negotiate
选项 | 方向 | 类型 | 描述 |
---|---|---|---|
spn | 传出 | QString | 提供自定义SPN。 |
此认证机制目前不支持传入选项。
当使用SSPI库时,在Windows客户端上使用spn
属性。如果未设置此属性,将使用默认SPN。Windows上的默认SPN是HTTP/<hostname>
。
其他操作系统使用GSSAPI库。为此,应设置KDC,并从中获取凭证。后端始终使用HTTPS@<hostname>
作为SPN。
另请参阅QSslSocket。
成员函数文档
QAuthenticator::QAuthenticator()
构造一个空的认证对象。
QAuthenticator::QAuthenticator(const QAuthenticator &other)
构造其他的一个副本。
[noexcept]
QAuthenticator::~QAuthenticator()
销毁对象。
bool QAuthenticator::isNull() const
如果对象尚未初始化,则返回true
。如果调用过非const成员函数,或内容是从另一个已初始化的QAuthenticator对象构造或复制的,则返回false
。
QVariant QAuthenticator::option(const QString &opt) const
如果服务器设置了选项opt,则返回与选项opt相关的值。有关传入选项的更多信息,请参阅选项部分。如果找不到选项opt,将返回无效的QVariant。
另请参阅setOption()、options()以及QAuthenticator选项。
QVariantHash QAuthenticator::options() const
返回在此QAuthenticator对象中通过解析服务器响应设置的所有传入选项。有关传入选项的更多信息,请参阅选项部分。
另请参阅option()以及QAuthenticator选项。
QString QAuthenticator::password() const
返回用于认证的密码。
另请参阅setPassword()。
QString QAuthenticator::realm() const
返回需要进行身份验证的区域
void QAuthenticator::setOption(const QString &opt, const QVariant &value)
将输出选项opt设置为值value。有关输出选项的更多信息,请参阅选项部分。
另请参阅options()、option()以及QAuthenticator选项。
void QAuthenticator::setPassword(const QString &password)
设置用于身份验证的密码。
另请参阅password()和QNetworkAccessManager::authenticationRequired。
void QAuthenticator::setUser(const QString &user)
设置用于身份验证的用户。
另请参阅user()和QNetworkAccessManager::authenticationRequired。
QString QAuthenticator::user() const
返回用于身份验证的用户。
另请参阅setUser。
bool QAuthenticator::operator!=(const QAuthenticator &other) const
如果此验证器与other不同,则返回true
;否则返回false
。
QAuthenticator &QAuthenticator::operator=(const QAuthenticator &other)
将other的内容赋值给此验证器。
bool QAuthenticator::operator==(const QAuthenticator &other) const
如果此验证器与other相同,则返回true
;否则返回false
。
© 2024 Qt公司有限公司。此处包含的文档贡献为各所有者的版权。提供的文档受GNU自由文档许可证版本1.3许可,由自由软件基金会发布。Qt及其相关商标是芬兰及其它国家的Qt公司有限公司的商标。所有其他商标均为各自所有者的财产。