Sobre el proyecto

Casdoor es una plataforma de gestión de identidades y accesos (IAM) de código abierto y autoalojada que actúa como un proveedor de identidad completo en lugar de una biblioteca integrada o un proxy de autenticación. Almacena usuarios, emite tokens y proporciona una consola de administración web para gestionar organizaciones, aplicaciones, proveedores y métodos de inicio de sesión. La compatibilidad de protocolos abarca OAuth 2.0, OIDC, SAML 2.0 (tanto como IdP como SP), CAS, LDAP, SCIM 2.0, WebAuthn/passkeys, TOTP y MFA, incluidos códigos por correo electrónico y SMS, y Face ID. Puede conectarse a proveedores de identidad externos como Google Workspace, Microsoft Entra ID (Azure AD), GitHub y otros, y admite backends personalizados de identidad, correo electrónico, SMS, almacenamiento o pago. La autorización está basada en políticas mediante Casbin, lo que permite ACL, RBAC, ABAC y modelos personalizados. La multi-tenencia permite que organizaciones separadas mantengan usuarios y personalización de marca independientes. Los registros de auditoría registran inicios de sesión y cambios administrativos, y los webhooks envían eventos de usuario e inicio de sesión a sistemas externos. Se incluyen una puerta de enlace MCP y compatibilidad de agente a agente A2A para escenarios de IA y agentes. Las opciones de despliegue incluyen un único contenedor Docker todo en uno con SQLite y datos de demostración para evaluación, Docker Compose con MySQL, un chart de Helm para Kubernetes y la compilación desde el código fuente con Go 1.25+, Node.js 20 LTS y Yarn. El backend es Go con el framework Beego; el frontend es React 18 con shadcn/ui sobre Tailwind CSS compilado con Vite. Las bases de datos son compatibles a través de XORM (MySQL, PostgreSQL, SQLite, SQL Server y otras), con Redis opcional necesario para múltiples réplicas. Cada acción de la consola también está disponible a través de una API REST, con Swagger UI y SDK oficiales para Go, Java, Python, Node.js, JavaScript/React/Vue/Angular, .NET, PHP y Rust. El proyecto está licenciado bajo Apache 2.0 y dirige los informes de seguridad a un correo electrónico privado en lugar de a issues públicos.