繁体   English   中英

Spring Security:保护URL和参数

[英]Spring Security: Securing URL and Parameters

我有一个要求,其中应用程序需要根据用户具有的角色和参数传递来保护用户的URL。

例如:有四个角色PREVIEW_VIEW,PREVIEW_MODIFY,PUBLIC_VIEW,PUBLIC_MODIFY

URL命中为http:// myapp:8080 / console / editGroups.action?orgId = 1&recipientType = PREVIEW

假设用户仅具有“ PUBLIC_VIEW”和“ PUBLIC_MODIFY”权限。

如果用户传递参数'recipientType = PREVIEW',则仅当用户具有'PREVIEW_MODIFY'权限时,页面才可访问。

那么如何一起保护URL和参数呢?

即仅在用户具有PREVIEW_MODIFY权限的情况下才允许此URL( http:// myapp:8080 / console / editGroups.action?orgId = 1&recipientType = PREVIEW )并允许该URL( http:// myapp:8080 / console / editGroups.action ?orgId = 1&recipientType = PUBLIC ),仅当用户具有PUBLIC_MODIFY权限时

谢谢

车丹

对我来说,这是错误的处理方式。 客户端可以根据定义更改URL,因为由客户端本身来决定呼叫谁或呼叫什么。 因此,URL是放置安全信息的最糟糕的地方。 此外,如果您需要这样走,我想您只能利用加密技术。

服务器是决定客户端与哪个角色相关联的服务器,因此它强制客户端将参数与其角色组合一起包括在内。 当然,这必须是encypted(对称加密也就足够了),因为客户端必须不能改变它,无论如何。

当客户端执行请求时,服务器将检索加密的属性并将其解密以获得客户端的角色。

如果需要使该属性易于理解,则可以清楚地显示它,并使用其他加密的HASH参数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM