@EnableGlobalMethodSecurity 与 @EnableWebSecurity

2024-04-04

我正在使用 Spring 4 开发 REST API。我想使用 Spring Security 来保护一些端点,但根据我所读到的内容,可以使用以下任一方法来完成@EnableGlobalMethodSecurity or @EnableWebSecurity。不幸的是,我找到的这些文档并没有清楚地解释它们的作用(或它们如何比较)。如果我想通过基于标准关系数据库中声明的数据和关系的身份验证和授权来保护 Spring REST API,那么在 Spring 4 中实现此目的的推荐方法是什么?


EnableWebSecurity将通过提供配置Http安全 http://docs.spring.io/spring-security/site/docs/current/reference/htmlsingle/#jc-httpsecurity。这是您可以找到的配置<http></http>xml 配置中的标记,它允许您根据 url 模式、身份验证端点、处理程序等配置访问...

EnableGlobalMethodSecurity为方法提供 AOP 安全性。它提供的一些注释是PreAuthorize, PostAuthorize。它还支持JSR-250 http://en.wikipedia.org/wiki/JSR_250. 配置中还有更多参数供您选择 http://docs.spring.io/spring-security/site/docs/current/reference/htmlsingle/#method-security-expressions

根据您的需要,最好将两者混合使用。通过 REST,您只需使用即可实现您需要的一切@EnableWebSecurity since HttpSecurity#antMatchers(HttpMethod,String...)接受对 Http 方法的控制

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

@EnableGlobalMethodSecurity 与 @EnableWebSecurity 的相关文章

随机推荐

  • 如何使用Python获取请求中响应的原始内容?

    尝试获取HTTP响应内容的原始数据requests在Python中 我有兴趣通过另一个渠道转发响应 这意味着理想情况下内容应该尽可能原始 这样做的好方法是什么 After requests get 您可以使用r content提取原始字节类
  • 如何在今天的 v8 中包含另一个 js 文件?

    我找到了一个旧的答案和后来的更新here https stackoverflow com questions 1149340 how do you include another js file in googles v8 但是我很难将此代
  • GoJS中如何动态添加Node数据和Link数据?

    myDiagram model new go GraphLinksModel key Alpha color lightblue key Delta color pink from Alpha to Alpha from Delta to
  • PHPExcel 和文本换行

    我知道这行代码将使单元格文本换行 objPHPExcel gt getActiveSheet gt getStyle D1 gt getAlignment gt setWrapText true D1 是所选的单元格 有没有办法让整个 Ex
  • 将 void* 转换为二维数组

    我有一个 void 我正在进入某个函数 它实际上是一个二维 int 数组 我想将它作为参数发送给需要二维数组的函数 正确施放它的最佳方法是什么 void foo void val How to cast val in order to se
  • Android Compose 中的 TextField 与键盘重叠

    我有一个TextField在列中verticalScroll 添加大量字符时 文本字段大小超出键盘范围 我看不到正在输入的内容 我尝试使用this https google github io accompanist insets lib
  • 从 Android UI 抽象 Firebase

    我面临的问题是 当我们将 Firebase 与 Activity 或 Fragment 连接时 Firebase 作为实时数据库效果很好 但是尝试与视图元素分离并为其创建一些抽象 因为例如我们想在测试时或将来替换它 变得相当困难 尤其是尝试
  • 在 Python 中读取 JSON 对象时遇到问题

    我有一个 JSON 对象 我试图使用 Python 读取它 但遇到一些问题 我有一个名为 test txt 的文件 其中包含收到的 JSON 对象 test txt 的内容如下 Sections Now Thursday 3 Februar
  • 如果不分配给变量,为什么 Powershell Array of Array 显示不同的内容

    如果 cmdlet 返回数组的数组 例如 function test results New Object System Collections ArrayList array for idx 0 idx lt 3 idx obj New
  • AFHTTPClient.m 不再出现在 AFNetworking 中?

    我正在遵循教程 http bit ly 1dbLaPh http bit ly 1dbLaPh 使用 AFNetworking 它说要创建一个从 AFHTTPClient 派生的新类 这个选项没有出现在 SubClass Of 字段中 我检
  • 何时使用“raise_for_status”与“status_code”测试

    我一直用 r requests get url if r status code 200 my passing code else anything else if this even exists 现在我正在解决另一个问题并决定允许其他错
  • 出现异常:指定的网络名称不再可用。 (0x80070040)尝试使用 ReadToEndAsync() 读取 HttpRequest Body 时

    我有一个 API post Web 方法 尝试使用 StreamReader 获取请求正文ReadToEndAsync 大多数情况下它工作正常 但是对于非常随机的请求 我收到以下异常 客户端已断开连接 有内在的例外 指定的网络名称不再可用
  • Mat-accordion 不是已知元素

    我正在开发一个 angular10 应用程序 我尝试在我的项目中使用 mat accordion 每个组件使用模块 每个组件都有自己的 module ts 文件 下面是我的模块文件代码 import NgModule from angula
  • 根据 hcharter 中给定的序列设置热图颜色范围

    在这里我尝试使用创建热图highcharter hcharter where 小于 1应该是一种颜色 粉红色 1 to 1应该是透明或白色的 并且大于 1应该是另一种颜色 紫色 目前我已经使用编写代码hchart 并使用color stop
  • 在 jquery 选择器中使用 rel 属性中的变量

    我使用 rel 属性将 div 与按钮匹配 我在相应 div 的 rel 字段中使用按钮的 id 有多个按钮 单击按钮时 我想使用 show 方法显示相应的 div 并隐藏其他 div 按钮工作正常 但 div 没有响应 我的直觉告诉我 我
  • C Win32:从 HBITMAP 保存 .bmp 图像

    我正在使用图像采集卡 需要从计算机内存中获取图像并将其保存在图像文件中 经过几天的尝试 我最终得到了以下两个函数 它创建了一个文件 Windows操作系统能够运行 bmp文件 但位图文件是黑色的 图像大小为900KB 640 480 有人知
  • Android 追加文本文件

    我试图将对话框选择器中的唤醒时间和睡眠时间记录到这样的文本文件中 但是对方法 commitToFile2 的调用不会附加文本文件 savedData txt 我知道这段代码非常非常肮脏 我是 Java 新手 所以任何其他建议将不胜感激 pa
  • 标签内运行 JavaScript?

    我有一个处理选项卡切换的 JavaScript 文件 这是来源 var tCount 0 function SwitchToTab id if id lt 0 id gt tCount id 0 for var i 0 i lt tCoun
  • 在 ASP.NET Identity 2 中通过 UserManager.Update() 更新用户

    I use ASP NET Identity 2 in an MVC 5项目 我想更新Student数据通过使用UserManager Update 方法 然而 正如我继承自ApplicationUser类 我需要映射Student to
  • @EnableGlobalMethodSecurity 与 @EnableWebSecurity

    我正在使用 Spring 4 开发 REST API 我想使用 Spring Security 来保护一些端点 但根据我所读到的内容 可以使用以下任一方法来完成 EnableGlobalMethodSecurity or EnableWeb