gpt4 book ai didi

java - 使用 Jersey 2 实现 Rest api 的基本身份验证

转载 作者:行者123 更新时间:2023-11-30 03:32:52 25 4
gpt4 key购买 nike

我使用Jersey 2公开了一些休息API (Tomcat服务器)并成功实现Basic authentication (只需要身份验证,不需要授权)使用 ContainerRequestFilter过滤如下

public class AuthFilter implements ContainerRequestFilter{

@Context
HttpServletRequest request;

@Override
public void filter(ContainerRequestContext context) {
............................
//getting username/password authorization header and validating

当我告诉我的领导同样的事情时,他说不要使用过滤器,因为每次你的其余 api 被点击时,这个过滤器都会被调用。因此,在容器级别实现基本的身份验证安全性。我正在使用 Tomcat 服务器。在 web.xml ,这是定义的

<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>

他指的是上面的内容吗?谁能指导我如何实现我的领导所说的方式?

最佳答案

documentation gives you examples关于如何通过 web.xml 进行配置。您需要使用 login-config 进行配置那属于一个境界。然后,Web 容器负责根据 URL 模式保护资源。

  • 请注意,数据是通过 HTTP header 以纯文本(以编码形式)发送的,因此您需要想办法确保数据不被窥探(如 HTTPS)。
  • 无论您在过滤器还是在容器上检查此 header ,都不会减轻您进行检查所需的开销(这可能可以忽略不计,但我从未分析过代码的此区域以引用数字)。

关于java - 使用 Jersey 2 实现 Rest api 的基本身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28599260/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com