💡 Introducción
En el ecosistema empresarial actual, un chatbot que solo responde preguntas genéricas se queda corto. Para aportar un valor estratégico real, los bots creados con Power Virtual Agents (ahora parte de Microsoft Copilot Studio) deben ser capaces de realizar acciones en nombre del usuario, como consultar saldos, agendar citas médicas, o revisar el estado de un ticket de soporte.
🛠️ Tipos de Autenticación en Power Virtual Agents
Dependiendo del canal donde decidas desplegar tu bot y de la audiencia objetivo, Power Virtual Agents ofrece diferentes opciones de configuración de seguridad. A continuación, analizamos las tres principales alternativas:
| Tipo de Autenticación | Caso de Uso Ideal | Ventajas | Limitaciones |
|---|---|---|---|
| Sin autenticación | Bots públicos de cara al cliente (ej. FAQs en sitios web públicos). | Configuración inmediata; acceso sin fricción para el usuario final. | No se pueden consumir datos privados ni realizar acciones personalizadas de forma segura. |
| Solo para Teams (Opciones internas) | Bots integrados exclusivamente en Microsoft Teams para uso interno corporativo. | Autenticación implícita y fluida (Single Sign-On). No requiere que el usuario inicie sesión manualmente. | Limitado únicamente al cliente de Microsoft Teams. |
| Manual (OAuth 2.0 / Microsoft Entra ID) | Bots multicanal (sitios web personalizados, portales de clientes, aplicaciones móviles) que requieren acceso a sistemas empresariales. | Máxima seguridad; compatibilidad con proveedores de identidad externos (Entra ID, Okta, Google). | Requiere configuración técnica previa en el portal de Azure/Entra ID. |
🔑 Configuración Paso a Paso: Autenticación Manual con Microsoft Entra ID
Para habilitar la autenticación segura utilizando Microsoft Entra ID como nuestro proveedor de identidad de confianza, debemos seguir una serie de pasos tanto en el portal de Azure como en la interfaz de diseño del bot.
Paso 1: Registro de la Aplicación en Microsoft Entra ID
- Accede al portal de Azure con credenciales de administrador de inquilino (Tenant).
- Navega a Microsoft Entra ID > Registros de aplicaciones > Nuevo registro.
- Asigna un nombre descriptivo a la aplicación (ej. PVA-Secure-Bot-App).
- En los tipos de cuenta admitidos, selecciona «Solo las cuentas de este directorio organizativo» (Single Tenant) o multi-inquilino según tus necesidades.
- Haz clic en Registrar.
Paso 2: Configuración del URI de Redirección y Secretos
- Dentro del registro de tu aplicación, dirígete a Certificados y secretos. Selecciona Nuevo secreto de cliente, define una expiración recomendada y guarda el valor del secreto inmediatamente (no volverá a mostrarse).
- Ve a la sección Autenticación, haz clic en Agregar una plataforma y selecciona Web.
- Introduce el URI de redirección proporcionado por Power Virtual Agents. El URI estándar para la nube global es:
https://token.botframework.com/.auth/web/redirect
- En la sección de Permisos de API, asegúrate de que tiene el permiso delegado
User.Readde Microsoft Graph para que el bot pueda leer el perfil básico del usuario autenticado.
Paso 3: Configurar la Seguridad en Power Virtual Agents
- Abre tu bot en la consola de Power Virtual Agents/Copilot Studio.
- Ve a Configuración > Seguridad > Autenticación.
- Selecciona la opción Manual (para cualquier canal, incluido Teams).
- Completa los campos requeridos con la información de tu registro de aplicación de Azure:
- ID de cliente: El ID de aplicación (Client ID) generado en Azure.
- Secreto de cliente: El valor del secreto que copiaste en el Paso 2.
- URL de intercambio de tokens (opcional para SSO): Configura este campo si deseas habilitar Single Sign-On.
- Scopes (Ámbitos): Escribe openid profile User.Read.
- Guarda los cambios y publica el bot para aplicar la configuración de seguridad de manera global.
👤 Consumiendo el Perfil del Usuario: Personalización en Acción
Una vez configurada la autenticación, el bot dispondrá de variables de sistema globales que puedes utilizar dentro de los temas (Topics) de conversación para personalizar la experiencia o como parámetros de entrada para flujos de Power Automate.
Las principales variables de sistema disponibles una vez el usuario ha iniciado sesión con éxito son:
- User.DisplayName: Nombre completo del usuario (ej. «Carlos Gómez»).
- User.Email: Dirección de correo electrónico oficial de la organización.
- User.Id: Identificador único del usuario en el directorio activo.
- User.IsLoggedIn: Variable booleana que determina si el usuario ha iniciado sesión activamente en la sesión del chat.


Deja un comentario