
Este módulo conecta Saturn Studio con Microsoft Graph para operar en Teams (leer/enviar mensajes, crear chats, gestionar miembros, etc.) usando OAuth 2.0.
Table of Contents
1) Iniciar sesión y registrar la aplicación
- Entra a Azure Portal → Microsoft Entra ID → Registros de aplicaciones
(o usa el acceso directo del portal a la lista de apps). - Haz clic en Nuevo registro.
- Nombre: pon un nombre identificable (ej.:
Saturn Studio – Teams
). - Tipos de cuentas compatibles (elige uno):
Opción (audiencia) | ¿Quién puede iniciar sesión? | Qué pones en Tenant ID en Saturn Studio |
---|---|---|
Inquilino único (Single-tenant) | Solo usuarios de tu organización | GUID de tu tenant (Directory (tenant) ID) |
Multiinquilino (solo organizaciones) | Usuarios de cualquier directorio (sin cuentas personales) | Usa organizations o el tenant GUID que necesites |
Multiinquilino + cuentas personales | Org. + cuentas personales (MSA) | Usa common (o un tenant GUID si quieres fijar uno) |
Nota: muchas API de Teams no funcionan con cuentas personales. Para escenarios de empresa, usa Inquilino único o Multiinquilino (organizational).
- URI de redirección
- Tipo: Web
- URL:
https://studio.rocketbot.com
(Debe coincidir exactamente con lo que muestre el formulario de la credencial en Saturn Studio.)
- Haz clic en Registrar.
2) Obtener identificadores y secreto
En la ficha de la aplicación copia:
- Application (client) ID → será tu Client ID.
- Directory (tenant) ID → será tu Tenant ID (si usas single-tenant).
Guía recomendada para esta sección: Microsoft Learn
Ve a Certificados y secretos → Nuevo secreto de cliente.
- Define la vigencia (elige la mayor posible que cumpla tu política).
- Copia el valor del secreto inmediatamente (no el ID), se oculta luego.
3) Agregar permisos (Microsoft Graph → Delegados)
Ruta: Permisos de API → Agregar un permiso → Microsoft Graph → Permisos delegados.
Esenciales (OIDC)
openid
,offline_access
,email
.
Teams (elige solo lo necesario, principio de menor privilegio)
- Canales:
Channel.ReadBasic.All
(ver nombres y descripciones de canales).- Guía recomendada para esta sección: Microsoft Learn+1
- Mensajes de canal:
ChannelMessage.Read.All
(leer) yChannelMessage.Send
(enviar). - Guía recomendada para esta sección: Microsoft Learn+1
- Chats 1:1 / grupales:
Chat.Read
,Chat.ReadWrite
,Chat.Create
.- Guía recomendada para esta sección: Graph Permissions+1
- (Opcional avanzado)
Chat.ManageDeletion.All
para borrar/restaurar chats — requiere rol admin. - Guía recomendada para esta sección: Graph Permissions+1
- Equipos/miembros:
Team.ReadBasic.All
,TeamMember.Read.All
,TeamMember.ReadWrite.All
(agregar/quitar miembros).- Guía recomendada para esta sección: Microsoft Learn+1
Muchas operaciones de Teams no admiten cuentas personales; para “Delegated (personal Microsoft account)” suele mostrarse Not supported en la tabla de permisos.
Guía recomendada para esta sección: Microsoft Learn+1
Cuando termines, haz clic en Conceder consentimiento de administrador para tu organización (evita que cada usuario deba aprobar permisos).
Guía recomendada para esta sección: Microsoft Learn+1
4) Cargar la credencial en Saturn Studio (módulo Microsoft Teams)
Completa los campos:
Campo | Descripción | Ejemplo |
---|---|---|
Client ID | Application (client) ID de tu app registrada | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
Tenant ID | common , organizations o el GUID del tenant (según tu elección en “Tipos de cuentas”) | common |
Client Secret | Valor del secreto de cliente generado | ****** |
Guarda y realiza el Sign in / Consent desde el módulo.