Compartir a través de


Usar variables de entorno para secretos de Azure Key Vault

Las variables de entorno permiten hacer referencia a secretos almacenados en Azure Key Vault. Estos secretos se ponen a disposición para su uso dentro de flujos y conectores personalizados de Power Automate. Tenga en cuenta que los secretos no están disponibles para su uso en otras personalizaciones o, en general, a través de API.

Los secretos reales solo se almacenan en Azure Key Vault y la variable de entorno simplemente hace referencia a la ubicación de los secretos del almacén de claves. El uso de secretos de Azure Key Vault con variables de entorno requiere que configure Azure Key Vault para que Power Platform pueda leer los secretos específicos a los que desea hacer referencia.

Las variables ambiente que hacen referencia a secretos no están disponibles actualmente en el selector de contenido dinámico para su uso en flujos. Power Automate

Configuración de Azure Key Vault

Para usar los secretos de Key Vault Azure con Power Platform, la suscripción Azure que tiene el almacén debe tener registrado el proveedor de recursos y el usuario que crea la variable ambiente debe tener los permisos adecuados para el recurso Key Vault Azure. PowerPlatform

Importante

  • Hay cambios recientes en rol de seguridad utilizado para afirmar permisos de acceso dentro de Azure Key Vault. Las instrucciones anteriores incluían la asignación de la función Lector de Key Vault. Si ha configurado su almacén de claves anteriormente con el rol Key Vault Lector, asegúrese de agregar el rol de Usuario de secretos de Key Vault para garantizar que sus usuarios tengan permisos suficientes para recuperar los secretos. Microsoft Dataverse
  • Reconocemos que nuestro servicio usa las API de control de acceso basado en roles de Azure para evaluar la asignación de rol de seguridad incluso si aún tiene su almacén de claves configurado para usar el modelo de permiso de política de acceso al almacén. Para simplificar su configuración, le recomendamos que cambie el modelo de permisos de su almacén al control de acceso basado en roles de Azure. Puede hacerlo en la pestaña Configuración de acceso .
  1. Registre el proveedor de recursos en su suscripción Azure. Microsoft.PowerPlatform Seguir estos pasos para verificar y configurar: Proveedores de recursos y tipos de recursos

    Registrar al proveedor en Azure Power Platform

  2. Cree un almacén de Azure Key Vault. Considere usar un almacén diferente para cada entorno de Power Platform para minimizar la amenaza en caso de vulneración. Considere configurar su almacén de claves para utilizar el control de acceso basado en roles Azure para el modelo de permisos . Más información: Mejores prácticas para usar Azure Key Vault, Inicio rápido: crear un Azure Key Vault con el portal Azure

  3. Los usuarios que creen o utilicen variables de entorno de tipo secreto deben tener permiso para recuperar el contenido del secreto. Para otorgarle a un nuevo usuario la capacidad de usar el secreto, Seleccionar el área de Control de acceso (IAM) , Seleccionar Agregar y luego Seleccionar Agregar asignación de rol desde el menú desplegable. Más información: Proporcione acceso a claves, certificados y secretos de Key Vault con un control de acceso basado en roles Azure

    Ver mi acceso en Azure

  4. En el asistente para agregar asignación de roles, deje el tipo de asignación predeterminado como Roles de funciones de trabajo y continúe con la pestaña Rol. Busque el rol de usuario de Key Vault Secrets y Seleccionar. Continúe a la pestaña de miembros y Seleccionar los Seleccionar miembros vincular y ubique al usuario en el panel lateral. Cuando haya seleccionado al usuario y se muestre en la sección de miembros, continúe con la pestaña revisar y asignar y complete el asistente.

  5. Azure Key Vault debe tener el rol de Usuario de secretos de Key Vault otorgado al principal del servicio. Dataverse Si no existe para este almacén, agregue una nueva directiva de acceso usando el mismo método que usó anteriormente para el permiso de usuario final, solo usando la identidad de la aplicación Dataverse en lugar del usuario. Si tiene varias entidades de servicio de Dataverse en su inquilino, le recomendamos que las seleccione todas y guarde la asignación de roles. Una vez asignada la función, revise cada elemento de Dataverse enumerado en la lista de asignaciones de funciones y seleccione el nombre Dataverse para ver los detalles. Si el ID de la aplicación no es 00000007-0000-0000-c000-000000000000**, entonces Seleccionar la identidad y luego Seleccionar Eliminar para eliminarla de la lista.

  6. Si ha habilitado el Firewall de Key Vault Azure, debe permitir que las direcciones IP accedan a su almacén de claves. Power Platform Power Platform no está incluido en la opción "Solo servicios de confianza". Vaya a Power Platform URL y rangos de direcciones IP para ver las direcciones IP actuales utilizadas en el servicio.

  7. Si aún no lo ha hecho, agregue un secreto a su nuevo almacén. Más información: Azure Inicio rápido: configurar y recuperar un secreto de Key Vault mediante el portal Azure

