> param : userName <string>
> return : userDetails <json> : full details (roles, natures, etc).
-createUser.security (ADMIN only)
-> params : username <string>, password <string>
+createUser.security (ADMIN only, POST)
+> params : userDetails <json>
+
+updateUser.security (POST)
+> params : userDetails <json>
updateUserPassword.security (ADMIN only)
> param : username <string>, password <string>
</bean>
<bean id="userDeserializer" class="org.argeo.server.json.JsonServerMapper">
- <property name="targetClass" value="org.argeo.security.BasicArgeoUser" />
+ <property name="targetClass" value="org.argeo.security.SimpleArgeoUser" />
<property name="deserializers">
<map>
<entry key="org.argeo.security.UserNature">
org.argeo.security.*
</Export-Package>
<Import-Package>*,
- org.argeo.server.json;resolution:=optional
+ org.argeo.server.json;resolution:=optional,
+ org.springframework.ldap.core.support;resolution:=optional
</Import-Package>
</instructions>
</configuration>
+++ /dev/null
-package org.argeo.security;
-
-import java.io.Serializable;
-import java.util.ArrayList;
-import java.util.List;
-
-public class BasicArgeoUser implements ArgeoUser, Serializable {
- private static final long serialVersionUID = 1L;
-
- private String username;
- private String password;
- private List<UserNature> userNatures = new ArrayList<UserNature>();
- private List<String> roles = new ArrayList<String>();
-
- public BasicArgeoUser() {
-
- }
-
- public BasicArgeoUser(ArgeoUser argeoUser) {
- username = argeoUser.getUsername();
- password = argeoUser.getPassword();
- userNatures = new ArrayList<UserNature>(argeoUser.getUserNatures());
- roles = new ArrayList<String>(argeoUser.getRoles());
- }
-
- public List<UserNature> getUserNatures() {
- return userNatures;
- }
-
- public List<String> getRoles() {
- return roles;
- }
-
- public String getUsername() {
- return username;
- }
-
- public void setUsername(String username) {
- this.username = username;
- }
-
- public void setUserNatures(List<UserNature> userNatures) {
- this.userNatures = userNatures;
- }
-
- public void setRoles(List<String> roles) {
- this.roles = roles;
- }
-
- public String getPassword() {
- return password;
- }
-
- public void setPassword(String password) {
- this.password = password;
- }
-}
--- /dev/null
+package org.argeo.security;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+public class SimpleArgeoUser implements ArgeoUser, Serializable {
+ private static final long serialVersionUID = 1L;
+
+ private String username;
+ private String password;
+ private List<UserNature> userNatures = new ArrayList<UserNature>();
+ private List<String> roles = new ArrayList<String>();
+
+ public SimpleArgeoUser() {
+
+ }
+
+ public SimpleArgeoUser(ArgeoUser argeoUser) {
+ username = argeoUser.getUsername();
+ password = argeoUser.getPassword();
+ userNatures = new ArrayList<UserNature>(argeoUser.getUserNatures());
+ roles = new ArrayList<String>(argeoUser.getRoles());
+ }
+
+ public List<UserNature> getUserNatures() {
+ return userNatures;
+ }
+
+ public List<String> getRoles() {
+ return roles;
+ }
+
+ public String getUsername() {
+ return username;
+ }
+
+ public void setUsername(String username) {
+ this.username = username;
+ }
+
+ public void setUserNatures(List<UserNature> userNatures) {
+ this.userNatures = userNatures;
+ }
+
+ public void setRoles(List<String> roles) {
+ this.roles = roles;
+ }
+
+ public String getPassword() {
+ return password;
+ }
+
+ public void setPassword(String password) {
+ this.password = password;
+ }
+}
import java.util.List;
import org.argeo.security.ArgeoUser;
-import org.argeo.security.BasicArgeoUser;
+import org.argeo.security.SimpleArgeoUser;
import org.argeo.security.UserNature;
import org.springframework.security.Authentication;
import org.springframework.security.GrantedAuthority;
return arr;
}
- public static BasicArgeoUser createBasicArgeoUser(UserDetails userDetails) {
+ public static SimpleArgeoUser createBasicArgeoUser(UserDetails userDetails) {
if (userDetails instanceof ArgeoUser) {
- return new BasicArgeoUser((ArgeoUser) userDetails);
+ return new SimpleArgeoUser((ArgeoUser) userDetails);
} else {
- BasicArgeoUser argeoUser = new BasicArgeoUser();
+ SimpleArgeoUser argeoUser = new SimpleArgeoUser();
argeoUser.setUsername(userDetails.getUsername());
addAuthoritiesToRoles(userDetails.getAuthorities(), argeoUser
.getRoles());
public static ArgeoUser asArgeoUser(Authentication authentication) {
if (authentication.getPrincipal() instanceof ArgeoUser) {
- return (ArgeoUser) authentication.getPrincipal();
+ return new SimpleArgeoUser((ArgeoUser) authentication.getPrincipal());
} else {
- BasicArgeoUser argeoUser = new BasicArgeoUser();
+ SimpleArgeoUser argeoUser = new SimpleArgeoUser();
argeoUser.setUsername(authentication.getName());
addAuthoritiesToRoles(authentication.getAuthorities(), argeoUser
.getRoles());
import org.argeo.security.ArgeoSecurityDao;
import org.argeo.security.ArgeoSecurityService;
import org.argeo.security.ArgeoUser;
-import org.argeo.security.BasicArgeoUser;
+import org.argeo.security.SimpleArgeoUser;
public class DefaultSecurityService implements ArgeoSecurityService {
private ArgeoSecurity argeoSecurity = new DefaultArgeoSecurity();
}
public void updateUserPassword(String username, String password) {
- BasicArgeoUser user = new BasicArgeoUser(securityDao.getUser(username));
+ SimpleArgeoUser user = new SimpleArgeoUser(securityDao.getUser(username));
user.setPassword(password);
securityDao.update(user);
}
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.argeo.security.ArgeoUser;
-import org.argeo.security.BasicArgeoUser;
+import org.argeo.security.SimpleArgeoUser;
import org.argeo.security.UserNature;
import org.argeo.security.core.ArgeoUserDetails;
import org.argeo.security.nature.CoworkerNature;
ArgeoUserDetails argeoUserDetails = new ArgeoUserDetails("USER",
natures, "PASSWORD", roles);
- BasicArgeoUser argeoUser = new BasicArgeoUser(argeoUserDetails);
+ SimpleArgeoUser argeoUser = new SimpleArgeoUser(argeoUserDetails);
StringWriter writer = new StringWriter();
import org.apache.commons.io.IOUtils;
import org.argeo.security.ArgeoUser;
-import org.argeo.security.BasicArgeoUser;
+import org.argeo.security.SimpleArgeoUser;
import org.argeo.security.UserNature;
import org.argeo.server.json.GenericJsonDeserializer;
import org.argeo.server.json.JsonObjectFactoryImpl;
@SuppressWarnings("unchecked")
public static JsonServerMapper createJsonServerMapper() throws Exception {
JsonServerMapper mapper = new JsonServerMapper();
- mapper.setTargetClass(BasicArgeoUser.class);
+ mapper.setTargetClass(SimpleArgeoUser.class);
GenericJsonDeserializer jsonDeserializer = new GenericJsonDeserializer();
jsonDeserializer.getObjectFactories().add(new JsonObjectFactoryImpl());
mapper.getDeserializers().put(UserNature.class, jsonDeserializer);
import org.apache.commons.logging.LogFactory;
import org.argeo.security.ArgeoSecurityService;
import org.argeo.security.ArgeoUser;
-import org.argeo.security.BasicArgeoUser;
+import org.argeo.security.SimpleArgeoUser;
import org.argeo.security.core.ArgeoUserDetails;
import org.argeo.server.BooleanAnswer;
import org.argeo.server.DeserializingEditor;
@InitBinder
public void initBinder(WebDataBinder binder) {
- binder.registerCustomEditor(BasicArgeoUser.class,
+ binder.registerCustomEditor(SimpleArgeoUser.class,
new DeserializingEditor(userDeserializer));
}