...
Excerpt |
---|
Code Block |
---|
language | xml |
---|
firstline | 78 |
---|
linenumbers | true |
---|
| <!-- noSql database provider for the 4.0 connector framework -->
<noSQLConnectionProvider sslEnabled="false" sslInvalidHostNameAllowed="false">
<implementation>com.searchtechnologies.aspire:aspire-mongodb-provider</implementation>
<servers>mongodb-hostname:27017</servers>
</noSQLConnecitonProvider> |
|
Anchor |
---|
| Connect+to+a+Multi-node+MongoDB+Installation |
---|
| Connect+to+a+Multi-node+MongoDB+Installation |
---|
|
Connect to a Multi-node MongoDB Installation
To connect to a multi-node MongoDB installation, you just need to provide a comma-separated list of hostname:port of the MongoDB nodes in the cluster.
Example:
Code Block |
---|
language | xml |
---|
firstline | 78 |
---|
linenumbers | true |
---|
|
<!-- noSql database provider for the 4.0 connector framework -->
<noSQLConnectionProvider sslEnabled="false" sslInvalidHostNameAllowed="false">
<implementation>com.searchtechnologies.aspire:aspire-mongodb-provider</implementation>
<servers>mongodb-host1:27017,mongodb-host2:27017,mongodb-host3:27017,mongodb-host4:27017</servers>
</noSQLConnecitonProvider> |
Using TLS/SSL
If you need to connect to a MongoDB configured to Use TLS/SSL you need to set the following attributes into the noSQLConnectionProvider tag:
Attribute | Value | Description |
---|
sslEnabled | true | Enables the ssl on the Aspire MongoDB client |
sslInvalidHostNameAllowed | true/false | Disables the hostname verification from the SSL validation |
X.509 Authentication
Aspire 4.0 only supports authenticating to MongoDB using X.509.
The X.509 mechanism authenticates a user whose name is derived from the distinguished subject name of the X.509 certificate presented by the driver during SSL negotiation. This authentication method requires the use of SSL connections with certificate validation.
To configure it, add the following to your settings.xml file:
Code Block |
---|
language | xml |
---|
firstline | 78 |
---|
linenumbers | true |
---|
|
<!-- noSql database provider for the 4.0 connector framework -->
<noSQLConnectionProvider sslEnabled="true" sslInvalidHostNameAllowed="false">
<implementation>com.searchtechnologies.aspire:aspire-mongodb-provider</implementation>
<servers>mongodb-host1:27017,mongodb-host2:27017,mongodb-host3:27017,mongodb-host4:27017</servers>
<x509username>CN=user,OU=OrgUnit,O=myOrg</x509username>
</noSQLConnecitonProvider> |
Encrypt sensitive data in MongoDB
If you want to be extra safe and encrypt the URLs, IDs, or any other metadata stored in MongoDB, you can do by specifying the name of the fields to encrypt:
Code Block |
---|
language | xml |
---|
firstline | 78 |
---|
linenumbers | true |
---|
|
<!-- noSql database provider for the 4.0 connector framework -->
<noSQLConnectionProvider sslEnabled="false" sslInvalidHostNameAllowed="false">
<implementation>com.searchtechnologies.aspire:aspire-mongodb-provider</implementation>
<servers>mongodb-host1:27017,mongodb-host2:27017,mongodb-host3:27017,mongodb-host4:27017</servers>
<encryptFields>
<field>_id</field> <!-- Encrypts all the IDs -->
<field>url</field> <!-- Encrypts the url fields -->
<field>fetchUrl</field>
<field>parentId</field>
</encryptFields>
</noSQLConnecitonProvider> |