Crear una nueva variable de entorno para el secreto de Key Vault

Una vez que Azure Key Vault está configurado y tiene un secreto registrado en su almacén, ahora puede hacer referencia a él dentro de Power Apps utilizando una variable de entorno.

Nota

  • La validación de acceso de usuario para el secreto se realiza en segundo plano. Si el usuario no tiene al menos permiso de lectura, se muestra este error de validación: "Esta variable no se guardó correctamente. El usuario no está autorizado para leer secretos de la 'ruta de Azure Key Vault'".
  • Actualmente, Azure Key Vault es el único almacén de secretos compatible con variables de entorno.
  • Azure Key Vault debe estar en el mismo inquilino que la suscripción de Power Platform.
  1. Inicie sesión en Power Apps y, en el área Soluciones , abra la solución no administrada que esté usando para el desarrollo.

  2. Seleccionar Nuevo>Más>ambiente variable.

  3. Introduzca una nombre y, opcionalmente, una Descripción para la variable ambiente.

  4. Seleccionar el Tipo de datos como Secreto y Almacén secreto as Azure Bóveda de claves.

  5. Seleccione una de las opciones siguientes:

    • Seleccionar New Azure Referencia del valor de Key Vault. Después de agregar la información en el siguiente paso y guardarla, se crea un registro de valor variable ambiente.
    • Expanda Mostrar valor predeterminado, para mostrar los campos para crear un secreto de Key Vault Azure predeterminado. Después de agregar la información en el siguiente paso y guardarla, la demarcación del valor predeterminado se agrega al registro de definición de la variable ambiente.
  6. Escriba la siguiente información:

    • Azure ID de suscripción: el ID de suscripción Azure asociado con el almacén de claves.

    • Nombre del grupo de recursos: el grupo de recursos Azure donde se encuentra el almacén de claves que contiene el secreto.

    • Azure Nombre del almacén de claves: el nombre del almacén de claves que contiene el secreto.

    • Nombre secreto: el nombre del secreto ubicado en el almacén de claves Azure.

      Propina

      El identificador de suscripción, el nombre del grupo de recursos y el nombre del almacén de claves se pueden encontrar en la página de Información general del almacén de claves del portal de Azure. El nombre del secreto se puede encontrar en la página del almacén de claves en el portal de Azure seleccionando Secretos en Configuración.

  7. Seleccione Guardar.

Crear un flujo de Power Automate para probar el secreto de la variable de entorno

Un escenario simple para demostrar cómo usar un secreto obtenido de Azure Key Vault es crear un flujo de Power Automate para usar el secreto para autenticarse en un servicio web.

Nota

