Websphere:不强制执行 web.xml 中的安全约束

2023-12-15

我正在尝试在我支持的非常旧的 J2EE 应用程序上启用 SSL。该应用程序在 WebSpehre 6.1 中运行。我已在运行应用程序的 WAS 配置文件中启用应用程序安全性,但下面的 web.xml 配置仍然允许用户使用 HTTP 或 HTTPS 访问站点。

我尝试了几种不同的 url 模式,但似乎都不起作用:

/*
/jsp/*
/gatewayRMIWEB/*

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app id="WebApp">
    <display-name>gatewayRMIWEB</display-name>
    <filter>
        <filter-name>LoginFilter</filter-name>
        <display-name>LoginFilter</display-name>
        <filter-class>com.dc.gateway.servlet.LoginFilter</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>LoginFilter</filter-name>
        <url-pattern>/jsp/*</url-pattern>
    </filter-mapping>
    <servlet>
        <servlet-name>GatewayClient</servlet-name>
        <display-name>GatewayClient</display-name>
        <servlet-class>com.dc.gateway.servlet.GatewayClient</servlet-class>
        <init-param>
            <param-name>log4j-init-file</param-name>
            <param-value>/WEB-INF/logger.lcf</param-value>
        </init-param>
    </servlet>
    <servlet>
        <servlet-name>SecurityCheck</servlet-name>
        <display-name>SecurityCheck</display-name>
        <servlet-class>com.dc.gateway.servlet.SecurityCheck</servlet-class>
    </servlet>
    <servlet>
        <servlet-name>Logoff</servlet-name>
        <display-name>Logoff</display-name>
        <servlet-class>com.dc.gateway.servlet.Logoff</servlet-class>
    </servlet>
    <servlet>
        <servlet-name>Settings</servlet-name>
        <display-name>Settings</display-name>
        <servlet-class>com.dc.gateway.servlet.Settings</servlet-class>
    </servlet>
    <servlet>
        <servlet-name>changepassword</servlet-name>
        <display-name>changepassword</display-name>
        <servlet-class>com.dc.gateway.servlet.changepassword</servlet-class>
    </servlet>
    <servlet>
        <servlet-name>subdetailupdate</servlet-name>
        <display-name>subdetailupdate</display-name>
        <servlet-class>com.dc.gateway.servlet.subdetailupdate</servlet-class>
    </servlet>
    <servlet>
        <servlet-name>subscriberdelete</servlet-name>
        <display-name>subscriberdelete</display-name>
        <servlet-class>com.dc.gateway.servlet.subscriberdelete</servlet-class>
    </servlet>
    <servlet>
        <servlet-name>subscriberdetailedit</servlet-name>
        <display-name>subscriberdetailedit</display-name>
        <servlet-class>com.dc.gateway.servlet.subscriberdetailedit</servlet-class>
    </servlet>
    <servlet>
        <servlet-name>subscriberedit</servlet-name>
        <display-name>subscriberedit</display-name>
        <servlet-class>com.dc.gateway.servlet.subscriberedit</servlet-class>
    </servlet>
    <servlet>
        <servlet-name>subscribernew</servlet-name>
        <display-name>subscribernew</display-name>
        <servlet-class>com.dc.gateway.servlet.subscribernew</servlet-class>
    </servlet>
    <servlet>
        <servlet-name>TrnlogPurge</servlet-name>
        <display-name>TrnlogPurge</display-name>
        <servlet-class>com.dc.gateway.servlet.TrnlogPurge</servlet-class>
    </servlet>
    <servlet>
        <servlet-name>As400Pool</servlet-name>
        <display-name>As400Pool</display-name>
        <servlet-class>com.dc.gateway.servlet.As400Pool</servlet-class>
    </servlet>
    <servlet>
        <servlet-name>Resubmit</servlet-name>
        <display-name>Resubmit</display-name>
        <servlet-class>com.dc.gateway.servlet.Resubmit</servlet-class>
    </servlet>
    <servlet>
        <servlet-name>SearchPrepare</servlet-name>
        <display-name>SearchPrepare</display-name>
        <servlet-class>com.dc.gateway.servlet.SearchPrepare</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>GatewayClient</servlet-name>
        <url-pattern>/GatewayClient</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>SecurityCheck</servlet-name>
        <url-pattern>/SecurityCheck</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>Logoff</servlet-name>
        <url-pattern>/Logoff</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>Settings</servlet-name>
        <url-pattern>/Settings</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>changepassword</servlet-name>
        <url-pattern>/changepassword</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>subdetailupdate</servlet-name>
        <url-pattern>/subdetailupdate</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>subscriberdelete</servlet-name>
        <url-pattern>/subscriberdelete</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>subscriberdetailedit</servlet-name>
        <url-pattern>/subscriberdetailedit</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>subscriberedit</servlet-name>
        <url-pattern>/subscriberedit</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>subscribernew</servlet-name>
        <url-pattern>/subscribernew</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>TrnlogPurge</servlet-name>
        <url-pattern>/TrnlogPurge</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>As400Pool</servlet-name>
        <url-pattern>/As400Pool</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>Resubmit</servlet-name>
        <url-pattern>/Resubmit</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>SearchPrepare</servlet-name>
        <url-pattern>/SearchPrepare</url-pattern>
    </servlet-mapping>
    <welcome-file-list>
        <welcome-file>jsp/login.jsp</welcome-file>
    </welcome-file-list>
    <resource-ref id="ResourceRef_1084824065465">
        <res-ref-name>jdbc/cg</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    <env-entry>
        <description>soft-coded datasource jndi name</description>
        <env-entry-name>datasource-jndi-cms</env-entry-name>
        <env-entry-value>jdbc/cg</env-entry-value>
        <env-entry-type>java.lang.String</env-entry-type>
    </env-entry>
    <env-entry>
        <description>soft-coded datasource jndi name</description>
        <env-entry-name>datasource-jndi-erp</env-entry-name>
        <env-entry-value>jdbc/erp</env-entry-value>
        <env-entry-type>java.lang.String</env-entry-type>
    </env-entry>

    <security-constraint>
        <display-name>gatewayRMIWEB</display-name>
    <web-resource-collection>
        <web-resource-name>allresources</web-resource-name>
        <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <user-data-constraint>
        <transport-guarantee>CONFIDENTIAL</transport-guarantee>
    </user-data-constraint>
    </security-constraint>
</web-app>

如果您想保护整个应用程序,以下模式应该可以解决问题:

<url-pattern>/*</url-pattern>

至少这在我的 8.5.5 上有效

<security-constraint>
    <display-name>allApp</display-name>
    <web-resource-collection>
        <web-resource-name>allresources</web-resource-name>
        <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <user-data-constraint>
        <transport-guarantee>CONFIDENTIAL</transport-guarantee>
    </user-data-constraint>
</security-constraint>

启用应用程序安全后是否重新启动服务器?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Websphere:不强制执行 web.xml 中的安全约束 的相关文章

  • ProGuard 可以与 JavaEE 6 应用程序一起使用吗?

    我试图让 Proguard 混淆一个简单的 war 文件 根据文档 Proguard 处理 war 文件 但是当我尝试时我得到这个 Warning class WEB INF classes com corp gr t2b T2BChann
  • GWT - 如何组织项目以拥有多个网页以及它们之间的导航

    我是 GET 的新手 顺便说一句 它给我留下了深刻的印象 并且发现它对于像我这样熟悉 C NET 桌面技术并愿意编写 Web 应用程序的人来说非常有吸引力 我根据 GWT Eclipse 向导生成的示例启动了自己的项目 该项目生成带有面板的
  • 在 Wildfly 中与 war 部署共享 util jar 文件

    假设我有一个名为 util jar 的 jar 文件 该 jar 文件主要包含 JPA 实体和一些 util 类 无 EJB 如何使这个 jar 可用于 Wildfly 中部署的所有 war 无需将 jar 放置在 war 的 WEB IN
  • java异常处理策略[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 生成的序列以 1 开头,而不是注释中设置的 1000

    我想请求一些有关 Hibernate 创建的数据库序列的帮助 我有这个注释 下面的代码 在我的实体类中 以便为合作伙伴表提供单独的序列 我希望序列以 1000 开头 因为我在部署期间使用 import sql 将测试数据插入数据库 并且我希
  • 如何在远程 WebSphere 上进行 JNDI 查找期间解决 sun/io/MalformedInputException

    我使用 WebSphere 8 5 来托管我的应用程序 并在应用程序服务器上配置了一些 JDBC 资源 我还使用瘦客户端运行时库开发了一个客户端应用程序 当按以下方式执行 JNDI 查找时 env put Context INITIAL C
  • 如何拦截 REST 端点以接收所有标头?

    我当前的代码是 Path login RequestScoped public class LoginResource GET SecurityChecked public Response getUser HeaderParam AUTH
  • 开始 Java EE

    我对 Java 了解一些 但对 Enterprise Java 完全陌生 我正在尝试使用 NetBeans 6 1 和 GlassFish 应用服务器 请指导我一些资源 这些资源实际上告诉我什么是 java 企业应用程序 它们与普通 jav
  • CWWIM4537E 从主体名称 Websphere 中找不到主体

    我努力解决 找不到校长 问题 我阅读了所有文章 但我已成功将ear 文件安装到WAS 8 5 中 此应用程序需要最终用户进行 LDAP 身份验证才能登录 我的 LDAP 用户 ID 是正确的 因为我可以通过另一个部署了相同ear文件的开发环
  • 删除向导请求响应日志记录

    我想将 dropwizard 中的每个请求和响应记录到不同的文件中 例如我希望所有请求都被登录 var log applicationname request log以及所有回复 var log applicationname respon
  • 如何使用 Maven 构建带有 EJB 和 WAR 的 EAR 项目?

    我尝试使用 EJB 和 WAR 创建 EAR 项目 但遇到一些问题 我从创建了主项目Java EE 6 EAR 原型 https mvnrepository com artifact org codehaus mojo archetypes
  • Tomcat 基于表单的身份验证出现 HTTP 状态 408 错误

    我的申请是写在JSP并且有基于表单的身份验证 我正在使用 Apache 和 Tomcat 7 这是我的问题 有时 当会话超时并尝试重新登录应用程序时 它会显示以下 408 错误消息 HTTP 状态 408 已超出登录过程允许的时间 如果您想
  • JSF 错误 - IllegalStateException:PWC3999:提交响应后无法创建会话[重复]

    这个问题在这里已经有答案了 我是 JSF 新手 正在构建一个使用 Facelet 创建的应用程序 这是我的模板master xhtml
  • 在 Eclipse 的包资源管理器中突出显示类文件

    我为eclipse开发了一个插件 可以在项目的弹出菜单中添加一个选项 此选项将按名称搜索类 然后它应该在包资源管理器中突出显示该类 我对突出显示部分有疑问 我在文件夹中搜索类 所以我有类路径 但我不知道如何突出显示它 我尝试了这个 但没有得
  • 如何使用Java通过MM7发送彩信?

    请告诉我有没有办法在Java中使用MM7协议发送彩信 如果有免费的 API 来生成适当的 SOAP 消息 也请告诉我 我陷入了困境 我真的需要一种方法来做到这一点 也欢迎您提出明智的建议 预先感谢 MMS Soap 应该如下所示 3GPP
  • 升级到 Netbeans 8.0.1 和 Glassfish 4,1 后包不存在

    我正在学习 JavaEE CDI 并使用 NetBeans 8 0 Glassfish 4 创建了一个小型应用程序 升级到 NetBeans 8 0 1 和 Glassfish 4 1 后 我收到很多错误报告 指出某些包不存在 例如 我无法
  • Web应用程序web.xml错误[重复]

    这个问题在这里已经有答案了 我在 Eclipse 中开发的 GWT 应用程序中遇到错误 它位于web xml文件 这是错误 The content of element type web app must match icon displa
  • JBoss 7 中带有 HornetQ 的 JMS 队列的“持久”属性是什么意思?

    在使用 HornetQ 基于standalone full xml 配置 的 JBoss 7 上配置 JMS 队列期间 我注意到一个属性 持久 我浏览了几个来源 其中许多都表示队列始终是 持久的 这意味着消息将始终被传递 即使潜在的接收者在
  • 在 JBoss 上热部署 - 如何让 JBoss “看到”更改?

    我正在开发一个 Java EE 应用程序 在开发过程中我会在本地 JBoss 安装上反复部署该应用程序 我想通过将应用程序直接热部署到 JBOSS server default deploy myApp 来加速构建 它似乎有效 但在硬部署和
  • 在哪里可以找到适用于 Windows 的 IBM JDK/JRE 的特定版本?

    我正在尝试让一个对 JDK 相当敏感的 Oracle 软件与 Websphere 一起使用 并且我需要找到一些特定版本的 IBM JDK 来尝试 问题是 IBM 并没有像 Sun Oracle 那样真正提供这些功能 而且我得到的所有版本都因

随机推荐

  • 如何在 git diff 输出中正确显示重音

    当我运行 git diff 命令时 文件列表中所有带有重音符号的文件显示效果不佳 git diff name status xxxx yyyyyy return M 303 251 303 251 txt 我怎样才能保留口音来拥有这个 M
  • 函数结构不遵循的问题(PHP)

  • 带有消息“无法将类型(字符串)的变体转换为类型(双精度)的 EVariantTypeCastError 类”

    使用 Delphi 和 FastReport 在 Delphi 内调试时 紧接此行之后 我收到此错误消息
  • 在 Android 应用程序中解压 SD 卡上的压缩文件

    我有一个压缩密码保护的视频文件保存在 Android 模拟器的 SD 卡上 现在我想通过代码将该视频文件解压到SD卡上 我怎样才能做到这一点 有什么帮助或代码吗 提前致谢 import android util Log import jav
  • 如何在 Swift 3 中转置数组长度不等的矩阵

    我的数组是 Int 类型 array 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 我希望转置结果为 array 1 4 7 11 14 2 5 8 12 15 3 6 9 13 16 0 0 10 0 0
  • X-Frame-Options 标头在防止恶意框架方面有多有用?

    添加X Frame Options DENY响应标头有助于防止网页的恶意框架 作为一种解决方案 它肯定比客户端 JavaScript 解决方案更好 但它到底有多有用呢 所有 现代 浏览器都支持它 意图劫持您网站的黑客是否可以绕过它 埃里克
  • 更改网址而不刷新?

    我在互联网上发现了一个应用程序 当您单击其中的 A 链接时 它将重定向到 A 页面 而无需刷新整个位置并更改 url 地址栏 我知道这可能是因为 JQuery 可以访问客户端浏览器 Please帮我解决这个问题 使用历史API你可以做这样的
  • IE 浏览器中的 CSS 媒体查询支持

    请帮助我如何使用 IE 浏览器的媒体查询 我遇到过一个 jquery 库 http plugins jquery com project MediaQueries但我无法下载这个库 我建议不要使用 javascript 来模拟媒体查询 设置
  • 如何使用 django 将进程置于后台?

    我尝试了 os system os spwanl 等 但效果不佳 我需要从 django 应用程序执行一些后台进程 尝试使用celery 它最初就是为此目的而创建的 并且还支持调度任务
  • JS:导出 Array.prototype

    如果我想向 JavaScript 添加原型Array 有没有办法导出它 以便我可以将所有原型方法放入一个文件中 例如modules prototypes js 可不可能是export Array 或者我会在设置原型之前添加导出吗 如果你的代
  • iOS - 本地通知 - 自定义振动或振动时间更长

    我正在尝试构建一个像闹钟一样工作的 iPhone 应用程序 我正在使用 UILocalNotification Problem 我希望手机振动时间更长一些 但目前它仅振动一次 替代方法 是否可以使用自定义振动模式 http www pcwo
  • 在 bash 中将带有分号 (';') 的值赋给变量

    我试图用 sed 在 unix shell bash 上的字符串中转义 分号 当我直接执行而不将值分配给变量时它会起作用 那是 echo hello sed s 1 g hello 但是 当将上述命令分配给变量时 它似乎不起作用 resul
  • 将插入符号/光标位置设置为字符串值 WPF 文本框的末尾

    我尝试将插入符 光标位置设置为end当我第一次打开窗口时 WPF 文本框中的字符串值 当窗口打开时 我使用 FocusManager 将焦点设置在文本框上 似乎没什么作用 有任何想法吗 请注意 我使用的是 MVVM 模式 并且我的代码中仅包
  • Struts2 中的 NoSuchMethodException

    我有出生日期的文本字段 当用户输入无效日期 例如字符串 时 错误消息成功显示为 fielderror 但在我的控制台中 我收到此错误 java lang NoSuchMethodException Profile setBirthDate
  • jquery ajax 单击时调用,仅有效一次

    我有这个简单的 jquery 代码 单击时 它会获取标签的 URL 加载当前内容旁边的页面 滑动它并删除旧内容 页面的状态与以前完全相同 相同的元素没有额外的类或样式 问题是下一个 ajax 调用不起作用 也许我需要 unbind 一些东西
  • 反应点击处理程序并绑定它

    我有一个反应组件 我在其中迭代列表并创建行 每行都有一个删除按钮 单击删除按钮时 我想传递对该行中元素的引用 var TagTable React createClass onTagDelete function tagName this
  • 将空白节点添加到 Jena 模型

    我正在尝试使用一组现有的三元组填充耶拿本体模型 其中一些包含空白节点 我想忠实地维护这个新模型中的这些空白节点 但我无法找到将它们添加到耶拿模型中的方法 我一直在使用 Statement s ResourceFactory createSt
  • 多个 UIAlertView 问题

    我的代码有问题 我有两个 UIAlertView 代码块 一个带有取消和确定按钮 另一个用于制作 ImagePicker IBAction publicaPeticion if txtPeticion hasText UIAlertView
  • 为什么我在C#中无法设置这个ACL规则?

    我的 C 应用程序在 Vista SP1 上以提升的管理员身份运行 尝试使用以下代码设置以下规则 不会产生任何错误 但目录的 ACL 也不会发生任何更改 我缺少什么 public static void Main string args s
  • Websphere:不强制执行 web.xml 中的安全约束

    我正在尝试在我支持的非常旧的 J2EE 应用程序上启用 SSL 该应用程序在 WebSpehre 6 1 中运行 我已在运行应用程序的 WAS 配置文件中启用应用程序安全性 但下面的 web xml 配置仍然允许用户使用 HTTP 或 HT