goauthentik / goauthentik/authentik
Feature Request: Enhanced Provider and Application Management in authentik
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 25.6k
- Forks
- 2k
- Avg merge
- 1d 4h
- Merged PRs (30d)
- 634
Description
**Is your feature request related to a problem? Please describe.**
The current process for configuring providers and applications in authentik is outdated and overly restrictive, making it difficult to manage complex scenarios efficiently. The rigid 1:1 relationship between providers and applications, the manual input requirements, and the limitation of linking only one group to an application create unnecessary complexity and reduce flexibility. This is particularly frustrating when managing multiple applications or groups, as the system forces users to create redundant configurations or memorize group hierarchies, which is inefficient and error-prone.
**Describe the solution you'd like**
1. **Flexible Provider-Application Relationship**:
- Remove the strict 1:1 connection between providers and applications. Allow a single provider (e.g., an OIDC provider) to be linked to multiple applications. This would enable more flexible strategies, such as assigning different groups to different applications under one provider, simplifying complex setups.
- Support multiple providers for a single application without requiring duplicate applications. For example, allow different OIDC provider names for the same application to accommodate varied authentication needs without redundant configurations.
2. **Simplified Input Fields**:
- Replace manual group input fields with a **dropdown menu** that lists available groups, ideally reflecting the group hierarchy (e.g., in a tree-like structure). This would eliminate the need to memorize group names or hierarchies, making the configuration process more intuitive and less error-prone.
- Ensure the dropdown dynamically updates to reflect the current group structure, improving usability for hierarchical group setups.
3. **Multiple Group Associations**:
- Allow applications to be linked to multiple groups, rather than restricting to a single group. This would provide greater flexibility in assigning permissions and roles, enabling more granular and dynamic access control across complex organizational structures.
**Describe alternatives you've considered**
- **Manual Workarounds**: Users could create multiple providers or applications to simulate the desired flexibility, but this leads to redundant configurations and increased maintenance overhead.
- **External Documentation**: Documenting group hierarchies or provider-application mappings externally could help, but it’s cumbersome and doesn’t address the core usability issues in the interface.
- **Custom Scripts**: Writing scripts to automate provider or group assignments was considered, but this adds complexity and is not a user-friendly solution for most administrators.
**Additional context**
The current provider and application management system in authentik is too rigid for complex use cases, especially in environments with many applications or groups. By allowing multiple applications per provider, simplifying input fields with dropdowns, and enabling multiple group associations, authentik could significantly improve usability and flexibility for administrators managing large-scale deployments.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no files, tests, or entry points. Start by locating provider, application, and group-association models and their management UI, then separate the relationship, input, and association requirements into acceptance criteria. Done means providers and applications can be associated as requested, groups are selectable and dynamically represented, and multiple group associations work without redundant configurations.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- authentication, authorization, frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100