Est-il possible d'implémenter MongoDB en tant que domaine Shiro ?
大家讲道理
大家讲道理 2017-05-17 09:58:54
0
1
597

Mon exigence est de lire les informations d'utilisateur et d'autorisation de la base de données pour terminer l'authentification et l'autorisation. Shiro fournit une implémentation de JdbcRealm, mais il n'y a pas d'implémentation de domaine MongoDB.
Puis-je s'il vous plaît :

  1. Implémenter MongoDB en tant que royaume de Shiro ?

  2. Si possible, comment rédiger la configuration spécifique ? (Google a trouvé un code d'implémentation spécifique, mais les fichiers de configuration correspondants sont manquants)

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

répondre à tous(1)
刘奇

Merci pour l'invitation, il vous suffit d'implémenter votre propre Royaume, par exemple :

public class MyRealm extends AuthorizingRealm {

  // 认证
  @Override
  protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken token) throws AuthenticationException {

    // TODO 从数据库中获取用户信息, 从Mongo中查出来的
    return null;
  }

  // 授权
  @Override
  protected AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection principals) {

    // TODO 从数据库中获取授权信息, 从Mongo中查出来的
    return null;
  }
}

Ensuite, définissez votre propre Realm sur RealmSecurityManager, par exemple : Realm设置到RealmSecurityManager中, 比如:

DefaultWebSecurityManager securityManager = new DefaultWebSecurityManager();
securityManager.setRealm(new MyRealm());

然后把这个SecurityManager设置到ShiroFilter

ShiroFilterFactoryBean shiroFilterFactory = new ShiroFilterFactoryBean();
shiroFilterFactory.setSecurityManager(securityManager);
Ensuite, définissez simplement ce SecurityManager sur ShiroFilter, par exemple : 🎜 rrreee
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal