OIDC con .NET para MongoDB Atlas

Guía de integración OpenID Connect en .NET con MongoDB Atlas usando Azure EntraID y Atlas Workforce Federation para garantizar acceso seguro solo a usuarios autorizados con credenciales de Microsoft.

24 sept 2025 • 4 min de lectura • Equipo Q2BSTUDIO

Inteligencia-Artificial-

Este artículo explica cómo integrar OpenID Connect OIDC en una aplicación .NET que usa MongoDB Atlas, utilizando Azure EntraID como proveedor de identidad, y cómo configurar Atlas Workforce Federation para permitir que solo usuarios autorizados accedan a la base de datos con sus credenciales de Microsoft.

En Q2BSTUDIO somos una empresa de desarrollo de software y aplicaciones a medida especializada en soluciones seguras y escalables. Si necesita un proyecto a medida podemos ayudarle con arquitecturas en la nube y autenticación empresarial como esta, consulte nuestra propuesta de Desarrollo de aplicaciones a medida para más información.

Resumen de requisitos previos: una suscripción empresarial de Azure para obtener el client id y el documento OIDC metadata; un clúster MongoDB Atlas M10 o superior con Workforce Federation configurado; un usuario de base de datos vinculado a EntraID; y las cadenas de conexión base añadidas a appsettings en la aplicación .NET. La configuración de Workforce Federation en Atlas debe mostrar el proveedor de identidad con estado completo y el usuario de base de datos debe coincidir con el Tenant ID de EntraID.

Paquetes NuGet necesarios: Microsoft.Identity.Web, Microsoft.Identity.Web.UI, Microsoft.AspNetCore.Authentication.OpenIdConnect y Microsoft.Identity.Client. Estos facilitan la integración OIDC en una app .NET 9 Blazor y añaden las utilidades para gestionar tokens y flujos de autenticación.

Configuración de la aplicación: añadir a appsettings la sección AzureEntraID con Authority Domain ClientId ClientSecret CallbackPath y RedirectUri usando los valores de su tenant; no disparar secretos en repositorios públicos. En Program.cs configurar Microsoft Identity Web para autenticar con OpenIdConnect, habilitar adquisición de tokens para llamar APIs downstream, añadir cache distribuida en memoria y definir políticas de autorización por defecto. Registrar servicios de Blazor interactivo y cambiar la vida del servicio MongoDBService a scoped en lugar de singleton para evitar conflictos con servicios autenticados.

Cambios en el servicio de MongoDB: inyectar IHttpContextAccessor e ITokenAcquisition para obtener el contexto HTTP del usuario y solicitar el access token con Microsoft.Identity.Web. Implementar un método InitializeAsync que: compruebe existencia de HttpContext, pida el token con los scopes adecuados usando el client id, construir una cadena de conexión autenticada añadiendo authMechanism=MONGODB-OIDC y authSource=$external, crear MongoClient usando las MongoClientSettings y pasar una credencial OIDC que entregue el token obtenido, y finalmente ejecutar un ping a admin para validar la conexión y seleccionar la base y colección correspondiente. Implementar una clase callback simple que implemente IOidcCallback para devolver el token a la librería MongoDB cuando lo requiera.

Interfaz de usuario: añadir una página Login en Blazor que inicie el flujo de autenticación y, una vez autenticado el usuario, invoque MongoDBService.InitializeAsync para establecer la conexión con Atlas. Además, mostrar el nombre del usuario en la cabecera de la home inyectando AuthenticationStateProvider y leyendo identity.name para que el usuario vea que su sesión está activa.

Pruebas: ejecutar la aplicación localmente, iniciar sesión con una cuenta del tenant configurado en EntraID y verificar que al autenticarse la aplicación se redirige a la home y muestra el nombre del usuario. Durante pruebas recuerde limpiar caché y cookies entre ejecuciones si usa la librería MSAL sin mecanismo de cache persistente para evitar errores de sesión.

Compatibilidad y buenas prácticas: aunque el ejemplo usa Azure EntraID, Atlas Workforce Federation funciona también con proveedores OIDC de AWS y Google Cloud siempre que aporte client id client secret y la metadata OIDC. Para producción recuerde añadir almacenamiento seguro de secretos, cache de tokens y políticas de renovación, así como monitorización y pruebas de seguridad.

