首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Java-webapp (war)中,如何对静态内容使用HTTP-auth?

在Java-webapp (war)中,如何对静态内容使用HTTP-auth?
EN

Stack Overflow用户
提问于 2009-05-05 14:33:32
回答 2查看 436关注 0票数 2

我有一个Java-webapp。webapp被打包成一个war文件。这些war文件允许通过HTTP直接传递的静态内容。在这场战争中,对于servlet,我可以进行HTTP身份验证(使用servlet本身实现它)。但是我也想要静态内容的HTTP-auth。我怎么才能意识到这一点呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-05-05 15:18:40

创建一个实现javax.servlet.Filter的类。请参阅The Essentials of Filters

main方法是传递给ServletRequest、ServletResponse和FilterChain对象的doFilter。这就是强制执行身份验证的地方。

然后在web.xml中声明过滤器,并如下所示声明过滤器映射(映射到每个请求)

代码语言:javascript
复制
    <filter>
            <filter-name>Authentication Filter</filter-name>
            <filter-class>
                    com.nfsdsystems.security.filters.AuthenticationFilter</filter-class>
    </filter>
    <filter-mapping>
            <filter-name>Authentication Filter</filter-name>
            <url-pattern>/*</url-pattern>
    </filter-mapping>
票数 2
EN

Stack Overflow用户

发布于 2009-05-05 16:04:30

将静态html文件放在目录中,并在web.xml中定义安全约束。将约束映射到适当的角色。

代码语言:javascript
复制
<security-constraint>
        <display-name>securedResources</display-name>
        <web-resource-collection>
            <web-resource-name>securedRes</web-resource-name>
            <url-pattern>/secured/*</url-pattern>
            <http-method>GET</http-method>
            <http-method>PUT</http-method>
            <http-method>HEAD</http-method>
            <http-method>TRACE</http-method>
            <http-method>POST</http-method>
            <http-method>DELETE</http-method>
            <http-method>OPTIONS</http-method>
        </web-resource-collection>
        <auth-constraint>
            <description>
            authenticatedUser_securedRes</description>
            <role-name>authenticatedUsed</role-name>
        </auth-constraint>
    </security-constraint>
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/825142

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档