elasticsearch/libs/entitlement/bridge
Lorenzo Dematté 02493f35f3
Add package-info.java and javadocs to document Entitlements design and implementation (#127023)
Design and implementation of Entitlement with this level of detail needs to stay close to the code, and take advantage of javadoc features like linking and class-references to help us with refactorings and future code changes.

The bulk of the information went into the package-info file for the main library, but I split up some parts and referenced them from the main doc, where I thought it made sense (mainly: the bridge sub-project for some implementation details, PolicyManager, EntitlementInitialization and FileAccessTree); this way they still can be reached from the "overview" while being closer to where the information really belongs.

Relates to ES-11284
2025-04-22 10:46:20 +02:00
..
src Add package-info.java and javadocs to document Entitlements design and implementation (#127023) 2025-04-22 10:46:20 +02:00
build.gradle Add initial file entitlement check (#120243) 2025-01-28 21:13:31 +01:00
README.md Dynamic entitlement agent (#116125) 2024-11-06 00:07:52 +01:00

Entitlement Bridge

This is the code called directly from instrumented methods. It's a minimal shim that is patched into the java.base module so that it is callable from the class library methods instrumented by the agent. Its job is to forward the entitlement checks to the main library, which is loaded normally.

It is not responsible for injecting the bytecode instrumentation (that's the agent) nor for implementing the permission checks (that's the main library).