table of contents
| MONGOC_CLIENT_ENCRYPTION_OPTS_SET_TLS_OPTS(3) | libmongoc | MONGOC_CLIENT_ENCRYPTION_OPTS_SET_TLS_OPTS(3) |
SYNOPSIS¶
void mongoc_client_encryption_opts_set_tls_opts (
mongoc_client_encryption_opts_t *opts, const bson_t *tls_opts);
PARAMETERS¶
- opts: The mongoc_client_encryption_opts_t <>
- tls_opts: A bson_t <https://www.mongoc.org/libbson/current/bson_t.html> mapping a Key Management Service (KMS) provider to a BSON document with TLS options.
tls_opts is a BSON document of the following form:
<KMS provider>: {
tlsCaFile: Optional<String>
tlsCertificateKeyFile: Optional<String>
tlsCertificateKeyFilePassword: Optional<String>
}
KMS providers are specified as a string of the form <KMS provider type> or <KMS provider type>:<KMS provider name>. The supported KMS provider types are aws, azure, gcp, local, and kmip. The optional name enables configuring multiple KMS providers with the same KMS provider type (e.g. aws:name1 and aws:name2 can refer to different AWS accounts).
tls_opts maps the KMS provider to a BSON document for TLS options.
The BSON document for TLS options may contain the following keys:
- MONGOC_URI_TLSCERTIFICATEKEYFILE
- MONGOC_URI_TLSCERTIFICATEKEYFILEPASSWORD
- MONGOC_URI_TLSCAFILE
Example use
mongoc_client_encryption_opts_t *ce_opts = mongoc_client_encryption_opts_new();
bson_t *tls_opts = bson_new();
BCON_APPEND(tls_opts, "kmip", "{", MONGOC_URI_TLSCAFILE, "ca1.pem", "}");
BCON_APPEND(tls_opts, "aws", "{", MONGOC_URI_TLSCAFILE, "ca2.pem", "}");
mongoc_client_encryption_opts_set_tls_opts(ce_opts, tls_opts);
See Configuring TLS <https://www.mongodb.com/docs/languages/c/c-driver/current/libmongoc/guides/configuring_tls/> for a description of the behavior of these options.
See also:
In-Use Encryption <https://www.mongodb.com/docs/languages/c/c-driver/current/libmongoc/guides/in-use-encryption/>
Author¶
MongoDB, Inc
Copyright¶
2009-present, MongoDB, Inc.
| November 26, 2025 | 2.2.0 |