La URI para el servicio web utilizado es este ejemplo no es un servicio web operativo.

  1. Inicie sesión en Power Apps, Seleccionar Soluciones y luego abra la solución no administrada que desee. Si el elemento no se encuentra en el panel lateral, seleccione …Más y, a continuación, el elemento que desee.

  2. Seleccione Nuevo>Automatización>Flujo de nube>Instante.

  3. Ingrese un nombre para el flujo, Seleccionar Manually Gatillo un flujo, y luego Seleccionar Crear.

  4. Seleccionar New paso, Seleccionar el Microsoft Dataverse conector y luego en la pestaña Acciones , Seleccionar Realizar una acción no vinculada.

  5. Seleccionar la acción denominada RetrieveEnvironmentVariableSecretValue de la lista desplegable.

  6. Proporcione el nombre único de la variable ambiente (no el nombre) agregado en la sección anterior, para este ejemplo se usa new_TestSecret .

  7. Seleccionar ...>Cambiar nombre para cambiar el nombre de la acción para que se pueda referenciar más fácilmente en la próxima acción. En esta captura de pantalla, se le cambió el nombre a GetSecret.

    Configuración de flujo instantáneo para probar una variable secreta ambiente

  8. Seleccionar ...>Configuración para mostrar la configuración de la acción GetSecret .

  9. Habilite la opción Salidas seguras en la configuración y luego Seleccionar Listo. Esto es para evitar que la salida de la acción quede expuesta en el historial de ejecución del flujo.

    Habilitar la configuración de salidas seguras para la acción

  10. Seleccionar New paso, buscar y Seleccionar el conector HTTP .

  11. Seleccionar el Método como GET e ingrese el URI para el servicio web. En este ejemplo, se utiliza el servicio web ficticio httpbin.org .

  12. Seleccionar Mostrar opciones avanzadas, Seleccionar la Autenticación como Básica y luego ingrese el Nombre de usuario.

  13. Seleccionar el campo Contraseña , y luego en la pestaña Contenido dinámico debajo del nombre del flujo paso anterior (GetSecret en este ejemplo) Seleccionar RetrieveEnvironmentVariableSecretValueResponse EnvironmentVariableSecretValue, que luego se agrega como una expresión outputs('GetSecretTest')?['body/EnvironmentVariableSecretValue'] o body('GetSecretTest')['EnvironmentVariableSecretValue'].

    Cree un nuevo paso usando el conector HTTP

  14. Seleccionar ...>Configuración para mostrar la configuración de la acción HTTP .

  15. Habilite las opciones Entradas seguras y Salidas seguras en la configuración y luego Seleccionar Listo. Al habilitar estas opciones se impide que la entrada y las salidas de la acción queden expuestas en el historial de ejecución del flujo.

  16. Seleccionar Guardar para crear el flujo.

  17. Ejecute manualmente el flujo para probarlo.

    Con el historial de ejecución del flujo, se pueden verificar las salidas.

    Salida de flujo

Utilice los secretos de la variable ambiente en Microsoft Copilot Studio

Los secretos de la variable ambiente funcionan de forma un poco diferente. Microsoft Copilot Studio Debes ejecutar los pasos de las secciones en Configurar Azure Key Vault y Crear una nueva variable ambiente para el secreto de Key Vault para usar secretos con variables ambiente.

Dar acceso a Azure Key Vault Copilot Studio

Siga estos pasos:

  1. Volver a su Bóveda de claves Azure.

  2. Copilot Studio Necesita acceso a la bóveda de claves. Para otorgar la capacidad de usar el secreto, Seleccionar Copilot Studio Control de acceso (IAM) en la navegación izquierda, Seleccionar Agregar , y luego SeleccionarAgregar asignación de rol .

    Ver mi acceso en Azure

  3. Seleccionar el rol de Usuario de secretos de Key Vault , y luego Seleccionar Siguiente.

  4. Seleccionar Seleccionar Miembros, busque Power Virtual Agents Servicio, Seleccionar, y luego seleccione Seleccionar.

  5. Seleccionar Revisar + asignar en la parte inferior de la pantalla. Revise la información y Seleccionar Revise + asigne nuevamente si todo está correcto.

