Great! Glad it is working now! On Wed, Feb 22, 2017 at 3:58 PM, Simeó Reig <[email protected]> wrote:
> B.I.N.G.O!!! > > I didnt have any exception about it, just make it implement serializable > and it works!! > > you make my day, thanka again Brian > > my best regards > > Simeo Reig > > > > Is your 'User' object serializable ? Do you have any exceptions in your > log related to that? > > On Wed, Feb 22, 2017 at 3:12 PM, Simeó Reig <[email protected]> > wrote: > >> If I choose "remember me" in login form it's true, and viceversa, as it >> should be. >> >> As I've just said before implementing custom realm I could see "shiroTest" >> cookie when I activated remember me >> >> Nothing has changed, besides shiro.ini >> >> >> Thanks >> >> --------------------------- >> >> original shiro.ini It works >> >> --------------------------- >> >> [main] >> authc.loginUrl = /faces/login.xhtml >> user.loginUrl = /faces/login.xhtml >> authc = org.apache.shiro.web.filter.authc.PassThruAuthenticationFilter >> >> [users] >> admin = secret,admin >> simeo = secret2,user >> >> [roles] >> admin = * >> user = usuaris:* , ventes:edicio, ventes:delete >> user_grant = ventes:canvi >> >> [urls] >> /faces/admin/index.xhtml=user >> /faces/admin/protected.xhtml = user,roles[admin] >> >> --------------------------------- >> New shiro.ini (does not work rememberMe functionallity) >> --------------------------------- >> >> >> [main] >> authc.loginUrl = /faces/login.xhtml >> user.loginUrl = /faces/login.xhtml >> >> adronicaRealm = com.mycompany.shirofaces.myRealm >> >> authc = org.apache.shiro.web.filter.authc.PassThruAuthenticationFilter >> securityManager.rememberMeManager.cookie.name = shiroTest >> securityManager.realms = $adronicaRealm >> >> [roles] >> admin = * >> user = usuaris:* , ventes:edicio, ventes:delete >> user_grant = ventes:canvi >> >> >> >> [urls] >> /faces/admin/index.xhtml=user >> /faces/admin/protected.xhtml = user,roles[admin] >> >> >> >> >> >> >> >> >> >> >> A 22-02-2017 20:46, Brian Demers escrigué: >> >> You don't need to do anything in your realm. Has something else changed >> other then your realm? >> >> What does your "System.out.println("isRememberMe Activated ===> " + >> upToken.isRememberMe());" line print? >> >> On Wed, Feb 22, 2017 at 2:16 PM, Simeó Reig <[email protected] >> > wrote: >> >>> Hello All >>> >>> We had a shiro web JSF app working smoothless, but we need to have an >>> own Realm, therefore we extended AuthorizingRealm. The system works but now >>> rememberMe function does not work, shiro does not create the cookie. >>> >>> Must we implement rememberMe function too if we implemented our Realm?? >>> how? >>> >>> >>> Many thanks in advance >>> >>> >>> ---------------- >>> >>> Our custom realm >>> >>> ----------------- >>> >>> >>> public class myRealm extends AuthorizingRealm { >>> >>> >>> @Override >>> protected AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection >>> principals) { >>> Set<String> roles = new HashSet<>(); >>> Collection<User> principalsList = principals.byType(User.class); >>> >>> if (principalsList.isEmpty()) throw new >>> AuthorizationException("Empty principals list!"); >>> >>> for (User userPrincipal : principalsList) { >>> try { >>> User user = new User(userPrincipal.getId(),use >>> rPrincipal.getName(),userPrincipal.getPassword()); >>> List<Role> userRoles = user.getRoles(); >>> for (Role r : userRoles) {roles.add(r.getName()); >>> } >>> } catch (Exception rEx) { >>> throw new AuthorizationException(rEx); >>> } >>> } >>> >>> SimpleAuthorizationInfo info = new SimpleAuthorizationInfo(roles) >>> ; >>> info.setRoles(roles); //fill in roles >>> return info; >>> } >>> >>> @Override >>> protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken >>> token) throws AuthenticationException { >>> >>> UsernamePasswordToken upToken = (UsernamePasswordToken) token; >>> >>> System.out.println("isRememberMe Activated ===> " + >>> upToken.isRememberMe()); >>> >>> User user = new User(1,upToken.getUsername(),"password"); >>> >>> if (user == null) {throw new AuthenticationException("Login name >>> [" + upToken.getUsername() + "] not found!");} >>> >>> return new SimpleAuthenticationInfo(user, user.getPassword(), >>> ByteSource.Util.bytes(user.getSalt()), getName()); >>> } >>> >>> } >>> >>> >>> --------- >>> >>> shiro.ini >>> >>> --------- >>> >>> [main] >>> authc.loginUrl = /faces/login.xhtml >>> user.loginUrl = /faces/login.xhtml >>> >>> adronicaRealm = com.adronica.shirofaces.myRealm >>> >>> authc = org.apache.shiro.web.filter.authc.PassThruAuthenticationFilter >>> securityManager.rememberMeManager.cookie.name = shiroTest >>> securityManager.realms = $adronicaRealm >>> >>> [urls] >>> /faces/admin/index.xhtml=user >>> /faces/admin/protected.xhtml = user,roles[admin] >>> >>> >>> >>> ------ >>> >>> pom.xml >>> >>> --------- >>> >>> <dependencies> >>> >>> <dependency> >>> <groupId>javax</groupId> >>> <artifactId>javaee-web-api</artifactId> >>> <version>7.0</version> >>> <scope>provided</scope> >>> </dependency> >>> >>> <dependency> >>> <groupId>org.apache.shiro</groupId> >>> <artifactId>shiro-core</artifactId> >>> <version>1.4.0-RC2</version> >>> </dependency> >>> >>> <dependency> >>> <groupId>org.apache.shiro</groupId> >>> <artifactId>shiro-web</artifactId> >>> <version>1.4.0-RC2</version> >>> </dependency> >>> >>> <dependency> >>> <groupId>org.apache.shiro</groupId> >>> <artifactId>shiro-faces</artifactId> >>> <version>2.0</version> >>> </dependency> >>> >>> <dependency> >>> <groupId>org.omnifaces</groupId> >>> <artifactId>omnifaces</artifactId> >>> <version>2.6</version> >>> </dependency> >>> >>> <dependency> >>> <groupId>commons-logging</groupId> >>> <artifactId>commons-logging</artifactId> >>> <version>1.2</version> >>> </dependency> >>> >>> <dependency> >>> <groupId>org.primefaces</groupId> >>> <artifactId>primefaces</artifactId> >>> <version>6.0</version> >>> </dependency> >>> >>> </dependencies> >>> >> >> >
