Un secreto es un valor privado que se almacena en el backend de Atlas y permanece oculto a los usuarios. Los secretos son útiles para almacenar información confidencial, como una clave API o un identificador interno.
No se puede leer directamente el valor de un Secreto después de definirlo. En cambio, se vincula el Secreto a otro Valor, luego acceder al valor desde una Función de activador.
Define un secreto
Puedes definir un nuevo Secret desde la Interfaz de Usuario o mediante la App Services CLI.
En Atlas, ve a Triggers página para tu proyecto.
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.
Si aún no se muestra, seleccione su proyecto en el menú Projects de la barra de navegación.
En la barra lateral, haz clic en Triggers en la sección Streaming Data.
La Se muestra la página Disparadores.
Asigne un nombre al valor secreto
Ingrese un nombre para el Secreto. Este nombre es cómo se hace referencia al Secreto en las funciones y debe ser único dentro del proyecto.
Nota
Restricciones de nombres secretos
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.
Autenticar a un usuario de MongoDB Atlas
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>"
Extraiga los últimos archivos de configuración de su aplicación
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.
Implementar sus cambios
Ejecute el siguiente comando para implementar sus cambios:
appservices push
Ver secretos
Puede ver una lista de todos los secretos de una aplicación desde la interfaz de usuario o utilizando la CLI de App Services.
Desde la página Triggers, haga clic en el enlace Linked App Service: Triggers.
En la barra lateral, haz clic en Values en la sección Build.
La tabla muestra todos los valores, incluidos los secretos, e indica el tipo de cada valor en su fila.
Para enumerar los nombres e identificaciones de todos los secretos, ejecute el siguiente comando:
appservices secrets list --app=<Your App ID>
Actualizar un secreto
Puedes actualizar un Secreto desde la Interfaz de Usuario o usando la App Services CLI.
Para actualizar un Secret desde la Interfaz de Usuario de Atlas:
Desde la página Triggers, haga clic en el enlace Linked App Service: Triggers.
En la barra lateral, haz clic en Values en la sección Build.
Busque el valor que desea actualizar en la tabla, abra su menú Actions y seleccione Edit Secret.
Puedes cambiar tanto el nombre como el valor del secreto.
Haga clic en Save y, si fuera necesario, implemente los cambios.
Para actualizar el valor de un Secreto mediante la CLI de App Services, ejecuta el siguiente comando:
appservices secrets update --app=<Your App ID> \ --secret="<Secret ID or Name>" \ --name="<Updated Secret Name>" \ --value="<Updated Value>"
Utilice un secreto
No puedes leer directamente el valor de un secreto después de definirlo.
Para utilizar un Secreto en una Función de Triggers:
Crear un Valor nuevo que se vincule con el secreto.
Utilice el módulo context.values para acceder al valor del secreto en su función.
Borrar un secreto
Puedes eliminar un secreto desde la interfaz de usuario o mediante la CLI de App Services.
Para borrar un Secret desde la Interfaz de Usuario de Atlas:
Desde la página Triggers, haga clic en el enlace Linked App Service: Triggers.
En la barra lateral, haz clic en Values en la sección Build.
Busca el valor que deseas borrar en la tabla, abre su menú Actions, y selecciona Delete Secret.
Confirma que deseas borrar el Secreto.
Para borrar un Secreto utilizando la CLI de App Services, ejecuta el siguiente comando:
appservices secrets delete --app=<Your App ID> --secret=<Secret ID>
Tip
Puedes borrar múltiples Secretos con un solo comando especificando sus valores name o id como una lista separada por comas.
appservices secrets delete --app=<Your App ID> \ --secret=some-api-key,609af850b78eca4a8db4303f,another-key