Hi I would like to enable basic authentication and @RolesAllowed for restEasy on UndertowJaxrsServer Can someone help me out how to enable this
I found some references to set resteasy.role.based.security but I did not find a way how to set this in my DeploymentInfo <context-param> <param-name>resteasy.role.based.security</param-name> <param-value>true</param-value> </context-param> Some of my code I have been trying is. But it is not working. webServer = new UndertowJaxrsServer(); Undertow.Builder serverBuilder=Undertow.builder(); serverBuilder = serverBuilder.addHttpListener(Integer.parseInt(properties.getProperty("port")), properties.getProperty("address")); webServer.start(serverBuilder); HashMap users = new HashMap(2); users.put("userOne", "passwordOne".toCharArray()); users.put("userTwo", "passwordTwo".toCharArray()); MapIdentityManager identityManager = new MapIdentityManager(users); DeploymentInfo di = webServer.undertowDeployment(MyApp.class) ; di.setClassLoader(GetRest.class.getClassLoader()) ; di.setDeploymentName("My Application"); di.setContextPath("/di"); LoginConfig loginConfig=new LoginConfig("BASIC","MyRealm"); di.setLoginConfig(loginConfig); di.setIdentityManager(identityManager); webServer.deploy(di); webServer.deploy(MyApp.class); class MapIdentityManager implements IdentityManager { private final Map<String, char[]> users; public MapIdentityManager(Map<String, char[]> users) { this.users = users; } @Override public Account verify(Account account) { return account; } @Override public Account verify(String id, Credential credential) { Account account = this.getAccount(id); return account != null && this.verifyCredential(account, credential)?account:null; } @Override public Account verify(Credential credential) { return null; } private boolean verifyCredential(Account account, Credential credential) { if(credential instanceof PasswordCredential) { char[] password = ((PasswordCredential)credential).getPassword(); char[] expectedPassword = (char[])this.users.get(account.getPrincipal().getName()); return Arrays.equals(password, expectedPassword); } else { return false; } } private Account getAccount(final String id) { return this.users.containsKey(id)?new Account() { private final Principal principal = new Principal() { @Override public String getName() { return id; } }; @Override public Principal getPrincipal() { return this.principal; } @Override public Set<String> getRoles() { return Collections.emptySet(); } }:null; } } ------------------------------------------------------------------------------ BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT Develop your own process in accordance with the BPMN 2 standard Learn Process modeling best practices with Bonita BPM through live exercises http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_ source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF _______________________________________________ Resteasy-users mailing list Resteasy-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/resteasy-users