【发布时间】:2018-11-28 06:57:04
【问题描述】:
我有一个 Springboot Rest 项目。假设我有 User 类作为实体。可以直接在POST方法的RequestBody中传递这个实体对象吗?我的功能将与此顺利进行。我的问题是,这是否是一个安全漏洞?如果是,解决方案是什么?
【问题讨论】:
标签: rest spring-boot spring-data-jpa http-post
我有一个 Springboot Rest 项目。假设我有 User 类作为实体。可以直接在POST方法的RequestBody中传递这个实体对象吗?我的功能将与此顺利进行。我的问题是,这是否是一个安全漏洞?如果是,解决方案是什么?
【问题讨论】:
标签: rest spring-boot spring-data-jpa http-post
这可以正常工作并且是一个简单的实现,但在架构上这不是一个好的做法,因为这会将您的其余实现与您的数据库设计紧密耦合并将其公开给 API 的使用者。
您应该让请求/响应对象进入您的 api 并从中取出,将其与数据库分离,并允许您在数据访问之上的层执行验证和其他业务规则。如果您发现必须在实体和 dtos 之间编写大量赋值代码,那么您可以使用 http://modelmapper.org/ 或 http://mapstruct.org/ 之类的工具
【讨论】: