# Advanced Configuration

![](/files/4KG9EG0bUTVDI0igWSXQ)

### Installing and configuring included extensions <a href="#id-.advancedconfigurationv2.x-installingandconfiguringincludedextensions" id="id-.advancedconfigurationv2.x-installingandconfiguringincludedextensions"></a>

Supported extensions, such as those provided by the Keeper Connection Manager packages, are installed through installing their corresponding packages. If you are using [the keeper/guacamole Docker image,](/keeper-connection-manager/installation/docker-compose-install/keeper-guacamole.md) extensions are automatically installed using the above packages depending on the environment variables provided when the container is first started.

| Extension                                                                                                                                                         | Package name                         | Docker image environment variables |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------ | ---------------------------------- |
| [Active Directory / LDAP support](/keeper-connection-manager/authentication/authenticating-users-with-ldap.md)                                                    | `kcm-guacamole-auth-ldap`            | `LDAP_*`                           |
| [Duo two-factor authentication](/keeper-connection-manager/advanced-configuration/guacamole.properties/duo-two-factor-authentication-configuration-properties.md) | `kcm-guacamole-auth-duo`             | `DUO_*`                            |
| [Encrypted JSON authentication](/keeper-connection-manager/using-keeper-connection-manager/dynamic-connections.md)                                                | `kcm-guacamole-auth-json`            | `JSON_*`                           |
| MySQL database support                                                                                                                                            | `kcm-guacamole-auth-jdbc-mysql`      | `MYSQL_*`                          |
| PostgreSQL database support                                                                                                                                       | `kcm-guacamole-auth-jdbc-postgresql` | `POSTGRES_*`                       |
| SQL Server database support                                                                                                                                       | `kcm-guacamole-auth-jdbc-sqlserver`  | `SQLSERVER_*`                      |
| [TOTP two-factor authentication](/keeper-connection-manager/authentication/using-totp-for-multi-factor-authentication.md)                                         | `kcm-guacamole-auth-totp`            | `TOTP_*`                           |
| [SAML 2.0 / SSO Integration](/keeper-connection-manager/authentication/authenticating-users-with-saml.md)                                                         | `kcm-guacamole-auth-saml`            | `SAML_*`                           |
| [OpenID Connect Integration](/keeper-connection-manager/authentication/authenticating-users-with-openid-connect.md)                                               | `kcm-guacamole-auth-openid`          | `OPENID_*`                         |

The Keeper Connection Manager packages for supported extensions will automatically create symbolic links to install themselves and any needed libraries/drivers. You do not need to manually create links, copy files, etc. for the extensions which are provided within the Keeper Connection Manager repository.

### Custom Extensions

The functionality of Keeper Connection Manager can be extended throught the use of custom extensions. [This page](/keeper-connection-manager/custom-extensions.md) describes how to create a custom extension with examples.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.keeper.io/keeper-connection-manager/advanced-configuration.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