Agregue una etiqueta para permitir que un copiloto acceda al secreto en Azure Key Vault

Al completar los pasos anteriores en esta sección, Copilot Studio ahora tiene acceso al almacén de claves Azure, pero aún no puede usarlo. Para completar el tarea, seguir estos pasos:

  1. Vaya a Microsoft Copilot Studio y abra el agente que desea usar para la variable secreta ambiente o cree uno nuevo.

  2. Abra un agente tema o cree uno nuevo.

  3. Seleccionar el + ícono para agregar un nodo y luego Seleccionar Enviar un mensaje.

  4. Seleccionar la opción Insertar variable {x} en el nodo Enviar un mensaje .

  5. Seleccionar la ambiente tab. Seleccionar variable ambiente secreta que creó en Cree una nueva variable ambiente para el secreto de Key Vault paso.

  6. Seleccione Guardar para guardar el tema.

  7. En el panel de prueba, prueba tu tema usando una de las frases de inicio de tema donde acabas de agregar el nodo Enviar un mensaje con la variable secreta ambiente. Debería aparecer un error parecido al siguiente:

    Mensaje de error: bot no puede usar la variable ambiente. Para agregar bot a la lista de permitidos, agregue una etiqueta 'AllowedBots' con valor.

    Esto significa que necesitas Volver a Azure Key Vault y editar el secreto. Déjalo abierto, porque volverás aquí más tarde. Copilot Studio

  8. Vaya al almacén de claves Azure. En la navegación izquierda, Seleccionar Secretos en Objetos. Seleccionar el secreto que desea hacer disponible en Copilot Studio seleccionando el nombre.

  9. Seleccionar la versión del secreto.

  10. Seleccionar 0 etiquetas junto a Etiquetas. Agregue un Nombre de etiqueta y un Valor de etiqueta. El mensaje de error en Copilot Studio debería brindarle los valores exactos de esas dos propiedades. En Nombre de etiqueta debe agregar AllowedBots y en Valor de etiqueta debe agregar el valor que se mostró en el mensaje de error. Este valor tiene el formato {envId}/{schemaName}. Si hay varios copilotos que deben permitirse, separe los valores con una coma. Cuando termine, seleccione Aceptar.

  11. Seleccionar Aplicar para aplicar la etiqueta al secreto.

  12. Volver a Copilot Studio. Seleccionar Actualizar en el panel Prueba tu copiloto .

  13. En el panel de prueba, pruebe su tema nuevamente usando una de las frases de inicio de tema.

El valor de su secreto debe mostrarse en el panel de prueba.

Agregue una etiqueta para permitir que todos los copilotos en un ambiente accedan al secreto en el almacén de claves Azure

Como alternativa, puede permitir que todos los copilotos en un ambiente tengan acceso al secreto en el almacén de claves Azure. Para completar el tarea, seguir estos pasos:

  1. Vaya al almacén de claves Azure. En la navegación izquierda, Seleccionar Secretos en Objetos. Seleccionar el secreto que desea hacer disponible en Copilot Studio seleccionando el nombre.
  2. Seleccionar la versión del secreto.
  3. Seleccionar 0 etiquetas junto a Etiquetas. Agregue un Nombre de etiqueta y un Valor de etiqueta. En Nombre de etiqueta agregue Entornos permitidos y en Valor de etiqueta agregue el ID del ambiente que desea permitir. Cuando Listo, Seleccionar Aceptar
  4. Seleccionar Aplicar para aplicar la etiqueta al secreto.

Limitación

Las variables ambiente que hacen referencia a los secretos de Key Vault Azure actualmente están limitadas para su uso con Power Automate flujos, Copilot Studio agentes y conectores personalizados.

Consulte también

Usar variables de entorno de origen de datos en aplicaciones de lienzo
Utilizar variables de entorno en flujos de nube de la solución de Power Automate
Descripción general de las variables ambiente.