LinId Identity Manager is a platform designed to manage user identities, access rights, and application permissions within an organization.
It provides a centralized way to:
- Manage user accounts and organizational structures
- Define and control application-level permissions
- Configure authentication and identity flows
- Dynamically generate access rights using policy-based logic
LinId helps organizations:
- Centralize identity and access management (IAM)
- Automate permission assignment
- Standardize authentication and authorization across applications
- Reduce complexity in multi-application environments
-
π€ User Management
- Create and manage user accounts
- Assign users to Organizational Units (OU)
- Manage account status (Active, Inactive, Suspended)
-
π’ Organizational Structure
- Create and manage Organizational Units
- Structure users logically within the organization
-
π¦ Application Management
- Register applications
- Define application-specific roles
- Configure authentication per application
-
π·οΈ Organizational Roles
- Create and manage organizational roles
- Assign roles to users
-
π Authentication (OIDC)
- OIDC-based authentication
- Integration with LemonLDAP
- Certificate-based configuration
-
π§ Policy-Based Authorization (PBAC)
- Use OPA (Open Policy Agent) scripts
- Dynamically generate user permissions per application
-
π·οΈ Claims Management
- Define and map claims required by applications
- Customize identity payloads per application
-
π¨ UI Customization
- Theme configuration
- Externalized translations (i18n)
- Enterprises managing internal access control
- SaaS platforms requiring multi-tenant identity management
- DevOps / IAM / Security teams
π§ This project is currently under active development.
Features and APIs may evolve.
π§ Minimal setup to run LinId Identity Manager in under 5 minutes
LinId provides a Taskfile to simplify running the demo environment. All you need is Docker and Task installed on your machine.
- Docker 24+ and Docker Compose 2+
- Task (https://taskfile.dev/#/installation)
β οΈ Make sure Docker is running before executing any tasks.
git clone https://github.com/linagora/linid-identity-manager.git
cd linid-identity-manager
git submodule update --init --recursive- Use the provided Taskfile to start the demo:
task setup:demo
task start:demo- The task will automatically:
- Start the backend, frontend, and database containers
- Configure LemonLDAP demo environment
- Apply initial configuration for quick testing
π Access the demo: https://linid.localtest.me:9000
- Backend API:
https://localhost:8443/swagger-ui/index.html - Frontend UI:
https://linid.localtest.me:9000 - LemonLDAP portal:
http://localhost:8080(pre-configured demo)
task start:demois intended for quick testing / development only- For custom environments, use the Docker folders with their README (
docker/<environment>/README.md) - No manual configuration required for the demo
Full documentation is available in the /docs directory.
It includes:
- Getting started guides
- Installation instructions
- Configuration references
- Advanced topics
LinId provides Docker-based environments for running the application.
See: docs/installation
LinId supports OIDC-based authentication.
- LemonLDAP
Authentication requires certificate configuration.
LinId is highly configurable and supports multiple configuration domains:
- YAML-based configuration files
- Environment-based overrides
- OIDC setup
- Provider integration
- Certificate management
- Claims mapping
LinId is designed to support a plugin system.
π§ Plugin system is not fully documented yet
Planned documentation:
- Plugin architecture
- Installing plugins
- Plugin configuration
- Theme customization
- Branding
- Externalized translations (i18n)
- Frontend: Quasar / Vue / Module Federation
- Backend: Java / Spring Boot / Spring Plugin
- Database: PostgreSQL
- Directory / IAM: LemonLDAP
- Policy Engine: OPA (Open Policy Agent)
Contributions are welcome.
Please refer to the CONTRIBUTING file for guidelines.
This project is licensed under the:
GNU Affero General Public License (AGPL)
For questions, issues, or feature requests:
π Use GitHub Issues