Seguridad adicional: puede combinar esta integración OIDC con mecanismos avanzados como Queryable Encryption para cifrado cliente lado cliente y en reposo, sin perder la capacidad de consulta sobre campos cifrados. Para estrategias de ciberseguridad y pruebas de intrusión podemos ayudarle desde Q2BSTUDIO con servicios especializados, más información en nuestra página de Servicios cloud AWS y Azure y en soluciones de ciberseguridad y pentesting.

Palabras clave y servicios: aplicaciones a medida software a medida inteligencia artificial ciberseguridad servicios cloud aws y azure servicios inteligencia de negocio ia para empresas agentes IA power bi. En Q2BSTUDIO diseñamos e implementamos soluciones que combinan autenticación empresarial, cloud y analítica avanzada para ofrecer proyectos robustos y escalables adaptados a su organización.

Si quiere que implementemos esta integración en su proyecto o que evaluemos la arquitectura y la seguridad de su sistema, contacte con Q2BSTUDIO y le asesoramos sobre la mejor estrategia técnica y de negocio para su caso.

¿UNA PAUSA?

Juega un momento antes de irte

NUESTROS SERVICIOS

Cómo podemos ayudarte

Inteligencia artificial

Agentes de IA, chatbots y asistentes inteligentes que automatizan tareas y atienden a tus clientes 24/7 para mejorar la eficiencia de tu negocio.

Más info

Desarrollo de software

Aplicaciones web, móviles y de escritorio, intranets, e-commerce, SaaS y plataformas de gestión diseñadas para las necesidades concretas de tu empresa.

Más info

Servicios cloud

Migración, infraestructura, hosting gestionado, alta disponibilidad y seguridad en Microsoft Azure y Amazon Web Services para que tu negocio escale sin límites.

Más info

Ciberseguridad y pentesting

Auditorías de seguridad, test de intrusión (pentesting) y protección de aplicaciones, datos e infraestructura on-premise y cloud, con hacking ético y cumplimiento normativo.

Más info

Business Intelligence

Cuadros de mando y análisis de datos con Power BI: integramos tus fuentes, diseñamos dashboards y KPIs y convertimos tus datos en decisiones.

Más info

Automatización de procesos

Automatizamos tareas repetitivas y conectamos tus aplicaciones con n8n, Power Automate, Make y RPA, eliminando trabajo manual y aumentando la productividad.

Más info

Formación para empresas

Formamos a tus equipos en tecnología con criterio: desarrollo web, bases de datos, Git, buenas prácticas y seguridad, automatización con n8n, inteligencia artificial para empresas y creación de soluciones de IA con Azure AI Foundry.

Más info

Auditoría de código

Auditamos el código que creas tú, tu equipo o una IA: te decimos qué está bien y qué mejorar, lo securizamos y lo dejamos listo para producción, web o app.

Más info

Generación de imágenes con IA

Creamos por ti las imágenes que necesita tu negocio con inteligencia artificial: producto, redes, publicidad, ilustración y avatares. Tú nos dices qué quieres y te lo entregamos listo para usar.

Más info

Generación de vídeos con IA

Creamos por ti vídeos con inteligencia artificial: promocionales, para redes, presentadores virtuales, doblaje y animaciones. Nos cuentas la idea y te lo entregamos montado y listo para publicar.

Más info

Avatares conversacionales con IA

Creamos avatares conversacionales con IA —humanos digitales con cara y voz— que atienden a tus clientes y equipos con el conocimiento de tu empresa, en tu web, monitores interactivos, WhatsApp o Teams.

Más info

Marketing Online e IA

Google Ads, Meta Ads, LinkedIn Ads y posicionamiento en motores de IA (GEO/AEO): captamos clientes y hacemos que tu marca aparezca donde te buscan, también en ChatGPT, Gemini y Perplexity.

Más info

¿Tienes un proyecto en mente?

Cuéntanos tu visión y la convertimos en una solución de software. Sea cual sea el alcance, hacemos realidad tu idea.

Live Chat