Package io.helidon.webserver.security
package io.helidon.webserver.security
Helidon WebServer Security Support.
Example of integration (expects an instance of Security
):
// WebServer routing builder - this is our integration pointHttpRouting
routing = HttpRouting.builder() // register the WebSecurity to create context (shared by all routes) .register(SecurityHttpFeature
.from(security)
) // authenticate all paths under /user and require role "user" .get("/user[/{*}]", WebSecurity.authenticate()
.rolesAllowed("user")
) // authenticate "/admin" path and require role "admin" .get("/admin", WebSecurity.rolesAllowed("admin") .authenticate() ) // build a routing instance to startWebServer
with. .build();
The main security methods are duplicate - first as static methods on SecurityHttpFeature
and
then as instance methods on SecurityHandler
that is returned by the static methods
above. This is to provide a single starting point for security integration (SecurityHttpFeature
)
and fluent API to build the "gate" to each route that is protected.
- See Also:
-
ClassesClassDescriptionServer feature for security, to be registered with
WebServerConfig.BuilderBase.addFeature(io.helidon.webserver.spi.ServerFeature)
.ServiceLoader
provider implementation ofServerFeatureProvider
for security.Handles security for web server.Handler of query parameters - extracts them and stores them in a security header, so security can access them.Integration of security into WebServer.