Este producto no es compatible con el sitio Datadog seleccionado. ().

Información general

Las acciones privadas permiten a tus procesos y aplicaciones de Datadog interactuar con servicios alojados en tu red privada sin exponer tus servicios a la Internet pública. Para utilizar acciones privadas, debes instalar un ejecutor de acción privado en un host de tu red y emparejar el ejecutor con una conexión de Datadog. Para obtener más información sobre cómo configurar un ejecutor y emparejarlo con una conexión, consulta Private Actions.

Algunas acciones privadas, como Jenkins y PostgreSQL, requieren credenciales para poder funcionar. Para configurar credenciales para una acción privada, debes:

  1. Navega hasta el directorio donde almacenaste la configuración de tu ejecutor (por defecto: config/credentials/).
  2. En este directorio, crea un archivo JSON utilizando la estructura JSON proporcionada en los archivos de credenciales. Como alternativa, edita el archivo JSON predeterminado generado automáticamente durante el arranque del ejecutor.
    • Nota: Estos archivos están disponibles para el ejecutor en su directorio /etc/dd-action-runner/config/credentials/.
  3. Especifica la ruta a la credencial en la conexión del ejecutor. Utiliza la ruta al archivo en el contenedor. Por ejemplo: /etc/dd-action-runner/config/credentials/jenkins_token.json.

Archivos de credenciales

HTTP admite tres métodos de autenticación:

  • Autenticación básica: utilízala cuando tu servidor HTTP requiera autenticación de nombre de usuario y contraseña.
  • Autenticación por token: utilízalo cuando tu servidor HTTP requiera uno o más tokens personalizados en encabezados o parámetros de consulta.
  • Sin autenticación: utilízalo cuando tu servidor HTTP no requiera autenticación.

Autenticación básica

La autenticación básica requiere un archivo de credenciales con un nombre de usuario y una contraseña:

/etc/dd-action-runner/config/credentials/http_basic.json

{
    "auth_type": "Basic Auth",
    "credentials": [
        {
            "username": "USERNAME",
            "password": "PASSWORD"
        }
    ]
}

Sustituye USERNAME y PASSWORD por tu nombre de usuario y tu contraseña.

En la conexión del ejecutor, especifica la ubicación del archivo de credenciales en el contenedor del ejecutor de acción privado. En este ejemplo, el archivo de credenciales se almacena en /etc/dd-action-runner/config/credentials/http_basic.json.

La ruta al archivo de credenciales es '/etc/dd-action-runner/config/credentials/http_basic.json'

Autenticación mediante token

La autenticación por token requiere un archivo de credenciales con una matriz de nombres y valores de token:

/etc/dd-action-runner/config/credentials/http_token.json

{
    "auth_type": "Token Auth",
    "credentials": [
        {
            "tokenName": "TOKEN1",
            "tokenValue": "VALUE1"
        },
        {
            "tokenName": "TOKEN2",
            "tokenValue": "VALUE2"
        }
    ]
}

Sustituye TOKEN1, TOKEN2, VALUE1 y VALUE2 por los nombres y valores de tus tokens.

En la conexión del ejecutor, especifica la ubicación del archivo de credenciales en el contenedor del ejecutor de acción privado. En este ejemplo, el archivo de credenciales se almacena en /etc/dd-action-runner/config/credentials/http_token.json.

La ruta al archivo de credenciales es '/etc/dd-action-runner/config/credentials/http_token.json'

Sin autenticación

Este tipo de conexión es adecuado para los endpoints HTTP que no requieren autenticación.

Para configurar este conexión, especifica la URL del endpoint:

Una conexión HTTP sin autenticación

La conexión de GitLab acepta las siguientes credenciales:

CredencialObligatorioDescripción
baseURLLa URL de tu instancia autogestionada de GitLab. Para más información, consulta Documentación de la API de GitLab.
gitlabApiTokenEl token de la API para autenticarte con tu instancia de GitLab. Genera este token en tu configuración de usuario de GitLab.

Incluye todas las credenciales en un único archivo:

/etc/dd-action-runner/config/credentials/gitlab_token.json

{
        "auth_type": "Token Auth",
        "credentials": [
                {
                        "tokenName": "gitlabApiToken",
                        "tokenValue": "GITLAB_API_TOKEN"
                },
                {
                        "tokenName": "baseURL",
                        "tokenValue": "GITLAB_URL"
                }
        ]
}

Sustituye GITLAB_API_TOKEN y GITLAB_URL por tus credenciales.

En la conexión del ejecutor, especifica la ubicación del archivo de credenciales en el contenedor del ejecutor de acción privado. En este ejemplo, el archivo de credenciales se almacena en /etc/dd-action-runner/config/credentials/gitlab_token.json.

