gpt4 book ai didi

javascript - JS 级别的 Grails 授权

转载 作者:行者123 更新时间:2023-12-02 16:04:23 25 4
gpt4 key购买 nike

在我的 Grails 应用程序中,GUI 的某些部分是使用 JS 自动生成的(例如表格行)。现在,我想根据用户的 Angular 色显示/隐藏其中一些 GUI 元素,例如ROLE_ADMIN 可能会看到“删除”按钮,ROLE_USER 可能不会。

我的方法(我正在使用 Spring Sec 插件):

_myview.gps HTML-part:
<g:set var="isAdmin" value="${sec.ifAllGranted(roles: 'ROLE_ADMIN', "true")}" />

_myview.gps JS-part:
if( '${isAdmin}' == "true" ){ ... }

这行得通,但我不确定这是否是保存/清理/......而且我有点担心它很容易被黑客入侵。

最佳答案

如果您在 GSP 中生成 Javascript,请不要将检查委托(delegate)给 Javascript。而不是 if( '${isAdmin}' == "true" ){ ...JS CODE... }就写<sec:ifAllGranted(roles="ROLE_ADMIN")>...JS CODE...</sec:ifAllGranted> .

至于安全性,除非您在 Controller /服务级别检查用户的 Angular 色(因此在您的 Javascript 将调用的位置),否则您永远不会真正安全。

关于javascript - JS 级别的 Grails 授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26991663/

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