Autogenerate API Auth RBAC docs from the FastAPI permissions
- Dominant language
- Python
- Stars
- 46.9k
- Forks
- 17.8k
- Avg merge
- 2d 9h
- Merged PRs (30d)
- 472
Description
### Description
Airflow auth managers like the KeycloakAuthManager need to model out the Airflow RBAC permissions in an external system (e.g. Keycloak clients). To do this provider maintainers need to keep an up to date model of the authentication resources and permissions. This creates maintenance burden on any providers or integrations that model the Airflow RBAC model.
### Use case/motivation
Similar to the Database ERD schema or the configuration / cli reference, create a spec for the FastAPI RBAC user roles and permissions that is automatically updated when resources in the `airflow.api_fastapi` module are updated so that developers can reference the auth model of Airflow when developing auth managers.
### Related issues
_No response_
### Are you willing to submit a PR?
- [ ] Yes I am willing to submit a PR!
### Code of Conduct
- [x] I agree to follow this project's [Code of Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)
Contributor guide
Research direction
Start by examining the airflow.api_fastapi module and how its resources and permissions define the FastAPI RBAC model. Compare the existing automatically generated database ERD, configuration, and CLI references to identify an appropriate specification format and generation path. Done means the API auth roles and permissions are represented in an automatically updated reference for auth-manager developers.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- fastapi, python
- Domain
- api, authorization, documentation
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100