AEM实例中的Shiro.ini文件

时间:2016-02-03 06:55:54

标签: aem ini shiro

我用shiro创建了一个网络应用程序。现在我想用Shiro确保aem应用程序。我无法找到shiro.ini文件的放置位置以及如何设置EnvironmentLoaderListenerShiroFilter

我尝试了很多内容,例如在bundleContext方法中通过activate()获取ini文件

我想知道在哪里我必须在aem中执行shiro配置?

1 个答案:

答案 0 :(得分:0)

我把shiro文件放在资源文件夹中,然后在包中发送shiro ini文件,然后从包内取出:

我已经将servlet的bundleContext取为:

@Activate
public void activate(BundleContext bundleContext) throws IOException {
    this.bundleContext = bundleContext;
}

然后使用此bundleContext获取ini文件的URL

URL iniURL = bundleContext.getBundle().getEntry("shiro.ini");
Ini ini = new Ini();
ini.load(iniURL.openStream());
IniSecurityManagerFactory factory = new IniSecurityManagerFactory(ini);
securityManager = factory.getInstance();

这就是我得到securityManager的方式。 然后使用shiro api进一步登录和注销。