Adakah mungkin untuk melaksanakan MongoDB sebagai alam Shiro?
大家讲道理
大家讲道理 2017-05-17 09:58:54
0
1
589

Keperluan saya ialah membaca maklumat pengguna dan kebenaran daripada pangkalan data untuk melengkapkan pengesahan dan kebenaran. Shiro menyediakan pelaksanaan JdbcRealm, tetapi tiada pelaksanaan alam MongoDB.
Boleh saya tolong:

  1. Melaksanakan MongoDB sebagai alam Shiro?

  2. Jika boleh, bagaimana untuk menulis konfigurasi khusus? (Google menemui kod pelaksanaan tertentu, tetapi fail konfigurasi yang berkaitan tiada)

大家讲道理
大家讲道理

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

membalas semua(1)
刘奇

Terima kasih atas jemputan, anda hanya perlu melaksanakan Alam anda sendiri, contohnya:

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;
  }
}

Kemudian tetapkan Realm anda sendiri kepada RealmSecurityManager, sebagai contoh: Realm设置到RealmSecurityManager中, 比如:

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

然后把这个SecurityManager设置到ShiroFilter

ShiroFilterFactoryBean shiroFilterFactory = new ShiroFilterFactoryBean();
shiroFilterFactory.setSecurityManager(securityManager);
Kemudian hanya tetapkan SecurityManager ini kepada ShiroFilter, sebagai contoh: 🎜 rrreee
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan