Add LDAP/Active Directory Authentication Support for Broker and Controller
- Dominant language
- Java
- Stars
- 6.1k
- Forks
- 1.5k
- Avg merge
- 2d 55m
- Merged PRs (30d)
- 182
Description
Pinot currently lacks built-in LDAP/Active Directory authentication support for securing Broker and Controller REST APIs. This feature request proposes adding configurable LDAP authentication to enable enterprise integration with existing directory services.
## Problem Statement
Organizations using Apache Pinot need to:
1. Integrate with existing LDAP/Active Directory infrastructure
2. Authenticate users accessing Pinot Query Console and REST APIs
3. Secure broker query endpoints and controller management APIs
4. Support standard Basic Authentication with LDAP backend validation
Currently, Pinot has limited authentication options, making it challenging for enterprises to deploy Pinot in environments with strict security requirements.
## Backward Compatibility
- **Fully backward compatible**: Existing deployments without LDAP config continue to work
- **Opt-in feature**: Only enabled when `authentication.factory.class` is configured
- **No breaking changes**: All changes are additive, no modifications to existing APIs
## Future Enhancements (Not in Initial PR)
This feature lays the groundwork for future authentication/authorization enhancements:
1. **RBAC Authorization** (Separate PR)
- File-based authorization policies
- Table-level permissions
- Endpoint-level access control
2. **UI Session Management** (Separate PR)
- Browser session persistence
- Auto-restore on page refresh
4. **Advanced Features** (Future)
- OAuth/OIDC support
Contributor guide
Research direction
No files, tests, or entry points are named. Start by locating the existing Broker and Controller REST authentication configuration, then determine how optional Basic Authentication can validate against LDAP or Active Directory; done means an opt-in configuration works without changing deployments that lack LDAP settings.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- api, authentication, security
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100