
io.airlift.http.server.Security Maven / Gradle / Ivy
package io.airlift.http.server;
import java.util.Collections;
import org.eclipse.jetty.security.ConstraintMapping;
import org.eclipse.jetty.security.ConstraintSecurityHandler;
import org.eclipse.jetty.security.DefaultIdentityService;
import org.eclipse.jetty.security.HashLoginService;
import org.eclipse.jetty.security.IdentityService;
import org.eclipse.jetty.security.LoginService;
import org.eclipse.jetty.security.SecurityHandler;
import org.eclipse.jetty.security.authentication.FormAuthenticator;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.util.security.Constraint;
import org.eclipse.jetty.util.security.Password;
public class Security {
public SecurityHandler securityHandler(Server server) {
Constraint constraint = new Constraint();
constraint.setName(Constraint.__FORM_AUTH);
constraint.setRoles(new String[] { "user", "admin" });
constraint.setAuthenticate(true);
ConstraintMapping mapping = new ConstraintMapping();
mapping.setPathSpec("/*");
mapping.setConstraint(constraint);
ConstraintSecurityHandler securityHandler = new ConstraintSecurityHandler();
//securityHandler.setIdentityService(identityService);
securityHandler.setConstraintMappings(Collections.singletonList(mapping));
HashLoginService loginService = new HashLoginService("Jenkins Realm");
loginService.putUser("username", new Password("password"), new String[] {"user"});
//loginService.setIdentityService(identityService);
server.addBean(loginService);
securityHandler.setLoginService(loginService);
//FormAuthenticator authenticator = new FormAuthenticator();
//securityHandler.setAuthenticator(authenticator);
//authenticator.setConfiguration(securityHandler);
return securityHandler;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy