[RFC] Kerberos Support for Hugegraph #3156
Replies: 3 comments
|
Here's the link to the commit for PoC. (This PoC is generated with the help of github copilot). |
|
Hi @imbajin, Can you please provide your inputs for initiative ? |
|
Thanks for proposing this. Kerberos is a valid requirement in some enterprise, Hadoop, and Active Directory environments. However, the current community demand is not yet clear. This appears to be the only concrete Kerberos request in the HugeGraph repository, with limited feedback from potential users so far.[8] Therefore, we are open to exploring the capability, but we should avoid committing HugeGraph Core and all clients to a four-phase Kerberos roadmap before there is demonstrated adoption. It would help if you could provide more concrete demand information:
Recommended architectureKerberos should be implemented as an external authentication plugin built on the existing HugeGraph authentication extension mechanism, with only a minimal generic compatibility change in Core. Neo4j provides a useful reference. Its Kerberos implementation is distributed as a separate HugeGraph already has a similar foundation:
We should reuse these existing extension points instead of adding Kerberos-specific parameters and methods throughout the authentication and authorization layers. The remaining limitation is that the current REST The Core adaptation should therefore be limited to a generic mechanism that allows an explicitly configured authenticator to declare and handle an additional HTTP authentication scheme: A Kerberos plugin could extend or delegate to Core boundariesThe HugeGraph Core change should meet the following constraints:
When the plugin is absent, HugeGraph should not:
This is stronger isolation than adding an Concerns with the current PoCThe current PoC is useful for validating the idea, but it is too invasive for an optional feature:[9]
These changes create compatibility, security-review, and maintenance costs even for deployments that never use Kerberos. They do not yet satisfy the stated "opt-in and additive" requirement. Suggested initial scopePlease revise the proposal around a smaller first phase:
Gremlin may later reuse TinkerPop's stateful In summary, the Kerberos use case is reasonable, but its necessity for the broader HugeGraph community is not yet demonstrated. We would support a lightweight plugin-oriented implementation that reuses References
|
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Hi HugeGraph Dev Community,
I'd like to open a discussion on a proposed enhancement: Kerberos Support for Apache HugeGraph.
Motivation
In many enterprise environments, Kerberos is the standard authentication mechanism for SSO and
centralized identity management.
Adding native Kerberos support would make HugeGraph easier to adopt in Kerberos-first deployments
while keeping existing authentication flows intact.
Proposal
Introduce Kerberos support as an opt-in, additive capability across HugeGraph interfaces,
delivered in phases.
The implementation will use Java's built-in
org.ietf.jgss.*(GSSAPI) andjavax.security.auth.*(JAAS), without adding new third-party dependencies.Key Highlights
Phase-wise Plan
Phase 1 — REST API:
Add Negotiate auth on the server and Kerberos support in the REST client.
Phase 2 — Gremlin WebSocket:
Add SASL GSSAPI support for Gremlin connections.
Phase 3 — Cypher API:
Add Kerberos handling for Cypher auth flow and client config.
Phase 4 — SDKs / Toolkits:
Add Kerberos support to language-specific clients and CLI tools.
RFC doc: Kerberos Auth Support for HugeGraph
I welcome feedback on scope, sequencing, and rollout expectations.
Best regards,
Dev Hingu
All reactions