La ruta al archivo de credenciales es '/etc/dd-action-runner/config/credentials/gitlab_token.json'

La conexión de Jenkins acepta las siguientes credenciales:

CredencialObligatorioDescripción
domainEl dominio del servidor de Jenkins al que deseas conectarte.
usernameEl nombre de usuario del usuario de Jenkins que deseas utilizar para autenticarte con el servidor de Jenkins. Este usuario debe tener los permisos necesarios para realizar las acciones que deseas que realice el ejecutor.
tokenEl token de API del usuario de Jenkins que deseas utilizar para autenticarte con el servidor de Jenkins. Este usuario debe tener los permisos necesarios para realizar las acciones que deseas realizar. Puedes generar un token de API en la configuración de usuario de Jenkins.

Incluye todas las credenciales en un único archivo:

/etc/dd-action-runner/config/credentials/jenkins_token.json

{
        "auth_type": "Token Auth",
        "credentials": [
                {
                        "tokenName": "username",
                        "tokenValue": "USERNAME"
                },
                {
                        "tokenName": "token",
                        "tokenValue": "API_TOKEN"
                },
                {
                        "tokenName": "domain",
                        "tokenValue": "DOMAIN"
                }
        ]
}

Sustituye USERNAME, API_TOKEN y DOMAIN por tus credenciales.

En la conexión del ejecutor, especifica la ubicación del archivo de credenciales en el contenedor del ejecutor de acción privado. En este ejemplo, el archivo de credenciales se almacena en /etc/dd-action-runner/config/credentials/jenkins_token.json.

La ruta al archivo de credenciales es '/etc/dd-action-runner/config/credentials/jenkins_token.json'

MongoDB admite dos métodos de autenticación:

  • Autenticación SRV: utilízalo cuando te conectes a MongoDB Atlas o cuando necesites una detección automática de conjuntos de réplica y conmutación por error. Este método utiliza un registro de DNS SRV para detectar automáticamente todos los miembros de un conjunto de réplica.
  • Autenticación estándar: utilízala cuando te conectes directamente a un servidor de MongoDB o cuando necesites especificar el host y el puerto exactos.

Autenticación SRV

La autenticación SRV de MongoDB requiere las siguientes credenciales:

CredencialObligatorioDescripción
usernameEl nombre de usuario de MongoDB para la autenticación.
passwordLa contraseña de MongoDB para la autenticación.
srvHostEl host de SRV para MongoDB Atlas o la detección del conjunto de réplica.
databaseNoEl nombre de la base de datos a la que conectarte.

Incluye todas las credenciales en un único archivo:

/etc/dd-action-runner/config/credentials/mongodb_srv_token.json

{
        "auth_type": "Token Auth",
        "credentials": [
                {
                        "tokenName": "username",
                        "tokenValue": "USERNAME"
                },
                {
                        "tokenName": "password",
                        "tokenValue": "PASSWORD"
                },
                {
                        "tokenName": "srvHost",
                        "tokenValue": "SRV_HOST"
                },
                {
                        "tokenName": "database",
                        "tokenValue": "DATABASE"
                }
        ]
}

Sustituye USERNAME, PASSWORD, SRV_HOST y DATABASE por tus credenciales.

En la conexión del ejecutor, especifica la ubicación del archivo de credenciales en el contenedor del ejecutor de acción privado. En este ejemplo, el archivo de credenciales se almacena en /etc/dd-action-runner/config/credentials/mongodb_srv_token.json.

La ruta al archivo de credenciales es '/etc/dd-action-runner/config/credentials/mongodb_srv_token.json'

Autenticación estándar

La autenticación estándar de MongoDB acepta las siguientes credenciales:

CredencialObligatorioDescripción
usernameEl nombre de usuario de MongoDB para la autenticación.
passwordLa contraseña de MongoDB para la autenticación.
hostEl nombre de host del servidor de MongoDB.
portEl número de puerto del servidor de MongoDB.
databaseNoEl nombre de la base de datos a la que conectarte.
authSourceNoLa base de datos que contiene las credenciales del usuario. Especifica si el usuario se crea en una base de datos distinta de admin.
authMechanismNoEl mecanismo de autenticación a utilizar. Especifica si se requiere un mecanismo de autenticación específico.

Incluye todas las credenciales en un único archivo:

/etc/dd-action-runner/config/credentials/mongodb_standard_token.json

{
        "auth_type": "Token Auth",
        "credentials": [
                {
                        "tokenName": "username",
                        "tokenValue": "USERNAME"
                },
                {
                        "tokenName": "password",
                        "tokenValue": "PASSWORD"
                },
                {
                        "tokenName": "host",
                        "tokenValue": "HOST"
                },
                {
                        "tokenName": "port",
                        "tokenValue": "PORT"
                },
                {
                        "tokenName": "database",
                        "tokenValue": "DATABASE"
                },
                {
                        "tokenName": "authSource",
                        "tokenValue": "AUTH_SOURCE"
                },
                {
                        "tokenName": "authMechanism",
                        "tokenValue": "AUTH_MECHANISM"
                }
        ]
}

Sustituye USERNAME, PASSWORD, HOST, PORT, DATABASE, AUTH_SOURCE y AUTH_MECHANISM por tus credenciales.

En la conexión del ejecutor, especifica la ubicación del archivo de credenciales en el contenedor del ejecutor de acción privado. En este ejemplo, el archivo de credenciales se almacena en /etc/dd-action-runner/config/credentials/mongodb_standard_token.json.

La ruta al archivo de credenciales es '/etc/dd-action-runner/config/credentials/mongodb_standard_token.json'

La conexión PostgreSQL acepta las siguientes credenciales:

CredencialObligatorioDescripción
hostEl nombre del host al que conectarse. Para obtener más información, consulta la documentación oficial de PostGreSQL.
portEl número del puerto al que conectarse en el host del servidor o la extensión del nombre de archivo del socket para conexiones de dominio UNIX. Para obtener más información, consulta la documentación oficial de PostGreSQL.
userEl nombre de usuario PostgreSQL al que conectarse.

Para obtener más información, consulta la documentación oficial de PostGreSQL.
passwordLa contraseña a utilizar si el servidor exige autenticación por contraseña.

Para obtener más información, consulta la documentación oficial de PostGreSQL.
databaseEl nombre de la base de datos. Para obtener más información, consulta la documentación oficial de PostGreSQL.
sslmodeEsta opción determina si se negocia una conexión segura SSL TCP/IP con el servidor y con qué prioridad.

Las opciones disponibles son require y disable.

Para obtener más información, consulta la documentación oficial de PostGreSQL.
applicationNameNoEl nombre de la aplicación que se conecta al servidor PostGreSQL. Para obtener más información, consulta la documentación oficial de PostGreSQL.
searchPathNoEstablece una ruta de búsqueda de esquemas. Para obtener más información, consulta la documentación oficial de PostGreSQL.

Incluye todas las credenciales en un único archivo:

/etc/dd-action-runner/config/credentials/postgresql_token.json

{
        "auth_type": "Token Auth",
        "credentials": [
                {
                        "tokenName": "host",
                        "tokenValue": "HOST_NAME"
                },
                {
                        "tokenName": "port",
                        "tokenValue": "PORT"
                },
                {
                        "tokenName": "user",
                        "tokenValue": "USER"
                },
                {
                        "tokenName": "password",
                        "tokenValue": "PASSWORD"
                },
                {
                        "tokenName": "database",
                        "tokenValue": "DATABASE_NAME"
                },
                {
                        "tokenName": "sslmode",
                        "tokenValue": "require"
                },
                {
                        "tokenName": "applicationName",
                        "tokenValue": "APPLICATION_NAME"
                },
                {
                        "tokenName": "searchPath",
                        "tokenValue": "SEARCH_PATH"
                }
        ]
}

Sustituye los valores del ejemplo por tus credenciales.

En la conexión del ejecutor, especifica la ubicación del archivo de credenciales en el contenedor del ejecutor de acción privado. En este ejemplo, el archivo de credenciales se almacena en /etc/dd-action-runner/config/credentials/postgresql_token.json.

La ruta al archivo de credenciales es '/etc/dd-action-runner/config/credentials/postgresql_token.json`'

El Temporal admite tres métodos de autenticación:

  • Autenticación mTLS: utilízala para la comunicación más segura con autenticación de certificado bidireccional de servidor a cliente.
  • Autenticación TLS: utilízala para una comunicación segura con autenticación de certificado de servidor.
  • Sin autenticación: utilizar para una comunicación no cifrada (no recomendado para entornos de producción).

Autenticación mTLS

La autenticación mTLS Temporal requiere las siguientes credenciales:

CredencialObligatorioDescripción
serverAddressLa dirección del servidor (nombre de host y puerto opcional). Si no se define, el puerto es por defecto 7233.
serverNameOverrideEl nombre de servidor que anula el nombre de destino (SNI) utilizado para la comprobación del nombre de host de TLS. Esto puede ser útil cuando se tiene un proxy inverso delante de un servidor temporal y se desea anular el SNI para dirigir el tráfico al backend apropiado basándose en reglas personalizadas.
serverRootCACertificateEl certificado de CA raíz utilizado por el servidor. Si no se establece, y si el certificado del servidor lo emite una autoridad de confianza, la verificación seguirá siendo correcta (por ejemplo, si se utiliza un proveedor de nube como AWS, Google Cloud o Azure, que emiten certificados de servidor a través de CA reconocidas y de confianza).
clientCertPairCrtEl certificado del cliente para conectarte con mTLS.
clientCertPairKeyLa clave del cliente para conectarte con mTLS.

