jBoss CORS 支持,但有安全限制

2024-01-21

我正在使用网络常见的安全约束向我的 API 添加身份验证,但它似乎破坏了我的 CORS 过滤器。我之前只使用过过滤器,没有应用程序服务器级别的身份验证。

基本思想是要求对除 /rest/account 端点下的请求之外的所有请求进行身份验证,因为这些请求是处理初始登录的请求,因此需要可公开访问。

在尝试登录时,当 OPTIONS 调用作为 POST 请求的一部分进行时,在 Chrome 和 Postman 中进行的测试都会返回 405 Method not allowed 响应。

希望我已经提供了下面的所有相关内容,但如果还需要任何其他信息,请告诉我。提前致谢!

我的 CORS 过滤器

<filter>
    <filter-name>CORS</filter-name>
    <filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class>
    <init-param>
        <param-name>cors.supportedMethods</param-name>
        <param-value>*</param-value>
    </init-param>
    <init-param>
        <param-name>cors.supportedHeaders</param-name>
        <param-value>*</param-value>
    </init-param>
    <init-param>
        <param-name>cors.allowOrigin</param-name>
        <param-value>*</param-value>
    </init-param>
    <init-param>
        <param-name>cors.allowSubdomains</param-name>
        <param-value>true</param-value>
    </init-param>
    <init-param>
        <param-name>cors.supportsCredentials</param-name>
        <param-value>true</param-value>
    </init-param>
</filter>
<filter-mapping>
    <filter-name>CORS</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

我的安全限制

