Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

Definir y acceder a valores

Un Valor es una referencia nombrada de un dato estático almacenado por Atlas a la que puedes acceder en Atlas Funciones. Los valores proporcionan una alternativa a la codificación directa de constantes de configuración en sus Funciones.

En otras palabras, los valores le permiten separar los datos de configuración específicos de la implementación de la lógica comercial de su aplicación.

Los valores pueden derivarse en dos tipos de datos:

  • Texto sin formato: Se resuelve en un valor de objeto JSON normal, arreglo o string que usted defina.

  • Secreto: Se resuelve en un Valor secreto que defines.

Puede definir un nuevo valor desde la interfaz de usuario o mediante la CLI de App Services.

1
  1. Si aún no aparece, se debe seleccionar la organización que contiene el proyecto en el menú Organizations de la barra de navegación.

  2. Si aún no se muestra, seleccione su proyecto en el menú Projects de la barra de navegación.

  3. En la barra lateral, haz clic en Triggers en la sección Streaming Data.

La Se muestra la página Disparadores.

2
  1. Haz clic en el enlace Linked App Service: Triggers.

  2. En la barra lateral, haz clic en Values en la sección Build.

  3. Haga clic en Create a Value.

3

Introduzca un Value Name único. Este nombre es el que se utiliza para referirse al valor en las funciones.

Nota

Restricciones del valor del nombre

Los nombres de valores no pueden exceder los 64 caracteres y solo pueden contener letras ASCII, números, guiones bajos y guiones. El primer carácter debe ser una letra o un número.

4
  1. Selecciona el tipo Value.

  2. Defina un valor de texto simple o un enlace a un valor secreto:

    • Para definir un valor de texto sin formato, Custom Content e ingresa el valor de texto sin formato en el cuadro de entrada.

    • Para vincular el valor de un secreto existente, seleccione Link to Secret y seleccione el secreto en el menú desplegable.

    • Para vincular un nuevo valor de secreto, seleccione Link to Secret, luego ingrese el nombre del nuevo secreto y el valor del nuevo secreto en el cuadro de entrada que aparece.

    Para obtener más información sobre cómo crear un secreto,consulte Crear un secreto.

5

Después de que haya nombrado y definido el nuevo Valor, haga clic en Save.

Una vez guardado, puedes acceder inmediatamente al Valor en tus Funciones.

1

Utilice su clave API de administración de MongoDB Atlas para iniciar sesión en la CLI de App Services:

appservices login --api-key="<API KEY>" --private-api-key="<PRIVATE KEY>"
2

Ejecute el siguiente comando para obtener una copia local de sus archivos de configuración:

appservices pull --remote=<App ID>

Por defecto, el comando descarga archivos en el directorio de trabajo actual. Puedes especificar una ruta de directorio con el opcional --local flag.

3

Añade un archivo de configuración JSON para el nuevo valor al subdirectorio values de tu aplicación local:

touch values/<ValueName>.json

Cada valor se define en su propio archivo JSON. Por ejemplo, un valor llamado myValue se definiría en el archivo /values/myValue.json.

El archivo de configuración debe tener la siguiente forma general:

values/<ValueName>.json
{
"name": "<Value Name>",
"from_secret": <boolean>,
"value": <Stored JSON Value|Secret Name>
}
Campo
Descripción

name

Un nombre único para el valor. Este nombre es como se refiere al valor en Funciones y reglas.

from_secret

Por defecto: false. Si true, el Valor expone un Secreto en lugar de un Valor JSON en texto plano.

value

Los datos almacenados que el Valor expone cuando se hace referencia a ellos:

  • Si from_secret es false, value puede ser una cadena JSON estándar, un arreglo o un objeto.

  • Si from_secret es true, value es una string que contiene el nombre del Secreto que revela el Valor.

4

Ejecute el siguiente comando para implementar sus cambios:

appservices push

Puedes acceder a los datos almacenados de un Valor desde una Atlas Function utilizando el módulo context.values.

context.values.get("<Value Name>")

Por ejemplo, la siguiente Función retorna true cuando el ID del usuario activo está incluido en el arreglo de texto plano Valor adminUsers:

Función de ejemplo que utiliza un valor
exports = function() {
const adminUsers = context.values.get("adminUsers");
const isAdminUser = adminUsers.indexOf(context.user.id) > 0;
return isAdminUser;
}

Volver

Referencia de la API de MongoDB

En esta página