【问题标题】:Shiro.ini file configuration but in Java class?Shiro.ini 文件配置但在 Java 类中?
【发布时间】:2015-01-30 09:38:56
【问题描述】:

我想知道是否可以在没有 shiro.ini 文件的情况下配置 Shiro,我的意思是,如果我需要在 Java 类中硬编码 Shiro 配置,而不是使用 INI 文件,该怎么办?

【问题讨论】:

    标签: java shiro


    【解决方案1】:

    是的,你可以通过

    ServletContextHandler context = new ServletContextHandler( ServletContextHandler.SESSIONS );
    context.setContextPath( "/" );
    context.addEventListener( new EnvironmentLoaderListener() );
    
    // Add root ShiroFilter, all remaining filters and filter chains are defined in shiro.ini's [urls] section.
    FilterHolder filterHolder = new FilterHolder( new ShiroFilter() );
    ServletHolder servletHolder = new ServletHolder( new MockServlet() );
    
    EnumSet<DispatcherType> types = EnumSet.allOf( DispatcherType.class );
    context.addFilter( filterHolder, "/*", types );
    context.addFilter( new FilterHolder( new TestFilter() ), "/*", types );
    context.addServlet( servletHolder, "/*" );
    

    对于 shiro.ini 文件,请参考this doc:

    【讨论】:

      【解决方案2】:

      Credentials Matching

      或使用 jdbc 自定义领域here

      【讨论】:

        【解决方案3】:

        是的,这是可能的。文档说明了如何做到这一点:

        http://shiro.apache.org/configuration.html#Configuration-ProgrammaticConfiguration

        【讨论】:

          猜你喜欢
          • 2016-04-10
          • 2014-01-04
          • 2017-11-27
          • 2013-12-28
          • 1970-01-01
          • 2012-03-13
          • 1970-01-01
          • 2011-12-23
          相关资源
          最近更新 更多