---
name: "mongoc_auto_encryption_opts_set_tls_opts"
section: "3"
platform: "linux"
package: "libmongoc-doc"
version: "1.30.4-1+deb13u3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/mongoc_auto_encryption_opts_set_tls_opts"
---

# mongoc\_auto\_encryption\_opts\_set\_tls\_opts(3)

## SYNOPSIS

```
void
mongoc_auto_encryption_opts_set_tls_opts (
   mongoc_auto_encryption_opts_t *opts, const bson_t *tls_opts);
```

## PARAMETERS

- •

  **opts**: The *mongoc\_auto\_encryption\_opts\_t*

- •

  **tls\_opts**: A *bson\_t* 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>
}
```

The KMS providers **aws**, **azure**, **gcp**, and **kmip** are supported as keys in the **tls\_opts** document. They may include an optional name suffix separated with a colon. Example: **aws:name2**.

**tls\_opts** maps the KMS provider name 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_auto_encryption_opts_t *ae_opts = mongoc_auto_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_auto_encryption_opts_set_tls_opts (ae_opts, tls_opts);
```

See *Configuring TLS* for a description of the behavior of these options.

**SEE ALSO:**

```
mongoc_client_enable_auto_encryption()
```

```
In-Use Encryption
```

## AUTHOR

MongoDB, Inc

## COPYRIGHT

2009-present, MongoDB, Inc.
