当前位置: 首页 > 知识库问答 >
问题:

Servlet访问过滤器和角色

司徒良哲
2023-03-14

我正在使用Servlet过滤器来实施访问控制。扩展it以测试用户角色的最佳方式是什么?我能想出几种解决方案,但没有一种是优雅的。

编写角色测试并不难。但是如何将角色传递给给定url的过滤器?

e、 在网络上。xml

<filter>
    <filter-name>accessControl</filter-name>
    <filter-class>filter.AccessControlFilter</filter-class>
    <init-param>
        <param-name>loginPage</param-name>
        <param-value>/login/login.jsp</param-value>
    </init-param>
</filter>
<filter-mapping>
    <filter-name>accessControl</filter-name>
    <url-pattern>/admin/*</url-pattern>
</filter-mapping>
<filter-mapping>
    <filter-name>accessControl</filter-name>
    <url-pattern>/domain/*</url-pattern>
</filter-mapping>

谢谢

共有1个答案

仇建茗
2023-03-14

这就是为什么当有可用的标准和实现这些标准的框架大量可用时,总是建议不要定制授权。

我最喜欢的是Spring Security。看看这个教程,这应该会让你朝着正确的方向前进

  • 一大堆Spring安全教程
  • Spring Security性——使用角色的访问限制

另一个广泛使用的替代品,但没有Spring那么优雅和简单

贾斯

 类似资料:
  • 问题内容: Servlet和Filter有什么区别?您建议使用什么来授权页面? 问题答案: 当你要根据特定条件过滤和/或修改请求时,请使用。使用时要控制,预处理和/或后处理请求。 在Java EE的教程中提到有关筛选如下: 筛选器是可以转换请求或响应的标头和内容(或两者)的对象。过滤器与Web组件的不同之处在于,过滤器本身通常不会创建响应。相反,过滤器提供的功能可以“附加”到任何类型的Web资源。

  • Servlet 过滤器可以动态地拦截请求和响应,以变换或使用包含在请求或响应中的信息。 可以将一个或多个 Servlet 过滤器附加到一个 Servlet 或一组 Servlet。Servlet 过滤器也可以附加到 JavaServer Pages (JSP) 文件和 HTML 页面。调用 Servlet 前调用所有附加的 Servlet 过滤器。 Servlet 过滤器是可用于 Servlet

  • 问题内容: 现在可以将Spring中的 s配置为仅使用来在某些URL上调用。 Servlet过滤器可以实现相同的功能(日志记录,安全性等)。那么应该使用哪一个呢? 我认为使用Interceptor,可以使用对象与模型一起使用,因此它具有更多的优势。谁能提出过滤器或拦截器比其他方法更具优势的方案? 问题答案: 该接口的JavaDoc本身有两个段落讨论这个问题: HandlerInterceptor基

  • 使用glTexParamteri配置OpenGL时(GL_Texture_2D、GL_Texture_MAG_FILTER等)和glTexParamteri(GL_纹理_2D,GL_纹理_MIN_过滤器,…)在使用纹理(…)访问着色器中的纹理时,OpenGL如何决定使用哪个过滤器? 我唯一的猜测是它正在计算像素足迹,但由于您可以在片段或顶点着色器中访问纹理,它无法知道在哪个基元上投影了什么纹理。

  • 在Jersey中,可以添加或 两者都是使用PackagesResourceConfig添加的: 谢谢

  • 大家好,我正在开发一个web应用程序,在调用web中提到的Servelet时遇到了问题。xml。 这是我的web.xml 问题是,当我试图运行我的应用程序时,我希望先运行身份验证过滤器,然后再运行文件Servelet。现在发生的事情与我想要的正好相反。我也尝试过使用0作为文件Servelet,但没有帮助。下面提到的是我的过滤器类代码。 下面是我的Servlet部分代码: 下面是我在应用程序日志中获