Example usage for org.apache.shiro.mgt DefaultSecurityManager getSubjectDAO

List of usage examples for org.apache.shiro.mgt DefaultSecurityManager getSubjectDAO

Introduction

In this page you can find the example usage for org.apache.shiro.mgt DefaultSecurityManager getSubjectDAO.

Prototype

public SubjectDAO getSubjectDAO() 

Source Link

Document

Returns the SubjectDAO responsible for persisting Subject state, typically used after login or when an Subject identity is discovered (eg after RememberMe services).

Usage

From source file:Global.java

License:Open Source License

public static void initialize() {

    SampleRealm sampleRealm = new SampleRealm();
    sampleRealm.ini();//w ww  .jav  a 2 s .  c o m
    Factory<SecurityManager> factory = new IniSecurityManagerFactory("classpath:shiro.ini");
    DefaultSecurityManager securityManager = (DefaultSecurityManager) factory.getInstance();

    //DefaultSecurityManager securityManager = new DefaultSecurityManager();

    //securityManager.setRealm(sampleRealm);
    /*try {
    PropertyUtils.getNestedProperty(securityManager, "-1");
    } catch (IllegalAccessException e) {
    e.printStackTrace();
    } catch (InvocationTargetException e) {
    e.printStackTrace();
    } catch (NoSuchMethodException e) {
    e.printStackTrace();
    }*/

    // Turn off session storage for better "stateless" management.
    // https://shiro.apache.org/session-management.html#SessionManagement-StatelessApplications%2528Sessionless%2529
    DefaultSubjectDAO subjectDAO = (DefaultSubjectDAO) securityManager.getSubjectDAO();
    DefaultSessionStorageEvaluator sessionStorageEvaluator = (DefaultSessionStorageEvaluator) subjectDAO
            .getSessionStorageEvaluator();

    sessionStorageEvaluator.setSessionStorageEnabled(false);

    //securityManager.setCacheManager(new PlayShiroCache());
    //securityManager.setCacheManager(org.apache.shir/o

    org.apache.shiro.SecurityUtils.setSecurityManager(securityManager);
}

From source file:com.esha.dropwizard.stormpath.shiro.StormpathShiroBundle.java

License:Apache License

private SecurityManager buildSecurityManager(final StormpathShiroConfiguration config,
        final Optional<GroupPermissionResolver> groupPermissionResolver,
        final Optional<GroupRoleResolver> groupRoleResolver) {

    final ApplicationRealm applicationRealm = new ApplicationRealm();
    applicationRealm.setApplicationRestUrl(config.getApplicationRestUrl());
    applicationRealm.setClient(getClient());

    if (groupPermissionResolver.isPresent()) {
        applicationRealm.setGroupPermissionResolver(groupPermissionResolver.get());
    }/*w  w  w . j  a va 2  s  .c  o m*/

    if (groupRoleResolver.isPresent()) {
        applicationRealm.setGroupRoleResolver(groupRoleResolver.get());
    }

    final DefaultSecurityManager securityManager = new DefaultSecurityManager(applicationRealm);
    ((DefaultSessionStorageEvaluator) ((DefaultSubjectDAO) securityManager.getSubjectDAO())
            .getSessionStorageEvaluator()).setSessionStorageEnabled(config.isSessionStorageEnabled());
    return securityManager;
}

From source file:com.github.dactiv.fear.user.web.AccountController.java

License:Apache License

/**
 * ?/*from  w w  w.  j  a  va 2s . co m*/
 *
 * @param entity              Map
 * @param redirectAttributes spring mvc ??
 *
 * @return ? json
 *
 * @throws IOException
 */
@RequestMapping("update-profile")
public String updateProfile(@RequestParam Map<String, Object> entity, RedirectAttributes redirectAttributes)
        throws IOException {
    // ?? shiro subject ?
    Subject subject = SecurityUtils.getSubject();
    Map<String, Object> user = Casts.cast(subject.getPrincipal());
    // ???
    user.putAll(entity);
    // ??
    Apis.invoke("accountService", "saveUser", user, null);

    DefaultSecurityManager securityManager = (DefaultSecurityManager) SecurityUtils.getSecurityManager();
    // ?????
    AbstractRememberMeManager rmm = (AbstractRememberMeManager) securityManager.getRememberMeManager();
    rmm.rememberIdentity(subject, null,
            new SimpleAuthenticationInfo(subject.getPrincipals(), user.get("password")));

    // ? subjectDao, ???
    securityManager.getSubjectDAO().save(subject);

    redirectAttributes.addFlashAttribute("message", "??.");

    return "redirect:/account/user-profile";
}

From source file:org.icgc.dcc.submission.shiro.SecurityManagerProvider.java

License:Open Source License

/**
 * Disables server-side sessions entirely
 *//*from w  w w  .ja  va2s  . com*/
private void disableSessions(DefaultSecurityManager defaultSecurityManager) {
    val subjectDao = (DefaultSubjectDAO) defaultSecurityManager.getSubjectDAO();
    val sessionStorageEvaluator = (DefaultSessionStorageEvaluator) subjectDao.getSessionStorageEvaluator();
    sessionStorageEvaluator.setSessionStorageEnabled(false);
}

From source file:org.ms123.common.permission.PermissionServiceImpl.java

License:Open Source License

private DefaultSecurityManager createSecurityManager(Realm realm) {
    DefaultSecurityManager sm = new DefaultSecurityManager(realm);
    DefaultSubjectDAO dao = (DefaultSubjectDAO) sm.getSubjectDAO();
    DefaultSessionStorageEvaluator ev = (DefaultSessionStorageEvaluator) dao.getSessionStorageEvaluator();
    ev.setSessionStorageEnabled(false);// ww  w  .java2 s.co  m
    return sm;
}