17 #ifndef QGSAUTHCONFIG_H
18 #define QGSAUTHCONFIG_H
20 #include "qgis_core.h"
24 #include <QDomElement>
25 #include <QDomDocument>
28 #include <QSslCertificate>
62 const QString
id()
const {
return mId; }
64 void setId(
const QString &
id ) { mId = id; }
67 const QString
name()
const {
return mName; }
69 void setName(
const QString &name ) { mName = name; }
72 const QString
uri()
const {
return mUri; }
73 void setUri(
const QString &uri ) { mUri = uri; }
76 QString
method()
const {
return mMethod; }
77 void setMethod(
const QString &method ) { mMethod = method; }
88 bool isValid(
bool validateid =
false )
const;
94 const QString configString()
const;
100 void loadConfigString(
const QString &configstr );
117 void setConfig(
const QString &key,
const QString &value );
125 void setConfigList(
const QString &key,
const QStringList &value );
132 int removeConfig(
const QString &key );
139 QString config(
const QString &key,
const QString &defaultvalue = QString() )
const;
145 QStringList configList(
const QString &key )
const;
151 bool hasConfig(
const QString &key )
const;
164 static bool uriToResource(
const QString &accessurl, QString *resource,
bool withpath =
false );
173 bool writeXml( QDomElement &parentElement, QDomDocument &document );
180 bool readXml(
const QDomElement &element );
191 static const QString CONFIG_SEP;
192 static const QString CONFIG_KEY_SEP;
193 static const QString CONFIG_LIST_SEP;
195 static const int CONFIG_VERSION;
218 QgsPkiBundle(
const QSslCertificate &clientCert = QSslCertificate(),
219 const QSslKey &clientKey = QSslKey(),
220 const QList<QSslCertificate> &caChain = QList<QSslCertificate>() );
229 static const QgsPkiBundle fromPemPaths(
const QString &certPath,
230 const QString &keyPath,
231 const QString &keyPass = QString(),
232 const QList<QSslCertificate> &caChain = QList<QSslCertificate>() );
239 static const QgsPkiBundle fromPkcs12Paths(
const QString &bundlepath,
240 const QString &bundlepass = QString() );
246 bool isValid()
const;
249 const QString certId()
const;
254 void setClientCert(
const QSslCertificate &cert );
259 void setClientKey(
const QSslKey &certkey );
262 const QList<QSslCertificate>
caChain()
const {
return mCaChain; }
264 void setCaChain(
const QList<QSslCertificate> &cachain ) { mCaChain = cachain; }
267 QSslCertificate mCert;
269 QList<QSslCertificate> mCaChain;
289 const QSslCertificate &cert,
290 const QSslKey &certkey,
291 const QList<QSslCertificate> &cachain = QList<QSslCertificate>( ) );
318 QList<QSslCertificate>
caChain()
const {
return mCaChain; }
324 void setCaChain(
const QList<QSslCertificate> &caChain ) { mCaChain = caChain; }
328 QSslCertificate mCert;
330 QList<QSslCertificate> mCaChain;
336 % MappedType QList<QSslError::SslError>
342 % ConvertFromTypeCode
346 if ( ( l = PyList_New( sipCpp->size() ) ) == NULL )
350 QList<QSslError::SslError>::iterator it = sipCpp->begin();
351 for (
int i = 0; it != sipCpp->end(); ++it, ++i )
355 if ( ( tobj = sipConvertFromEnum( *it, sipType_QSslError_SslError ) ) == NULL )
360 PyList_SET_ITEM( l, i, tobj );
368 if ( sipIsErr == NULL )
369 return PyList_Check( sipPy );
371 QList<QSslError::SslError> *qlist =
new QList<QSslError::SslError>;
373 for (
int i = 0; i < PyList_GET_SIZE( sipPy ); ++i )
375 *qlist << ( QSslError::SslError )SIPLong_AsLong( PyList_GET_ITEM( sipPy, i ) );
379 return sipGetState( sipTransferObj );
412 const QList<QSslError> sslIgnoredErrors()
const;
446 const QString configString()
const;
448 void loadConfigString(
const QString &config = QString() );
455 QString mSslHostPort;
456 QSslCertificate mSslCert;
458 QSsl::SslProtocol mSslProtocol;
460 QList<QSslError::SslError> mSslIgnoredErrors;
461 QSslSocket::PeerVerifyMode mSslPeerVerifyMode = QSslSocket::VerifyPeer;
462 int mSslPeerVerifyDepth = 0;
465 static const QString CONF_SEP;
Configuration container for SSL server connection exceptions or overrides.
void setSslProtocol(QSsl::SslProtocol protocol)
Sets SSL server protocol to use in connections.
void setSslCertificate(const QSslCertificate &cert)
Sets server certificate object.
void setSslHostPort(const QString &hostport)
Sets server host:port string.
int version() const
Version of the configuration (used for future upgrading)
QSsl::SslProtocol sslProtocol() const
SSL server protocol to use in connections.
void setSslPeerVerifyMode(QSslSocket::PeerVerifyMode mode)
Sets SSL client's peer verify mode to use in connections.
void setVersion(int version)
Sets version of the configuration (used for future upgrading)
void setSslPeerVerifyDepth(int depth)
Set number or SSL client's peer to verify in connections.
const QList< QSslError::SslError > sslIgnoredErrorEnums() const
SSL server errors (as enum list) to ignore in connections.
int sslPeerVerifyDepth() const
Number or SSL client's peer to verify in connections.
void setSslIgnoredErrorEnums(const QList< QSslError::SslError > &errors)
Sets SSL server errors (as enum list) to ignore in connections.
int qtVersion() const
Qt version when the configuration was made (SSL protocols may differ)
QSslSocket::PeerVerifyMode sslPeerVerifyMode() const
SSL client's peer verify mode to use in connections.
const QSslCertificate sslCertificate() const
Server certificate object.
const QString sslHostPort() const
Server host:port string.
void setQtVersion(int version)
Sets Qt version when the configuration was made (SSL protocols may differ)
Configuration storage class for authentication method configurations.
QString method() const
Textual key of the associated authentication method.
const QString uri() const
A URI to auto-select a config when connecting to a resource.
void setName(const QString &name)
Sets name of configuration.
void setConfigMap(const QgsStringMap &map)
Set extended configuration map.
void setVersion(int version)
Sets version of the configuration.
const QString name() const
Gets name of configuration.
const QString id() const
Gets 'authcfg' 7-character alphanumeric ID of the config.
void clearConfigMap()
Clear all configs.
int version() const
Gets version of the configuration.
QgsStringMap configMap() const
Gets extended configuration, mapped to key/value pairs of QStrings.
void setMethod(const QString &method)
void setUri(const QString &uri)
void setId(const QString &id)
Sets auth config ID.
Storage set for PKI bundle: SSL certificate, key, optional CA cert chain.
const QSslKey clientKey() const
Private key object.
void setCaChain(const QList< QSslCertificate > &cachain)
Sets chain of Certificate Authorities for client certificate.
const QList< QSslCertificate > caChain() const
Chain of Certificate Authorities for client certificate.
const QSslCertificate clientCert() const
Client certificate object.
Storage set for constructed SSL certificate, key, associated with an authentication config.
void setClientCertKey(const QSslKey &certkey)
Sets private key object.
QList< QSslCertificate > caChain() const
caChain return the CA chain
const QSslCertificate clientCert() const
Client certificate object.
const QgsAuthMethodConfig config() const
Authentication method configuration.
void setConfig(const QgsAuthMethodConfig &config)
Sets authentication method configuration.
const QSslKey clientCertKey() const
Private key object.
void setClientCert(const QSslCertificate &cert)
Sets client certificate object.
void setCaChain(const QList< QSslCertificate > &caChain)
setCaChain set the CA chain
QMap< QString, QString > QgsStringMap
QHash< QString, QgsAuthMethodConfig > QgsAuthMethodConfigsMap
bool operator==(const QgsFeatureIterator &fi1, const QgsFeatureIterator &fi2)
bool operator!=(const QgsFeatureIterator &fi1, const QgsFeatureIterator &fi2)