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

如何使用端口号保护web请求

向安福
2023-03-14

我怎么做?

共有1个答案

陶温书
2023-03-14

根据Spring Security文档,可以在intercept-url标记中使用requires-channel属性:

<http>
  <intercept-url pattern="/resource/**" access="ROLE_USER" requires-channel="https"/>
  <intercept-url pattern="otherresource" access="ROLE_USER" requires-channel="any"/>
  ...
</http>

您还可以注意到还有另一种方法(非Spring特定的),在web.xml中添加以下代码:

<security-constraint>
      <web-resource-collection>
        <web-resource-name>HTTPSOnly Resources</web-resource-name>
        <url-pattern>/resources*</url-pattern>
    </web-resource-collection> 
    <user-data-constraint>
        <transport-guarantee>CONFIDENTIAL</transport-guarantee>
    </user-data-constraint> 
</security-constraint>

这将自动将用户重定向到HTTPS(您需要配置服务器以支持HTTPS,但似乎您已经这样做了)

 类似资料:
  • 问题内容: 通常我跑步时总是得到这个输出,我确信每个人在跑步时都会得到。这不是全部输出,而是有关特定语句的。 正如标题所说的,我总是得到输出。如何确保端口ChromeDriver仅使用受保护的端口? 问题答案: 此信息消息… …是 ChromeDriver v2.46* 引发的错误的结果 * 分析 根据讨论,如果启用了详细日志记录,则2.46会生成意外的debug.log文件,在logging.c

  • 问题内容: 我的应用程序使用Express和AngularJS。我正在使用express通过静态处理角度代码的基本网络设置。角度代码使用的服务会影响express托管的API端点。我只希望用户经过身份验证后才能访问API端点。如何通过PassportJS完成此操作? 问题答案: 我已经在github上上传了一个Angular-Express 项目。 仍在进行中。希望对您有所帮助。 它使用Passp

  • 问题内容: 想象一下下一个场景:用户想要注册到网页并填写表格。当他填写表格时,jQuery会通过正则表达式检查字段是否有效等。 将电子邮件作为用户注册后将使用的主键,需要使用Ajax来检查电子邮件字段,以使用户知道该电子邮件是否已注册。我想使用Ajax进行检查,以避免发送完整的表单并清空它,刷新页面等。 因此,当用户结束填写电子邮件字段时,Ajax请求将发送到服务器,类似于下一个链接: 当chec

  • 提前,我为这个looong问题道歉!事实上,问题并没有那么长,但是我发布了很多我的代码片段,因为我真的不知道什么与解决我的问题相关或不相关...... 我一直在尝试使用以下内容制作一个简单的poc:-Angular 8前端-用于身份验证的Keycloak服务器-Spring云后端架构:-使用Spring Cloud Security保护的Spring Cloud Gateway-Spring Cl

  • 本文向大家介绍请问MySQL的端口号是多少,如何修改这个端口号相关面试题,主要包含被问及请问MySQL的端口号是多少,如何修改这个端口号时的应答技巧和注意事项,需要的朋友参考一下 参考回答: 查看端口号: 使用命令show global variables like 'port';查看端口号 ,mysql的默认端口是3306。(补充:sqlserver默认端口号为:1433;oracle默认端口号

  • 我读到,当使用JWT时,不需要防止CSRF攻击,例如:“由于您不依赖cookie,您不需要防止跨站点请求”。 但是,有一点我不明白:如果我将令牌存储在localStorage中(正如我在同一网站的教程中被告知的那样),那么攻击者如何防止通过读取我的localStorage而不是Cookie来伪造恶意请求呢? 由于它是在服务器端生成的,我不知道如何在客户机请求中使用令牌而不将其存储在客户机的某个地方