<security-constraint>
    <display-name>WebsiteUsers</display-name>
    <web-resource-collection>
        <web-resource-name>WebsiteAPI</web-resource-name>
        <description/>
        <url-pattern>/rest/*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
        <description>Standard User authentication</description>
        <role-name>Users</role-name>
    </auth-constraint>
</security-constraint>

<security-constraint>
    <web-resource-collection>
        <web-resource-name>Public</web-resource-name>
        <description>Matches a few special endpoints</description>
        <url-pattern>/rest/account/*</url-pattern>
    </web-resource-collection>
    <!-- No auth-constraint means everybody has access! -->
</security-constraint>

尝试添加<http-method-omission>OPTIONS</http-method-omission>给受保护的<web-resource-collection>。 这应该允许OPTIONS请求发送到您的 CORS 过滤器(然后会发回正确的Access-Control-Allow-Methods响应头)。

See https://docs.oracle.com/cd/E19798-01/821-1841/bncbk/index.html https://docs.oracle.com/cd/E19798-01/821-1841/bncbk/index.html

或者(如果您需要支持 servlet 规范 GET, POST, DELETE, PUT等 - 除外OPTIONS) - 使用<http-method>

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

jBoss CORS 支持,但有安全限制 的相关文章

随机推荐

  • Python 中如何处理 POST 和 GET 变量?

    在 PHP 中你可以只使用 POST对于 POST 和 GET用于 GET 查询字符串 变量 Python 中的等价物是什么 假设您要发布一个 html 表单
  • 单击选项时使用 selenium 抓取 HTML [关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 我有一个脚本 我用它来使用硒从网站上抓取数据 Sub Body Building Dim driver As New W
  • 使用 ifelse 函数返回 null

    我试图在 R 中使用 ifelse 返回 null 但它会抛出错误消息 任何建议请 这是我的代码 cntr1 lt ifelse unlist gregexpr path info j fixed TRUE useBytes TRUE gt
  • 找不到用于注册我的设备的 Chromecast 序列号

    我正在尝试注册我的 chromecast 设备以进行开发在控制台上 https cast google com publish overview遵循本指南 https developers google com cast docs regi
  • 如何减少大型模板的编译时内存占用?

    假设我有一个类 其中包含large其他类声明的数量 是否有可能以某种方式分散这些成本 以便嵌套类型的编译时内存消耗不会呈二次方增长 如果需要的话 我愿意减少编译时间 并且如果可以选择的话 我很乐意将其划分为不同的翻译单元 为了尝试找到解决方
  • 如何自动滚动到 RichEdit 的末尾?

    我以前从来不需要使用TRichEdit 总是使用TMemo 当我添加像 TMemo 这样的文本时 我希望 RichEdit 自动滚动到最后 看看添加一些数据后的样子 如您所见 滚动条保留在顶部 但我希望在添加文本时它保留在底部 我已经 搜索
  • 如何在Android上实现嵌套的主细节流程?

    我有一个列表 列表中 列表中等等 大概有5层吧 在手机上为每个列表创建 5 个活动很容易 但如果我也想支持平板电脑怎么办 所以我需要使用主细节流程 但是 我似乎找不到与嵌套主详细信息流程相关的任何教程或信息 不管怎样 这是我所描述内容的一个
  • HTTPClient 无法在 https 和 http 之间建立路由

    我正在通过混合使用 http 和 https 链接来测试 HttpClient 4 2 HttpClient 似乎从第一次调用开始就坚持使用协议 如果第一个调用是 http 则所有后续 https 调用都会失败 但 http 调用正常 反之
  • 为什么测试中的辅助文件来源两次

    在测试中使用 uuid 时我遇到了麻烦 因为辅助文件的来源两次 为什么会发生这种情况 有没有办法避免二次采购 对于可重现的示例 只需创建一个新包 将一个名为 helper data R 的文件放入 tests testhat 中 并包含以下
  • 如何在 linq 中按属性值对 XML 文档进行排序?

    我尝试按属性值对 xml 文件进行排序 但没有成功 data Descendants person OrderBy x gt x Attribute id Value 数据包含
  • 如何在构建时链接 docker 容器?

    我将我的应用程序容器链接到 postgresrun docker run link postgres postgres someproject develop 效果很好 但我意识到我之前需要使用 django 命令将一些东西安装到数据库中r
  • Rails 如何在 HABTM 模型控制器中编写“创建”操作

    我对 Rails 比较陌生 并且在尝试使用它们之间具有 HABTM 关联的模型时遇到了巨大的困难 这些是我的模型 挑战 rb class Challenge lt ActiveRecord Base has and belongs to m
  • 缩放图像以适合 A4 页面 - Migradoc

    我真的很难做到这一点 任何帮助将不胜感激 我有一系列图像 想要使用 MigraDoc 将其构建到 PDF 中 1 个图像 1 页 每个图像必须显示在单独的页面上 但不得超出页面 它必须完美地适合页面 那么 如何使用 MigraDoc 缩放图
  • 具有水平列的 DataGridView

    DataGridView 中是否可以有水平列 并且能够绑定这些列 您不必翻转 DataGridView翻转DataSet进行绑定 尝试这个 public DataSet FlipDataSet DataSet my DataSet Data
  • Common Lisp 循环

    在下面的循环中 let funs loop for i upto 3 do print i collect lambda i loop for fun in funs collect funcall fun 我直觉地认为我会得到一个包含四个
  • 通过 TFS 2015 部署 ASP.NET 5 (vNext)

    我们正在尝试使用新的工具链来构建 ASP NET 5 vNext CoreCLR 网站并将其部署到服务器集群 在新的编译更改和 TFS 更改之间 我不确定现在如何构建和部署所有内容 场景如下 用于源代码控制和构建代理的本地 TFS 以 Co
  • Elasticsearch,嵌套对象的存在过滤器不起作用

    我的映射是 properties user type nested properties id type integer is active type boolean null value false username type strin
  • 使用 Pow 运行 Rails 应用程序时,似乎无法从我的 iPhone 访问 .xip.io URL

    我尝试从 iPhone 5 访问使用 Pow 4 3 运行的 Rails 应用程序 但遇到了问题 如果我输入my app 192 168 2 11 xip io 它在我的开发机器上运行正常 即带有192 168 2 11局域网地址 在我的
  • getDrawable 返回 null

    因为我已经解决了关于这个问题的最后一个问题 因为我发布了与这个问题不同的代码 所以我将用正确的代码再次尝试 所以事情是这样的 我一直在使用适用于 Android 的 GoogleMaps API 运行一些测试 当我尝试使用我的一张图像在地图
  • jBoss CORS 支持,但有安全限制

    我正在使用网络常见的安全约束向我的 API 添加身份验证 但它似乎破坏了我的 CORS 过滤器 我之前只使用过过滤器 没有应用程序服务器级别的身份验证 基本思想是要求对除 rest account 端点下的请求之外的所有请求进行身份验证 因