QGIS API Documentation 3.41.0-Master (25ec5511245)
|
Singleton offering an interface to manage the authentication configuration database and to utilize configurations through various authentication method plugins. More...
#include <qgsauthmanager.h>
Public Types | |
enum | MessageLevel { INFO = 0 , WARNING = 1 , CRITICAL = 2 } |
Message log level (mirrors that of QgsMessageLog, so it can also output there) More... | |
Public Slots | |
void | clearAllCachedConfigs () |
Clear all authentication configs from authentication method caches. | |
void | clearCachedConfig (const QString &authcfg) |
Clear an authentication config from its associated authentication method cache. | |
Signals | |
void | authDatabaseChanged () |
Emitted when the authentication db is significantly changed, e.g. large record removal, erased, etc. | |
void | authDatabaseEraseRequested () |
Emitted when a user has indicated they may want to erase the authentication db. | |
void | masterPasswordVerified (bool verified) |
Emitted when a password has been verify (or not) | |
void | messageLog (const QString &message, const QString &tag=QgsAuthManager::AUTH_MAN_TAG, Qgis::MessageLevel level=Qgis::MessageLevel::Info) const |
Custom logging signal to relay to console output and QgsMessageLog. | |
Q_DECL_DEPRECATED void | messageOut (const QString &message, const QString &tag=QgsAuthManager::AUTH_MAN_TAG, QgsAuthManager::MessageLevel level=QgsAuthManager::INFO) const |
Custom logging signal to relay to console output and QgsMessageLog. | |
void | passwordHelperFailure () |
Signals emitted on password helper failure, mainly used in the tests to exit main application loop. | |
void | passwordHelperMessageLog (const QString &message, const QString &tag=QgsAuthManager::AUTH_MAN_TAG, Qgis::MessageLevel level=Qgis::MessageLevel::Info) |
Custom logging signal to inform the user about master password <-> password manager interactions. | |
Q_DECL_DEPRECATED void | passwordHelperMessageOut (const QString &message, const QString &tag=QgsAuthManager::AUTH_MAN_TAG, QgsAuthManager::MessageLevel level=QgsAuthManager::INFO) |
Custom logging signal to inform the user about master password <-> password manager interactions. | |
void | passwordHelperSuccess () |
Signals emitted on password helper success, mainly used in the tests to exit main application loop. | |
Public Member Functions | |
~QgsAuthManager () override | |
QgsAuthConfigurationStorageRegistry * | authConfigurationStorageRegistry () const |
Returns the authentication configuration storage registry. | |
Q_DECL_DEPRECATED const QString | authDatabaseConfigTable () const |
Name of the authentication database table that stores configs. | |
Q_DECL_DEPRECATED QSqlDatabase | authDatabaseConnection () const |
Sets up the application instance of the authentication database connection. | |
Q_DECL_DEPRECATED const QString | authDatabaseServersTable () const |
Name of the authentication database table that stores server exceptions/configs. | |
Q_DECL_DEPRECATED const QString | authenticationDatabasePath () const |
The standard authentication database file in ~/.qgis3/ or defined location. | |
const QString | authenticationDatabaseUri () const |
Returns the authentication database connection URI. | |
const QString | authenticationDatabaseUriStripped () const |
Returns the authentication database connection URI with the password stripped. | |
QString | authManTag () const |
Simple text tag describing authentication system for message logs. | |
QgsAuthMethod * | authMethod (const QString &authMethodKey) |
Gets authentication method from the config/provider cache via its key. | |
const QgsAuthMethodMetadata * | authMethodMetadata (const QString &authMethodKey) |
Gets authentication method metadata via its key. | |
QStringList | authMethodsKeys (const QString &dataprovider=QString()) |
Gets keys of supported authentication methods. | |
QgsAuthMethodsMap | authMethodsMap (const QString &dataprovider=QString()) |
Gets available authentication methods mapped to their key. | |
QVariant | authSetting (const QString &key, const QVariant &defaultValue=QVariant(), bool decrypt=false) |
authSetting get an authentication setting (retrieved as string and returned as QVariant( QString )) | |
QgsAuthMethodConfigsMap | availableAuthMethodConfigs (const QString &dataprovider=QString()) |
Gets mapping of authentication config ids and their base configs (not decrypted data) | |
bool | backupAuthenticationDatabase (QString *backuppath=nullptr) |
Close connection to current authentication database and back it up. | |
const QMap< QString, QPair< QgsAuthCertUtils::CaCertSource, QSslCertificate > > | caCertsCache () |
caCertsCache get all CA certs mapped to their sha1 from cache. | |
const QSslCertificate | certAuthority (const QString &id) |
Gets a certificate authority by id (sha hash) | |
const QList< QSslCertificate > | certIdentities () |
certIdentities get certificate identities | |
const QSslCertificate | certIdentity (const QString &id) |
certIdentity get a certificate identity by id (sha hash) | |
const QPair< QSslCertificate, QSslKey > | certIdentityBundle (const QString &id) |
Gets a certificate identity bundle by id (sha hash). | |
const QStringList | certIdentityBundleToPem (const QString &id) |
certIdentityBundleToPem get a certificate identity bundle by id (sha hash) returned as PEM text | |
QStringList | certIdentityIds () const |
certIdentityIds get list of certificate identity ids from database | |
QgsAuthCertUtils::CertTrustPolicy | certificateTrustPolicy (const QSslCertificate &cert) |
certificateTrustPolicy get trust policy for a particular certificate cert | |
const QMap< QgsAuthCertUtils::CertTrustPolicy, QStringList > | certTrustCache () |
certTrustCache get cache of certificate sha1s, per trust policy | |
QgsAuthCertUtils::CertTrustPolicy | certTrustPolicy (const QSslCertificate &cert) |
certTrustPolicy get whether certificate cert is trusted by user | |
void | clearMasterPassword () |
Clear supplied master password. | |
QgsAuthMethod * | configAuthMethod (const QString &authcfg) |
Gets authentication method from the config/provider cache. | |
QString | configAuthMethodKey (const QString &authcfg) const |
Gets key of authentication method associated with config ID. | |
QString | configIdRegex () const |
Returns the regular expression for authcfg=.{7} key/value token for authentication ids. | |
QStringList | configIds () const |
Gets list of authentication ids from database. | |
bool | configIdUnique (const QString &id) const |
Verify if provided authentication id is unique. | |
const QList< QSslCertificate > | databaseCAs () |
databaseCAs get database-stored certificate authorities | |
QgsAuthCertUtils::CertTrustPolicy | defaultCertTrustPolicy () |
Gets the default certificate trust policy preferred by user. | |
QgsAuthConfigurationStorageDb * | defaultDbStorage () const |
Transitional proxy to the first ready storage of database type. | |
const QString | disabledMessage () const |
Standard message for when QCA's qca-ossl plugin is missing and system is disabled. | |
void | dumpIgnoredSslErrorsCache_ () |
Utility function to dump the cache for debug purposes. | |
bool | ensureInitialized () const |
Performs lazy initialization of the authentication framework, if it has not already been done. | |
bool | eraseAuthenticationDatabase (bool backup, QString *backuppath=nullptr) |
Erase all rows from all tables in authentication database. | |
bool | existsAuthSetting (const QString &key) |
Check if an authentication setting exists. | |
bool | existsCertAuthority (const QSslCertificate &cert) |
Check if a certificate authority exists. | |
bool | existsCertIdentity (const QString &id) |
Check if a certificate identity exists. | |
bool | existsSslCertCustomConfig (const QString &id, const QString &hostport) |
Check if SSL certificate custom config exists. | |
bool | exportAuthenticationConfigsToXml (const QString &filename, const QStringList &authcfgs, const QString &password=QString()) |
Export authentication configurations to an XML file. | |
const QList< QSslCertificate > | extraFileCAs () |
extraFileCAs extra file-based certificate authorities | |
QHash< QString, QSet< QSslError::SslError > > | ignoredSslErrorCache () |
ignoredSslErrorCache Get ignored SSL error cache, keyed with cert/connection's sha:host:port. | |
bool | importAuthenticationConfigsFromXml (const QString &filename, const QString &password=QString(), bool overwrite=false) |
Import authentication configurations from an XML file. | |
Q_DECL_DEPRECATED bool | init (const QString &pluginPath=QString(), const QString &authDatabasePath=QString()) |
init initialize QCA, prioritize qca-ossl plugin and optionally set up the authentication database | |
bool | initSslCaches () |
Initialize various SSL authentication caches. | |
bool | isDisabled () const |
Whether QCA has the qca-ossl plugin, which a base run-time requirement. | |
bool | loadAuthenticationConfig (const QString &authcfg, QgsAuthMethodConfig &mconfig, bool full=false) |
Load an authentication config from the database into subclass. | |
const QMap< QString, QSslCertificate > | mappedDatabaseCAs () |
mappedDatabaseCAs get sha1-mapped database-stored certificate authorities | |
bool | masterPasswordHashInDatabase () const |
Verify a password hash existing in authentication database. | |
bool | masterPasswordIsSet () const |
Whether master password has be input and verified, i.e. authentication database is accessible. | |
bool | masterPasswordSame (const QString &password) const |
Check whether supplied password is the same as the one already set. | |
const QString | methodConfigTableName () const |
Returns the database table from the first ready storage that stores authentication configs, or an empty string if none available. | |
bool | passwordHelperDelete () |
Delete master password from wallet. | |
const QString | passwordHelperErrorMessage () |
Error message getter. | |
bool | passwordHelperSync () |
Store the password manager into the wallet. | |
bool | rebuildCaCertsCache () |
Rebuild certificate authority cache. | |
bool | rebuildCertTrustCache () |
Rebuild certificate authority cache. | |
bool | rebuildIgnoredSslErrorCache () |
Rebuild ignoredSSL error cache. | |
bool | rebuildTrustedCaCertsCache () |
Rebuild trusted certificate authorities cache. | |
bool | registerCoreAuthMethods () |
Instantiate and register existing C++ core authentication methods from plugins. | |
bool | removeAllAuthenticationConfigs () |
Clear all authentication configs from table in database and from provider caches. | |
bool | removeAuthenticationConfig (const QString &authcfg) |
Remove an authentication config in the database. | |
bool | removeAuthSetting (const QString &key) |
Remove an authentication setting. | |
bool | removeCertAuthority (const QSslCertificate &cert) |
Remove a certificate authority. | |
bool | removeCertIdentity (const QString &id) |
Remove a certificate identity. | |
bool | removeCertTrustPolicies (const QList< QSslCertificate > &certs) |
Remove a group certificate authorities. | |
bool | removeCertTrustPolicy (const QSslCertificate &cert) |
Remove a certificate authority. | |
bool | removeSslCertCustomConfig (const QString &id, const QString &hostport) |
Remove an SSL certificate custom config. | |
bool | resetMasterPassword (const QString &newpass, const QString &oldpass, bool keepbackup, QString *backuppath=nullptr) |
Reset the master password to a new one, then re-encrypt all previous configs in a new database file, optionally backup current database. | |
bool | scheduledAuthDatabaseErase () |
Whether there is a scheduled opitonal erase of authentication database. | |
bool | setDefaultCertTrustPolicy (QgsAuthCertUtils::CertTrustPolicy policy) |
Sets the default certificate trust policy preferred by user. | |
bool | setMasterPassword (bool verify=false) |
Main call to initially set or continually check master password is set. | |
bool | setMasterPassword (const QString &password, bool verify=false) |
Overloaded call to reset master password or set it initially without user interaction. | |
void | setPasswordHelperEnabled (bool enabled) |
Password helper enabled setter. | |
void | setScheduledAuthDatabaseErase (bool scheduleErase) |
Schedule an optional erase of authentication database, starting when mutex is lockable. | |
void | setScheduledAuthDatabaseEraseRequestEmitted (bool emitted) |
Re-emit a signal to schedule an optional erase of authentication database. | |
void | setup (const QString &pluginPath=QString(), const QString &authDatabasePath=QString()) |
Sets up the authentication manager configuration. | |
const QgsAuthConfigSslServer | sslCertCustomConfig (const QString &id, const QString &hostport) |
sslCertCustomConfig get an SSL certificate custom config by id (sha hash) and hostport (host:port) | |
const QgsAuthConfigSslServer | sslCertCustomConfigByHost (const QString &hostport) |
sslCertCustomConfigByHost get an SSL certificate custom config by hostport (host:port) | |
const QList< QgsAuthConfigSslServer > | sslCertCustomConfigs () |
sslCertCustomConfigs get SSL certificate custom configs | |
bool | storeAuthenticationConfig (QgsAuthMethodConfig &mconfig, bool overwrite=false) |
Store an authentication config in the database. | |
bool | storeAuthSetting (const QString &key, const QVariant &value, bool encrypt=false) |
Store an authentication setting (stored as string via QVariant( value ).toString() ) | |
bool | storeCertAuthorities (const QList< QSslCertificate > &certs) |
Store multiple certificate authorities. | |
bool | storeCertAuthority (const QSslCertificate &cert) |
Store a certificate authority. | |
bool | storeCertIdentity (const QSslCertificate &cert, const QSslKey &key) |
Store a certificate identity. | |
bool | storeCertTrustPolicy (const QSslCertificate &cert, QgsAuthCertUtils::CertTrustPolicy policy) |
Store user trust value for a certificate. | |
bool | storeSslCertCustomConfig (const QgsAuthConfigSslServer &config) |
Store an SSL certificate custom config. | |
QgsAuthMethod::Expansions | supportedAuthMethodExpansions (const QString &authcfg) |
Gets supported authentication method expansion(s), e.g. | |
const QList< QSslCertificate > | trustedCaCerts (bool includeinvalid=false) |
trustedCaCerts get list of all trusted CA certificates | |
const QList< QSslCertificate > | trustedCaCertsCache () |
trustedCaCertsCache cache of trusted certificate authorities, ready for network connections | |
const QByteArray | trustedCaCertsPemText () |
trustedCaCertsPemText get concatenated string of all trusted CA certificates | |
const QString | uniqueConfigId () const |
Gets a unique generated 7-character string to assign to as config id. | |
const QList< QSslCertificate > | untrustedCaCerts (QList< QSslCertificate > trustedCAs=QList< QSslCertificate >()) |
untrustedCaCerts get list of untrusted certificate authorities | |
bool | updateAuthenticationConfig (const QgsAuthMethodConfig &config) |
Update an authentication config in the database. | |
void | updateConfigAuthMethods () |
Sync the confg/authentication method cache with what is in database. | |
bool | updateDataSourceUriItems (QStringList &connectionItems, const QString &authcfg, const QString &dataprovider=QString()) |
Provider call to update a QgsDataSourceUri with an authentication config. | |
bool | updateIgnoredSslErrorsCache (const QString &shahostport, const QList< QSslError > &errors) |
Update ignored SSL error cache with possible ignored SSL errors, using sha:host:port key. | |
bool | updateIgnoredSslErrorsCacheFromConfig (const QgsAuthConfigSslServer &config) |
Update ignored SSL error cache with possible ignored SSL errors, using server config. | |
bool | updateNetworkProxy (QNetworkProxy &proxy, const QString &authcfg, const QString &dataprovider=QString()) |
Provider call to update a QNetworkProxy with an authentication config. | |
bool | updateNetworkReply (QNetworkReply *reply, const QString &authcfg, const QString &dataprovider=QString()) |
Provider call to update a QNetworkReply with an authentication config (used to skip known SSL errors, etc.) | |
bool | updateNetworkRequest (QNetworkRequest &request, const QString &authcfg, const QString &dataprovider=QString()) |
Provider call to update a QNetworkRequest with an authentication config. | |
bool | verifyMasterPassword (const QString &compare=QString()) |
Verify the supplied master password against any existing hash in authentication database. | |
Static Public Member Functions | |
static bool | hasConfigId (const QString &txt) |
Returns whether a string includes an authcfg ID token. | |
static bool | isFilesystemBasedDatabase (const QString &uri) |
Returns the true if the uri is a filesystem-based database (SQLite). | |
static bool | passwordHelperEnabled () |
Password helper enabled getter. | |
static bool | passwordHelperLoggingEnabled () |
Password helper logging enabled getter. | |
static void | setPasswordHelperLoggingEnabled (bool enabled) |
Password helper logging enabled setter. | |
static const QList< QSslCertificate > | systemRootCAs () |
systemRootCAs get root system certificate authorities | |
Static Public Attributes | |
static const QString | AUTH_MAN_TAG = QObject::tr( "Authentication Manager" ) |
The display name of the Authentication Manager. | |
static const QString | AUTH_PASSWORD_HELPER_DISPLAY_NAME |
The display name of the password helper (platform dependent) | |
Protected Member Functions | |
QgsAuthManager () | |
Static Protected Member Functions | |
static QgsAuthManager * | instance () |
Enforce singleton pattern. | |
Friends | |
class | QgsApplication |
Singleton offering an interface to manage the authentication configuration database and to utilize configurations through various authentication method plugins.
QgsAuthManager should not usually be directly created, but rather accessed through QgsApplication::authManager().
Definition at line 70 of file qgsauthmanager.h.
Message log level (mirrors that of QgsMessageLog, so it can also output there)
Enumerator | |
---|---|
INFO | |
WARNING | |
CRITICAL |
Definition at line 77 of file qgsauthmanager.h.
|
override |
Definition at line 3164 of file qgsauthmanager.cpp.
|
explicitprotected |
Definition at line 96 of file qgsauthmanager.cpp.
QgsAuthConfigurationStorageRegistry * QgsAuthManager::authConfigurationStorageRegistry | ( | ) | const |
Returns the authentication configuration storage registry.
Definition at line 3196 of file qgsauthmanager.cpp.
|
signal |
Emitted when the authentication db is significantly changed, e.g. large record removal, erased, etc.
|
inline |
Name of the authentication database table that stores configs.
Definition at line 136 of file qgsauthmanager.h.
QSqlDatabase QgsAuthManager::authDatabaseConnection | ( | ) | const |
Sets up the application instance of the authentication database connection.
Definition at line 104 of file qgsauthmanager.cpp.
|
signal |
Emitted when a user has indicated they may want to erase the authentication db.
|
inline |
Name of the authentication database table that stores server exceptions/configs.
Definition at line 149 of file qgsauthmanager.h.
const QString QgsAuthManager::authenticationDatabasePath | ( | ) | const |
The standard authentication database file in ~/.qgis3/ or defined location.
Definition at line 413 of file qgsauthmanager.cpp.
const QString QgsAuthManager::authenticationDatabaseUri | ( | ) | const |
Returns the authentication database connection URI.
Definition at line 165 of file qgsauthmanager.cpp.
const QString QgsAuthManager::authenticationDatabaseUriStripped | ( | ) | const |
Returns the authentication database connection URI with the password stripped.
Definition at line 170 of file qgsauthmanager.cpp.
|
inline |
Simple text tag describing authentication system for message logs.
Definition at line 270 of file qgsauthmanager.h.
QgsAuthMethod * QgsAuthManager::authMethod | ( | const QString & | authMethodKey | ) |
Gets authentication method from the config/provider cache via its key.
authMethodKey | Authentication method key |
Definition at line 953 of file qgsauthmanager.cpp.
const QgsAuthMethodMetadata * QgsAuthManager::authMethodMetadata | ( | const QString & | authMethodKey | ) |
Gets authentication method metadata via its key.
authMethodKey | Authentication method key |
Definition at line 966 of file qgsauthmanager.cpp.
QStringList QgsAuthManager::authMethodsKeys | ( | const QString & | dataprovider = QString() | ) |
Gets keys of supported authentication methods.
Definition at line 946 of file qgsauthmanager.cpp.
QgsAuthMethodsMap QgsAuthManager::authMethodsMap | ( | const QString & | dataprovider = QString() | ) |
Gets available authentication methods mapped to their key.
dataprovider | Provider key filter, returning only methods that support a particular provider |
Definition at line 980 of file qgsauthmanager.cpp.
QVariant QgsAuthManager::authSetting | ( | const QString & | key, |
const QVariant & | defaultValue = QVariant() , |
||
bool | decrypt = false |
||
) |
authSetting get an authentication setting (retrieved as string and returned as QVariant( QString ))
key | setting key |
defaultValue | |
decrypt | if the value needs decrypted |
Definition at line 1694 of file qgsauthmanager.cpp.
QgsAuthMethodConfigsMap QgsAuthManager::availableAuthMethodConfigs | ( | const QString & | dataprovider = QString() | ) |
Gets mapping of authentication config ids and their base configs (not decrypted data)
Definition at line 841 of file qgsauthmanager.cpp.
bool QgsAuthManager::backupAuthenticationDatabase | ( | QString * | backuppath = nullptr | ) |
Close connection to current authentication database and back it up.
Definition at line 1440 of file qgsauthmanager.cpp.
|
inline |
caCertsCache get all CA certs mapped to their sha1 from cache.
Definition at line 641 of file qgsauthmanager.h.
const QSslCertificate QgsAuthManager::certAuthority | ( | const QString & | id | ) |
Gets a certificate authority by id (sha hash)
certAuthority get a certificate authority by id (sha hash)
id | sha hash |
Definition at line 2537 of file qgsauthmanager.cpp.
const QList< QSslCertificate > QgsAuthManager::certIdentities | ( | ) |
certIdentities get certificate identities
Definition at line 1956 of file qgsauthmanager.cpp.
const QSslCertificate QgsAuthManager::certIdentity | ( | const QString & | id | ) |
certIdentity get a certificate identity by id (sha hash)
id | sha hash of the cert |
Definition at line 1866 of file qgsauthmanager.cpp.
const QPair< QSslCertificate, QSslKey > QgsAuthManager::certIdentityBundle | ( | const QString & | id | ) |
Gets a certificate identity bundle by id (sha hash).
id | sha shash |
Definition at line 1897 of file qgsauthmanager.cpp.
const QStringList QgsAuthManager::certIdentityBundleToPem | ( | const QString & | id | ) |
certIdentityBundleToPem get a certificate identity bundle by id (sha hash) returned as PEM text
id | sha hash |
Definition at line 1943 of file qgsauthmanager.cpp.
QStringList QgsAuthManager::certIdentityIds | ( | ) | const |
certIdentityIds get list of certificate identity ids from database
Definition at line 1991 of file qgsauthmanager.cpp.
QgsAuthCertUtils::CertTrustPolicy QgsAuthManager::certificateTrustPolicy | ( | const QSslCertificate & | cert | ) |
certificateTrustPolicy get trust policy for a particular certificate cert
cert |
Definition at line 2869 of file qgsauthmanager.cpp.
|
inline |
certTrustCache get cache of certificate sha1s, per trust policy
Definition at line 682 of file qgsauthmanager.h.
QgsAuthCertUtils::CertTrustPolicy QgsAuthManager::certTrustPolicy | ( | const QSslCertificate & | cert | ) |
certTrustPolicy get whether certificate cert is trusted by user
cert |
Definition at line 2778 of file qgsauthmanager.cpp.
|
slot |
Clear all authentication configs from authentication method caches.
Definition at line 3072 of file qgsauthmanager.cpp.
|
slot |
Clear an authentication config from its associated authentication method cache.
Definition at line 3086 of file qgsauthmanager.cpp.
|
inline |
Clear supplied master password.
Definition at line 221 of file qgsauthmanager.h.
QgsAuthMethod * QgsAuthManager::configAuthMethod | ( | const QString & | authcfg | ) |
Gets authentication method from the config/provider cache.
authcfg | Authentication config id |
Definition at line 917 of file qgsauthmanager.cpp.
QString QgsAuthManager::configAuthMethodKey | ( | const QString & | authcfg | ) | const |
Gets key of authentication method associated with config ID.
authcfg |
Definition at line 935 of file qgsauthmanager.cpp.
|
inline |
Returns the regular expression for authcfg=.{7} key/value token for authentication ids.
Definition at line 352 of file qgsauthmanager.h.
QStringList QgsAuthManager::configIds | ( | ) | const |
Gets list of authentication ids from database.
Definition at line 3640 of file qgsauthmanager.cpp.
bool QgsAuthManager::configIdUnique | ( | const QString & | id | ) | const |
Verify if provided authentication id is unique.
id | Id to check |
Definition at line 817 of file qgsauthmanager.cpp.
const QList< QSslCertificate > QgsAuthManager::databaseCAs | ( | ) |
databaseCAs get database-stored certificate authorities
Definition at line 2684 of file qgsauthmanager.cpp.
QgsAuthCertUtils::CertTrustPolicy QgsAuthManager::defaultCertTrustPolicy | ( | ) |
Gets the default certificate trust policy preferred by user.
Definition at line 2907 of file qgsauthmanager.cpp.
QgsAuthConfigurationStorageDb * QgsAuthManager::defaultDbStorage | ( | ) | const |
Transitional proxy to the first ready storage of database type.
Exposes the old SQLite local API from the new storage API.
Definition at line 4014 of file qgsauthmanager.cpp.
const QString QgsAuthManager::disabledMessage | ( | ) | const |
Standard message for when QCA's qca-ossl plugin is missing and system is disabled.
Definition at line 384 of file qgsauthmanager.cpp.
void QgsAuthManager::dumpIgnoredSslErrorsCache_ | ( | ) |
Utility function to dump the cache for debug purposes.
Definition at line 2320 of file qgsauthmanager.cpp.
bool QgsAuthManager::ensureInitialized | ( | ) | const |
Performs lazy initialization of the authentication framework, if it has not already been done.
Definition at line 184 of file qgsauthmanager.cpp.
bool QgsAuthManager::eraseAuthenticationDatabase | ( | bool | backup, |
QString * | backuppath = nullptr |
||
) |
Erase all rows from all tables in authentication database.
backup | Whether to backup of current database |
backuppath | Where the backup is locate |
Definition at line 1489 of file qgsauthmanager.cpp.
bool QgsAuthManager::existsAuthSetting | ( | const QString & | key | ) |
Check if an authentication setting exists.
Definition at line 1732 of file qgsauthmanager.cpp.
bool QgsAuthManager::existsCertAuthority | ( | const QSslCertificate & | cert | ) |
Check if a certificate authority exists.
Definition at line 2568 of file qgsauthmanager.cpp.
bool QgsAuthManager::existsCertIdentity | ( | const QString & | id | ) |
Check if a certificate identity exists.
Definition at line 2025 of file qgsauthmanager.cpp.
bool QgsAuthManager::existsSslCertCustomConfig | ( | const QString & | id, |
const QString & | hostport | ||
) |
Check if SSL certificate custom config exists.
Definition at line 2247 of file qgsauthmanager.cpp.
bool QgsAuthManager::exportAuthenticationConfigsToXml | ( | const QString & | filename, |
const QStringList & | authcfgs, | ||
const QString & | password = QString() |
||
) |
Export authentication configurations to an XML file.
filename | The file path to save the XML content to |
authcfgs | The list of configuration IDs to export |
password | A password string to encrypt the XML content |
Definition at line 1295 of file qgsauthmanager.cpp.
const QList< QSslCertificate > QgsAuthManager::extraFileCAs | ( | ) |
extraFileCAs extra file-based certificate authorities
Definition at line 2645 of file qgsauthmanager.cpp.
|
static |
Returns whether a string includes an authcfg ID token.
txt | String to check |
Definition at line 835 of file qgsauthmanager.cpp.
|
inline |
ignoredSslErrorCache Get ignored SSL error cache, keyed with cert/connection's sha:host:port.
Definition at line 576 of file qgsauthmanager.h.
bool QgsAuthManager::importAuthenticationConfigsFromXml | ( | const QString & | filename, |
const QString & | password = QString() , |
||
bool | overwrite = false |
||
) |
Import authentication configurations from an XML file.
filename | The file path from which the XML content will be read |
password | A password string to decrypt the XML content |
overwrite | If set to true , pre-existing authentication configurations will be overwritten |
Definition at line 1356 of file qgsauthmanager.cpp.
bool QgsAuthManager::init | ( | const QString & | pluginPath = QString() , |
const QString & | authDatabasePath = QString() |
||
) |
init initialize QCA, prioritize qca-ossl plugin and optionally set up the authentication database
pluginPath | the plugin path |
authDatabasePath | the authentication DB path |
true
on success Definition at line 178 of file qgsauthmanager.cpp.
bool QgsAuthManager::initSslCaches | ( | ) |
Initialize various SSL authentication caches.
Definition at line 1802 of file qgsauthmanager.cpp.
|
staticprotected |
Enforce singleton pattern.
Definition at line 84 of file qgsauthmanager.cpp.
bool QgsAuthManager::isDisabled | ( | ) | const |
Whether QCA has the qca-ossl plugin, which a base run-time requirement.
Definition at line 373 of file qgsauthmanager.cpp.
|
static |
Returns the true
if the uri is a filesystem-based database (SQLite).
Definition at line 150 of file qgsauthmanager.cpp.
bool QgsAuthManager::loadAuthenticationConfig | ( | const QString & | authcfg, |
QgsAuthMethodConfig & | mconfig, | ||
bool | full = false |
||
) |
Load an authentication config from the database into subclass.
authcfg | Associated authentication config id |
mconfig | Subclassed config to load into |
full | Whether to decrypt and populate all sensitive data in subclass |
Definition at line 1183 of file qgsauthmanager.cpp.
const QMap< QString, QSslCertificate > QgsAuthManager::mappedDatabaseCAs | ( | ) |
mappedDatabaseCAs get sha1-mapped database-stored certificate authorities
Definition at line 2720 of file qgsauthmanager.cpp.
bool QgsAuthManager::masterPasswordHashInDatabase | ( | ) | const |
Verify a password hash existing in authentication database.
Definition at line 3492 of file qgsauthmanager.cpp.
bool QgsAuthManager::masterPasswordIsSet | ( | ) | const |
Whether master password has be input and verified, i.e. authentication database is accessible.
Definition at line 575 of file qgsauthmanager.cpp.
bool QgsAuthManager::masterPasswordSame | ( | const QString & | password | ) | const |
Check whether supplied password is the same as the one already set.
password | Password to verify |
Definition at line 582 of file qgsauthmanager.cpp.
|
signal |
Emitted when a password has been verify (or not)
verified | The state of password's verification |
|
signal |
Custom logging signal to relay to console output and QgsMessageLog.
message | Message to send |
tag | Associated tag (title) |
level | Message log level |
|
signal |
Custom logging signal to relay to console output and QgsMessageLog.
message | Message to send |
tag | Associated tag (title) |
level | Message log level |
const QString QgsAuthManager::methodConfigTableName | ( | ) | const |
Returns the database table from the first ready storage that stores authentication configs, or an empty string if none available.
The table is prefixed with schema and escaped if necessary.
Definition at line 126 of file qgsauthmanager.cpp.
bool QgsAuthManager::passwordHelperDelete | ( | ) |
Delete master password from wallet.
Definition at line 3223 of file qgsauthmanager.cpp.
|
static |
Password helper enabled getter.
Definition at line 3336 of file qgsauthmanager.cpp.
|
inline |
Error message getter.
Definition at line 721 of file qgsauthmanager.h.
|
signal |
Signals emitted on password helper failure, mainly used in the tests to exit main application loop.
|
static |
Password helper logging enabled getter.
Definition at line 3353 of file qgsauthmanager.cpp.
|
signal |
Custom logging signal to inform the user about master password <-> password manager interactions.
message | Message to send |
tag | Associated tag (title) |
level | Message log level |
|
signal |
Custom logging signal to inform the user about master password <-> password manager interactions.
message | Message to send |
tag | Associated tag (title) |
level | Message log level |
|
signal |
Signals emitted on password helper success, mainly used in the tests to exit main application loop.
bool QgsAuthManager::passwordHelperSync | ( | ) |
Store the password manager into the wallet.
Definition at line 3055 of file qgsauthmanager.cpp.
bool QgsAuthManager::rebuildCaCertsCache | ( | ) |
Rebuild certificate authority cache.
Definition at line 2728 of file qgsauthmanager.cpp.
bool QgsAuthManager::rebuildCertTrustCache | ( | ) |
Rebuild certificate authority cache.
Definition at line 2920 of file qgsauthmanager.cpp.
bool QgsAuthManager::rebuildIgnoredSslErrorCache | ( | ) |
Rebuild ignoredSSL error cache.
Definition at line 2423 of file qgsauthmanager.cpp.
bool QgsAuthManager::rebuildTrustedCaCertsCache | ( | ) |
Rebuild trusted certificate authorities cache.
Definition at line 3036 of file qgsauthmanager.cpp.
bool QgsAuthManager::registerCoreAuthMethods | ( | ) |
Instantiate and register existing C++ core authentication methods from plugins.
Definition at line 761 of file qgsauthmanager.cpp.
bool QgsAuthManager::removeAllAuthenticationConfigs | ( | ) |
Clear all authentication configs from table in database and from provider caches.
Definition at line 1409 of file qgsauthmanager.cpp.
bool QgsAuthManager::removeAuthenticationConfig | ( | const QString & | authcfg | ) |
Remove an authentication config in the database.
authcfg | Associated authentication config id |
Definition at line 1248 of file qgsauthmanager.cpp.
bool QgsAuthManager::removeAuthSetting | ( | const QString & | key | ) |
Remove an authentication setting.
Definition at line 1759 of file qgsauthmanager.cpp.
bool QgsAuthManager::removeCertAuthority | ( | const QSslCertificate & | cert | ) |
Remove a certificate authority.
Definition at line 2598 of file qgsauthmanager.cpp.
bool QgsAuthManager::removeCertIdentity | ( | const QString & | id | ) |
Remove a certificate identity.
Definition at line 2052 of file qgsauthmanager.cpp.
bool QgsAuthManager::removeCertTrustPolicies | ( | const QList< QSslCertificate > & | certs | ) |
Remove a group certificate authorities.
Definition at line 2809 of file qgsauthmanager.cpp.
bool QgsAuthManager::removeCertTrustPolicy | ( | const QSslCertificate & | cert | ) |
Remove a certificate authority.
Definition at line 2828 of file qgsauthmanager.cpp.
bool QgsAuthManager::removeSslCertCustomConfig | ( | const QString & | id, |
const QString & | hostport | ||
) |
Remove an SSL certificate custom config.
Definition at line 2277 of file qgsauthmanager.cpp.
bool QgsAuthManager::resetMasterPassword | ( | const QString & | newpass, |
const QString & | oldpass, | ||
bool | keepbackup, | ||
QString * | backuppath = nullptr |
||
) |
Reset the master password to a new one, then re-encrypt all previous configs in a new database file, optionally backup current database.
newpass | New master password to replace existing |
oldpass | Current master password to replace existing |
keepbackup | Whether to keep the generated backup of current database |
backuppath | Where the backup is located, if kept |
Definition at line 589 of file qgsauthmanager.cpp.
|
inline |
Whether there is a scheduled opitonal erase of authentication database.
Definition at line 243 of file qgsauthmanager.h.
bool QgsAuthManager::setDefaultCertTrustPolicy | ( | QgsAuthCertUtils::CertTrustPolicy | policy | ) |
Sets the default certificate trust policy preferred by user.
Definition at line 2895 of file qgsauthmanager.cpp.
bool QgsAuthManager::setMasterPassword | ( | bool | verify = false | ) |
Main call to initially set or continually check master password is set.
verify | Whether password's hash was saved in authentication database |
Definition at line 418 of file qgsauthmanager.cpp.
bool QgsAuthManager::setMasterPassword | ( | const QString & | password, |
bool | verify = false |
||
) |
Overloaded call to reset master password or set it initially without user interaction.
password | Password to use |
verify | Whether password's hash was saved in authentication database |
Definition at line 452 of file qgsauthmanager.cpp.
void QgsAuthManager::setPasswordHelperEnabled | ( | bool | enabled | ) |
Password helper enabled setter.
Definition at line 3343 of file qgsauthmanager.cpp.
|
static |
Password helper logging enabled setter.
Definition at line 3360 of file qgsauthmanager.cpp.
void QgsAuthManager::setScheduledAuthDatabaseErase | ( | bool | scheduleErase | ) |
Schedule an optional erase of authentication database, starting when mutex is lockable.
Definition at line 732 of file qgsauthmanager.cpp.
|
inline |
Re-emit a signal to schedule an optional erase of authentication database.
emitted | Setting to false will cause signal to be emitted by the schedule timer. Setting to true will stop any emitting, but will not stop the schedule timer. |
Definition at line 267 of file qgsauthmanager.h.
void QgsAuthManager::setup | ( | const QString & | pluginPath = QString() , |
const QString & | authDatabasePath = QString() |
||
) |
Sets up the authentication manager configuration.
This method does not initialize the authentication framework, instead that is deferred to lazy-initialize when required.
pluginPath | the plugin path |
authDatabasePath | the authentication DB URI (or just the file path for SQLite) |
Definition at line 367 of file qgsauthmanager.cpp.
const QgsAuthConfigSslServer QgsAuthManager::sslCertCustomConfig | ( | const QString & | id, |
const QString & | hostport | ||
) |
sslCertCustomConfig get an SSL certificate custom config by id (sha hash) and hostport (host:port)
id | sha hash |
hostport | string host:port |
Definition at line 2128 of file qgsauthmanager.cpp.
const QgsAuthConfigSslServer QgsAuthManager::sslCertCustomConfigByHost | ( | const QString & | hostport | ) |
sslCertCustomConfigByHost get an SSL certificate custom config by hostport (host:port)
hostport | host:port |
Definition at line 2170 of file qgsauthmanager.cpp.
const QList< QgsAuthConfigSslServer > QgsAuthManager::sslCertCustomConfigs | ( | ) |
sslCertCustomConfigs get SSL certificate custom configs
Definition at line 2206 of file qgsauthmanager.cpp.
bool QgsAuthManager::storeAuthenticationConfig | ( | QgsAuthMethodConfig & | mconfig, |
bool | overwrite = false |
||
) |
Store an authentication config in the database.
mconfig | Associated authentication config id |
overwrite | If set to true , pre-existing authentication configurations will be overwritten |
Definition at line 1032 of file qgsauthmanager.cpp.
bool QgsAuthManager::storeAuthSetting | ( | const QString & | key, |
const QVariant & | value, | ||
bool | encrypt = false |
||
) |
Store an authentication setting (stored as string via QVariant( value ).toString() )
Definition at line 1649 of file qgsauthmanager.cpp.
bool QgsAuthManager::storeCertAuthorities | ( | const QList< QSslCertificate > & | certs | ) |
Store multiple certificate authorities.
Definition at line 2486 of file qgsauthmanager.cpp.
bool QgsAuthManager::storeCertAuthority | ( | const QSslCertificate & | cert | ) |
Store a certificate authority.
Definition at line 2505 of file qgsauthmanager.cpp.
bool QgsAuthManager::storeCertIdentity | ( | const QSslCertificate & | cert, |
const QSslKey & | key | ||
) |
Store a certificate identity.
Definition at line 1820 of file qgsauthmanager.cpp.
bool QgsAuthManager::storeCertTrustPolicy | ( | const QSslCertificate & | cert, |
QgsAuthCertUtils::CertTrustPolicy | policy | ||
) |
Store user trust value for a certificate.
Definition at line 2745 of file qgsauthmanager.cpp.
bool QgsAuthManager::storeSslCertCustomConfig | ( | const QgsAuthConfigSslServer & | config | ) |
Store an SSL certificate custom config.
Definition at line 2088 of file qgsauthmanager.cpp.
QgsAuthMethod::Expansions QgsAuthManager::supportedAuthMethodExpansions | ( | const QString & | authcfg | ) |
Gets supported authentication method expansion(s), e.g.
NetworkRequest | DataSourceURI, as flags
authcfg |
Definition at line 1017 of file qgsauthmanager.cpp.
|
static |
systemRootCAs get root system certificate authorities
Definition at line 2640 of file qgsauthmanager.cpp.
const QList< QSslCertificate > QgsAuthManager::trustedCaCerts | ( | bool | includeinvalid = false | ) |
trustedCaCerts get list of all trusted CA certificates
includeinvalid | whether invalid certs needs to be returned |
Definition at line 2972 of file qgsauthmanager.cpp.
|
inline |
trustedCaCertsCache cache of trusted certificate authorities, ready for network connections
Definition at line 707 of file qgsauthmanager.h.
const QByteArray QgsAuthManager::trustedCaCertsPemText | ( | ) |
trustedCaCertsPemText get concatenated string of all trusted CA certificates
Definition at line 3047 of file qgsauthmanager.cpp.
const QString QgsAuthManager::uniqueConfigId | ( | ) | const |
Gets a unique generated 7-character string to assign to as config id.
Definition at line 777 of file qgsauthmanager.cpp.
const QList< QSslCertificate > QgsAuthManager::untrustedCaCerts | ( | QList< QSslCertificate > | trustedCAs = QList<QSslCertificate>() | ) |
untrustedCaCerts get list of untrusted certificate authorities
Definition at line 3008 of file qgsauthmanager.cpp.
bool QgsAuthManager::updateAuthenticationConfig | ( | const QgsAuthMethodConfig & | config | ) |
Update an authentication config in the database.
config | Associated authentication config id |
Definition at line 1116 of file qgsauthmanager.cpp.
void QgsAuthManager::updateConfigAuthMethods | ( | ) |
Sync the confg/authentication method cache with what is in database.
Definition at line 890 of file qgsauthmanager.cpp.
bool QgsAuthManager::updateDataSourceUriItems | ( | QStringList & | connectionItems, |
const QString & | authcfg, | ||
const QString & | dataprovider = QString() |
||
) |
Provider call to update a QgsDataSourceUri with an authentication config.
connectionItems | The connection items, e.g. username=myname, of QgsDataSourceUri |
authcfg | Associated authentication config id |
dataprovider | Provider key filter, offering logic branching in authentication method |
Definition at line 1593 of file qgsauthmanager.cpp.
bool QgsAuthManager::updateIgnoredSslErrorsCache | ( | const QString & | shahostport, |
const QList< QSslError > & | errors | ||
) |
Update ignored SSL error cache with possible ignored SSL errors, using sha:host:port key.
Definition at line 2377 of file qgsauthmanager.cpp.
bool QgsAuthManager::updateIgnoredSslErrorsCacheFromConfig | ( | const QgsAuthConfigSslServer & | config | ) |
Update ignored SSL error cache with possible ignored SSL errors, using server config.
Definition at line 2346 of file qgsauthmanager.cpp.
bool QgsAuthManager::updateNetworkProxy | ( | QNetworkProxy & | proxy, |
const QString & | authcfg, | ||
const QString & | dataprovider = QString() |
||
) |
Provider call to update a QNetworkProxy with an authentication config.
proxy | the QNetworkProxy |
authcfg | Associated authentication config id |
dataprovider | Provider key filter, offering logic branching in authentication method |
Definition at line 1621 of file qgsauthmanager.cpp.
bool QgsAuthManager::updateNetworkReply | ( | QNetworkReply * | reply, |
const QString & | authcfg, | ||
const QString & | dataprovider = QString() |
||
) |
Provider call to update a QNetworkReply with an authentication config (used to skip known SSL errors, etc.)
reply | The QNetworkReply |
authcfg | Associated authentication config id |
dataprovider | Provider key filter, offering logic branching in authentication method |
Definition at line 1565 of file qgsauthmanager.cpp.
bool QgsAuthManager::updateNetworkRequest | ( | QNetworkRequest & | request, |
const QString & | authcfg, | ||
const QString & | dataprovider = QString() |
||
) |
Provider call to update a QNetworkRequest with an authentication config.
request | The QNetworkRequest |
authcfg | Associated authentication config id |
dataprovider | Provider key filter, offering logic branching in authentication method |
Definition at line 1538 of file qgsauthmanager.cpp.
bool QgsAuthManager::verifyMasterPassword | ( | const QString & | compare = QString() | ) |
Verify the supplied master password against any existing hash in authentication database.
compare | Password to compare against |
Definition at line 479 of file qgsauthmanager.cpp.
|
friend |
Definition at line 1013 of file qgsauthmanager.h.
|
static |
The display name of the Authentication Manager.
Definition at line 763 of file qgsauthmanager.h.
|
static |
The display name of the password helper (platform dependent)
Definition at line 760 of file qgsauthmanager.h.