Skip to content

Commit 98129f1

Browse files
committed
Update to declarative documentation, added security.
1 parent a079f49 commit 98129f1

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

docs/src/main/asciidoc/se/injection/declarative.adoc

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,7 @@ The following features are currently implemented:
8383
- <<Dec-FT, Fault Tolerance>>
8484
- <<Dec-Scheduling, Scheduling>>
8585
- <<Dec-Validation, Validation>>
86+
- <<Dec-Security, Security>>
8687
8788
A Helidon Declarative application should be started using the generated application binding, to ensure no lookup and no reflection.
8889
The call to `ServiceRegistryManager.start` ensures that all services with a defined `RunLevel` are started, including Helidon WebServer, Scheduled services etc.
@@ -371,3 +372,21 @@ For each constraint annotation, there MUST be a service that validates it.
371372
----
372373
include::{sourcedir}/se/inject/DeclarativeExample.java[tag=snippet_10, indent=0]
373374
----
375+
376+
=== Security [[Dec-Security]]
377+
378+
Security provides protection of WebServer endpoints.
379+
380+
Identity propagation (when using a WebClient) depends on configuration of the client and configuration of security.
381+
We currently do not have declarative way of modifying client behavior.
382+
383+
Supported annotations:
384+
385+
- `io.helidon.security.annotations.Authenticated` - mark an endpoint or a method as requiring authentication
386+
- `io.helidon.security.annotations.Authorized` - mark an endpoint or a method as requiring authorization
387+
- `io.helidon.security.annotations.Audited` - mark an endpoint or a method as requiring audit logging
388+
- `io.helidon.security.abac.role.RoleValidator.PermitAll` - annotated method does not require any authentication or authorization (even if endpoint does)
389+
- `jakarta.annotation.security.PermitAll` - same as `RoleValidator.PermitAll`
390+
- `jakarta.annotation.security.DenyAll` - annotated method will not be callable with any kind of authentication or authorization
391+
- link:{security-javadoc-base-url}/io/helidon/security/abac/role/RoleValidator.Roles.html[`io.helidon.security.abac.role.RoleValidator.Roles`] - provide a set of roles that can access a resource, implies authentication is required
392+
- `jakarta.annotation.security.RolesAllowed` - same as above (`RoleValidator.Roles`)

0 commit comments

Comments
 (0)