Incluye todas las credenciales en un único archivo:

/etc/dd-action-runner/config/credentials/temporal_mTLS_token.json

{
        "auth_type": "Token Auth",
        "credentials": [
                {
                        "tokenName": "serverAddress",
                        "tokenValue": "SERVER_ADDRESS"
                },
                {
                        "tokenName": "serverNameOverride",
                        "tokenValue": "SERVER_NAME_OVERRIDE"
                },
                {
                        "tokenName": "serverRootCACertificate",
                        "tokenValue": "SERVER_ROOT_CA_CERTIFICATE"
                },
                {
                        "tokenName": "clientCertPairCrt",
                        "tokenValue": "CLIENT_CERTIFICATE"
                },
                {
                        "tokenName": "clientCertPairKey",
                        "tokenValue": "CLIENT_KEY"
                }
        ]
}

Sustituye SERVER_ADDRESS, SERVER_NAME_OVERRIDE, SERVER_ROOT_CA_CERTIFICATE, CLIENT_CERTIFICATE y CLIENT_KEY por tus credenciales.

En la conexión del ejecutor, especifica la ubicación del archivo de credenciales en el contenedor del ejecutor de acción privado. En este ejemplo, el archivo de credenciales se almacena en /etc/dd-action-runner/config/credentials/temporal_mTLS_token.json.

La ruta del archivo de credenciales es '/etc/dd-action-runner/config/credentials/temporal_mTLS_token.json'

Autenticación TLS

La autenticación TLS temporal requiere las siguientes credenciales:

CredencialObligatorioDescripción
serverAddressLa dirección del servidor (nombre de host y puerto opcional). Si no se define, el puerto es por defecto 7233.
serverNameOverrideEl nombre de servidor que anula el nombre de destino (SNI) utilizado para la comprobación del nombre de host de TLS. Esto puede ser útil cuando se tiene un proxy inverso delante de un servidor temporal y se desea anular el SNI para dirigir el tráfico al backend apropiado basándose en reglas personalizadas.
serverRootCACertificateEl certificado de CA raíz utilizado por el servidor. Si no se establece, y si el certificado del servidor lo emite una autoridad de confianza, la verificación seguirá siendo correcta (por ejemplo, si se utiliza un proveedor de nube como AWS, Google Cloud o Azure, que emiten certificados de servidor a través de CA reconocidas y de confianza).

Incluye todas las credenciales en un único archivo:

/etc/dd-action-runner/config/credentials/temporal_TLS_token.json

{
        "auth_type": "Token Auth",
        "credentials": [
                {
                        "tokenName": "serverAddress",
                        "tokenValue": "SERVER_ADDRESS"
                },
                {
                        "tokenName": "serverNameOverride",
                        "tokenValue": "SERVER_NAME_OVERRIDE"
                },
                {
                        "tokenName": "serverRootCACertificate",
                        "tokenValue": "SERVER_ROOT_CA_CERTIFICATE"
                }
        ]
}

Sustituye SERVER_ADDRESS, SERVER_NAME_OVERRIDE y SERVER_ROOT_CA_CERTIFICATE por tus credenciales.

En la conexión del ejecutor, especifica la ubicación del archivo de credenciales en el contenedor del ejecutor de acción privado. En este ejemplo, el archivo de credenciales se almacena en /etc/dd-action-runner/config/credentials/temporal_TLS_token.json.

La ruta al archivo de credenciales es '/etc/dd-action-runner/config/credentials/temporal_TLS_token.json'

Sin autenticación

Este tipo de conexión utiliza la comunicación no cifrada y no se recomienda para entornos de producción. Solo debe utilizarse en entornos de desarrollo o para conexiones de test. Para uso en producción, considera el uso de los tipos de autenticación TLS o mTLS.

El tipo de conexión requiere las siguientes credenciales:

CredencialObligatorioDescripción
addressEl nombre de host del servidor y el puerto opcional. El puerto es por defecto 7233 si la dirección solo contiene el host.

Para este tipo de conexión, no es necesario crear un archivo de credenciales, ya que la dirección no es un secreto y se almacena directamente en Datadog. Para configurarlo, indica la dirección del servidor:

Una conexión temporal no segura