问题描述
我在 AEM 中有一个过滤器 servlet,用于网站上的自定义身份验证和重定向处理。
目前,所有特定于用户的页面都从 AEM 中的发布实例获取,并且这些页面上未启用缓存。因此,我的强制登录方案有效。
如果我想使用调度程序为这些页面提供服务,则不会触发过滤器 Servlet,即使用户因详细信息损坏/丢失而注销,也可以访问这些页面。我们可以在调度程序中添加任何配置以允许过滤器 servlet 甚至在调度程序缓存的页面上吗?
解决方法
如果您希望在让 AEM 保持对哪些用户查看哪些资源的控制权的同时使用 Dispatcher,最自然的方法是通过在 Dispatcher 配置中配置 auth_checker
。它主要归结为定义 glob 模式以指示它哪些请求需要进行身份验证检查,哪些不需要,并指向处理授权的 servlet。