X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=security%2Fruntime%2Forg.argeo.security.core%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fsecurity%2FArgeoSecurityDao.java;h=67c4cb2ec39e9e315e3c2fa486aa9b72914020ed;hb=136dab5338b5f731b285d17c804861bd5e5a9b5c;hp=f91e86748457669de1ce0cd31edcaae995f85742;hpb=dc6f911c680574a9b57c34dcf515ac8f9aa808da;p=lgpl%2Fargeo-commons.git diff --git a/security/runtime/org.argeo.security.core/src/main/java/org/argeo/security/ArgeoSecurityDao.java b/security/runtime/org.argeo.security.core/src/main/java/org/argeo/security/ArgeoSecurityDao.java index f91e86748..67c4cb2ec 100644 --- a/security/runtime/org.argeo.security.core/src/main/java/org/argeo/security/ArgeoSecurityDao.java +++ b/security/runtime/org.argeo.security.core/src/main/java/org/argeo/security/ArgeoSecurityDao.java @@ -16,7 +16,7 @@ package org.argeo.security; -import java.util.List; +import java.util.Set; /** * Access to the users and roles referential (dependent from the underlying @@ -25,20 +25,33 @@ import java.util.List; public interface ArgeoSecurityDao { // public ArgeoUser getCurrentUser(); - public List listUsers(); + /** List all users */ + public Set listUsers(); - public List listEditableRoles(); + /** List roles that can be modified */ + public Set listEditableRoles(); - public void create(ArgeoUser user); + /** + * Creates a new user in the underlying storage. DO NOT CALL DIRECTLY + * use {@link ArgeoSecurityService#newUser(ArgeoUser)} instead. + */ + public void createUser(ArgeoUser user); - public void update(ArgeoUser user); + public void updateUser(ArgeoUser user); - public void delete(String username); + public void deleteUser(String username); + /** + * Creates a new role in the underlying storage. DO NOT CALL DIRECTLY + * use {@link ArgeoSecurityService#newRole(String)} instead. + */ public void createRole(String role, String superuserName); public void deleteRole(String role); + /** List all users having this role. */ + public Set listUsersInRole(String role); + public Boolean userExists(String username); public ArgeoUser getUser(String username); @@ -46,4 +59,10 @@ public interface ArgeoSecurityDao { public ArgeoUser getUserWithPassword(String username); public String getDefaultRole(); + + /** Validates a raw password against an encoded one. */ + public Boolean isPasswordValid(String encoded, String raw); + + /** Encodes a raw password. */ + public String encodePassword(String raw); }