gpt4 book ai didi

json - Spring MVC 和 JSON 中的安全性

转载 作者:行者123 更新时间:2023-12-03 03:24:06 28 4
gpt4 key购买 nike

我想以某种方式为发送和获取 JSON 数据提供安全性,但我不知道如何做到这一点。

我们的系统具有用户角色(系统管理员、普通成员(member)等)

我们决定使用 Spring MVC URL 模式以 JSON 形式发送数据。我不希望系统外部的每个人都使用此 URL,只有用户才能使用该 URL。

示例

www.example.com/services/"hereUserPass"/"hereUserName"/category/3

每次请求不同的URL,我是否应该控制用户名和密码是否之前注册过?或者我应该为安全做些什么?

最佳答案

您希望在 Spring Web 应用程序中实现安全性。您可以通过两种方式执行此操作:

  • 基于网址的安全性
  • 基于方法的安全性

尝试创建另一个 xml 文件,如 applicationContext-security.xml 以下是一个示例:

<http use-expressions="true">
<intercept-url pattern="/" access="permitAll"/>
<intercept-url pattern="/static/**" filters="none" />
<intercept-url pattern="/**" access="isAuthenticated()" />
<form-login />
<logout />
</http>

在这里我们看到 permitAll 意味着允许每个想要访问该 URL 的人。 filters = none 具有相同的效果,但这意味着用户不会越过 Spring Security(前一个越过 Spring Security 但具有访问权限,不应用过滤)。 isAuthenticated 表示用户通过身份验证后可以到达那里。您还可以对 URL 应用基于角色的访问。

其他基于中间层安全的安全实现。您应该在应用程序上下文安全文件中添加此行:

<global-method-security pre-post-annotations="enabled" />

因此您可以使用基于方法的安全性,如下所示:

@PreAuthorize("hasRole('ROLE_SUPERVISOR')")
void storeVisit(Visit visit) throws DataAccessException;

您可以开始阅读 Spring Pet Clinic 的 Spring Security 实现示例:http://static.springsource.org/spring-security/site/petclinic-tutorial.html

我还建议您阅读此处:http://www.mularien.com/blog/2008/07/07/5-minute-guide-to-spring-security/

关于json - Spring MVC 和 JSON 中的安全性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7941156/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com