public boolean equals(Object o) { if (!(o instanceof TgwJDBCUser)) return false; TgwJDBCUser obj = (TgwJDBCUser) o; return obj.getName().equals(this.getName()) && obj.getSiteName().equals(this.getSiteName()); }
public TgwJDBCUser(Object userObject, String siteName) { super(); this.siteName = siteName; setUserObject(userObject); extractUserData(); }
private void extractUserData() { Long userId = P.get(getUserObject(), Constants.ENTITY_BUILTIN_ID); String userName = P.get(getUserObject(), SecurityUtils .getUserColumnUsername()); String passWord = P.get(getUserObject(), SecurityUtils .getUserColumnPassword()); setId(userId); setName(userName); setPassword(passWord); Set userRoleSet = P.get(getUserObject(), SecurityUtils .getUserColumnUserrole()); if (userRoleSet != null) { List<String> rolesList = new ArrayList<String>(); for (Object userRoleBean : userRoleSet) { Object role = P.get(userRoleBean, SecurityUtils .getUserroleColumnRole()); String roleName = P.get(role, SecurityUtils .getRoleColumnRolename()); rolesList.add(roleName); } String[] roles = (String[]) rolesList.toArray(new String[rolesList .size()]); setRoles(roles); } } }
private boolean isSiteAvailableUser(TgwUser user, HttpServletRequest httpRequest) { String accessSiteName = ControllerUtils.extractSiteName(httpRequest); if (user == null || accessSiteName == null) { return false; } if (user instanceof TgwJDBCUser) { TgwJDBCUser jdbcUser = (TgwJDBCUser) user; String availableSiteName = jdbcUser.getSiteName(); if (accessSiteName.equals(availableSiteName)) { return true; } } return false; }
public boolean hasPermission(String siteName, Principal principal, Action action) { if (principal == null) { return hasPermission(siteName,Constants.ROLE_UNAUTHENTICATED,action); } else { String[] roles = null; if(principal instanceof TgwJDBCUser){ roles = ((TgwJDBCUser) principal).getRoles(); }else{ roles = getRoles(principal.getName()); } // String[] roles = getRoles(principal.getName()); // String[] roles = TgwContext.getRoles(); for (int i = 0; i < roles.length; i++) { if (hasPermission(siteName, roles[i], action)) { return true; } } } return false; }
private TgwUser retrieveUser(SiteConfig siteConfig, String username) { TgwUser user = null; if (siteConfig.isUserStoreDatabase()) { TgwEntity userEntity = modelService.getEntity(siteConfig.getName(), SecurityUtils.getUserEntityName()); Object userBean = dataService.loadByValue(userEntity, SecurityUtils .getUserColumnUsername(), username); user = new TgwJDBCUser(userBean, siteConfig.getName()); } else { String userdn = directoryService.buildUserDN(username); user = directoryService.getUser(userdn); } return user; }