Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >使用多个自定义授权属性

使用多个自定义授权属性
EN

Stack Overflow用户
提问于 2017-01-11 05:28:15
回答 1查看 461关注 0票数 0

我正在做一个项目,在这个项目中,我们正在加强我们网站的一个区域(模块)内的安全性。我们一共有5个模块,所有5个当前共享相同的自定义授权属性类,进行三次检查。

  1. 你同意接受条件了吗?是的,继续到2。不,你是未经授权的,被扔到一个未经授权的页面。
  2. 你是这个网站的成员吗?是的,继续到3。不,你是未经授权的,被扔到一个未经授权的页面。
  3. 本模块允许您的角色吗?是的,继续前进。不,您是未经授权的,并被抛到一个未经授权的页面。

这5个模块的类当前由这个自定义授权属性来修饰,并检查了它们各自的角色(3/5模块有一个单独的角色,而另两个模块有多个角色,其中一个有4个,而我现在发布的模块有3个)。然而,随着我们在一个模块中加强安全性,它已经成为一个如何解决它的问题。我们正在改变的这个模块有三个角色(只读,用户,管理).

  • 只读:听起来是这样。没有添加/编辑/删除特权。
  • 用户:具有读取权限,可以添加/编辑/删除挂起的其他权限检查。
  • 管理员:随你便。您可以添加/编辑/删除并进入仅管理区域。

用户也是一个特例,因为它有一个辅助检查集,其中包括在最多2个其他列表中检查权限(始终检查两个列表中的一个,而另一个检查用于一个选择区域)。

我的问题是,由于这个安全性不在原始的自定义授权属性之外,并且依赖于这个模块,我是应该创建一个新的自定义授权属性,还是应该修改原始属性?

我最初的想法是删除这个模块的类级装饰,然后将其应用于每个方法。使用此路径可以更多地将新逻辑添加到当前的自定义授权属性中。

然而,这里有一个问题。为管理员和只读用户执行此操作很好,但问题在于用户的情况。用户必须进行二次检查,以确定他们是否对将要查看的特定记录具有权限。如果不允许,则允许它们像只读用户一样在那里进行编辑.

由于这个子句,我不太确定是否有一个私有方法来进行检查和自定义授权属性。

任何方向或想法都将不胜感激。谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-13 06:53:18

因此,经过仔细考虑后,我想出了以下解决方案。我没有添加到我所拥有的当前自定义授权属性中,因为这仅限于站点中的一个模块。

但是,我确实对用户可以访问的所有页面进行检查(不包括Post方法),以确定所有情况。

当用户是管理员时,他们可以获得修改访问权。如果它们是只读用户,则不允许它们修改访问权限.当它们是用户时,也会检查它们的权限,如果它们具有这些权限,则会给予它们修改访问权限。否则,它们将被视为只读用户。

我在会话中存储用户的角色和权限,以及如果他们有修改访问权限的话。如果找不到会话,我将返回并将它们添加回。如果用户的角色/权限在用户管理区域中被更新,我还会更新杀死这些会话。

另外,在修改某些内容的页面(Add/Edit/Delete)中,我添加了一个逻辑块,如果它们没有修改访问权限,它们将被引导到一个未经授权的访问页面。

到目前为止,这似乎进展顺利,到目前为止还没有出现任何问题。我更愿意在一个地方添加这个逻辑,比如类,但同时,我认为将它放在那里是不合适的,因为它只用于一个模块。谢谢。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41592237

复制
相关文章
javaFx 改变stage的标题条的图标
原文来自:http://stackoverflow.com/questions/10275841/how-to-change-the-icon-on-the-title-bar-of-a-stage-in-java-fx-2-0-of-my-applicat/15206407#15206407
明明如月学长
2021/08/27
1.1K0
从ajax获取参数到控制器Laravel
route Route::get('search', 'ShowstaffController@search'); 接收变量
双面人
2020/02/17
1.2K0
JavaFX 简介
本文介绍了JavaFX技术,并基于JavaFX编写了一个简单的图形界面程序。通过使用JavaFX,可以大大简化Java应用程序的开发过程,提高开发效率。同时,JavaFX也提供了一些常用的设计器,如SceneBuilder,可以方便地创建JavaFX应用程序。
乐百川
2018/01/09
5.8K0
JavaFX 简介
swift 获取控制器
得到view的控制器 /** view 获取它的控制器 */ public func viewController()->UIViewController? {
星宇大前端
2019/01/15
1.5K0
如何在JSP中格式化时间
在将后台数据传回前台的时候直接传输date属性的变量不进行格式化就会产生这种情况。 若是使用的是jsp则可以使用专门进行格式化的JSTL标签。 <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> 因为是国际化标签库所以不止可以进行日期格式化还可以实现国际化等功能,但现在使用他的情况只使用过它的日期格式化功能 <fmt:formateDate>
雪地二货
2018/09/18
1.8K0
JavaFX+Jfoenix 学习笔记(四)–MenuBar菜单栏
菜单最基本的作用就是单击做一些事情这是要用到单击事件:setOnAction(EventHandler<ActionEvent> value)
全栈程序员站长
2022/11/17
2.7K0
JavaFX+Jfoenix 学习笔记(四)–MenuBar菜单栏
Using JavaFX UI Controls 12 Table View
原文链接地址:http://docs.oracle.com/javafx/2/ui_controls/table-view.htm#CJAGAAEE
明明如月学长
2021/08/27
11.4K0
Stage模型和FA模型获取Context的方式
Context模块提供了ability或application的上下文的能力,包括允许访问特定于应用程序的资源、请求和验证权限等。获取context方式如下代码所示:
徐建国
2023/02/23
1K0
Stage模型和FA模型获取Context的方式
JavaFX入门(四):JavaFX布局(一)
说道GUI编程一定要谈到布局,JavaFX内置了大量的布局控件提供给我们使用。其实,JavaFX的布局控件和界面元素控件都是继承自javafx.scene.layout.Region类。我们这里只看布局控件类。布局控件我们在界面上一般是看不到的,它一个容器用于放置其它可视的界面元素控件。(JavaFX在线API文档:JavaFX8 API Online) JavaFX布局控件的类图如下:
卡尔曼和玻尔兹曼谁曼
2019/01/22
11.9K1
JavaFX入门(四):JavaFX布局(一)
JavaFX入门(二):JavaFX和FXML
在我的JavaFXML系列博客第一篇《JavaFX入门(一):我的第一个JavaFX程序 》中我们用纯Java代码写了一个很简单的JavaFXML程序,这一节中我们使用FXML编写程序界面,然后用Java书写后台逻辑完成上一节中的程序,实现相同的功能。
卡尔曼和玻尔兹曼谁曼
2019/01/22
8.8K0
JavaFX入门(二):JavaFX和FXML
[Spark源码剖析] DAGScheduler划分stage划分stage源码剖析
在DAGScheduler内部通过post一个JobSubmitted事件来触发Job的提交
codingforfun
2018/08/24
8260
[Spark源码剖析] DAGScheduler划分stage划分stage源码剖析
如何在windows下和linux下获取文件(如exe文件)的详细信息和属性
最近在项目开发中,由cs开发的exe的程序,需要自动升级,该exe程序放在linux下,自动升级时检测不到该exe程序的版本号信息,但是我们客户端的exe程序需要获取服务器上新程序的版本号信息。最后由我用java实现linux上exe文件的版本号读取功能。下面是详细代码:
业余草
2019/01/21
6K0
如何在windows下和linux下获取文件(如exe文件)的详细信息和属性
Using JavaFX UI Controls 18 超链接
原网页地址:http://docs.oracle.com/javafx/2/ui_controls/hyperlink.htm#CIHGADBG
明明如月学长
2021/08/27
1.5K0
javaFX(二)-使用gradle+jdk14创建javafx程序
在上一篇文章中,我们一起学习了jlink和jdk14的模块化. 在本篇文章中,我们一起来学习gradle来新建一个javafx的Hello World 程序.
微笑的小小刀
2020/05/28
4.3K0
二维码生成小工具,采用javafx框架tornadofx实现界面开发
[3zqf7zy13o.gif] import javafx.application.Application import javafx.beans.property.SimpleObjectProperty import javafx.embed.swing.SwingFXUtils import javafx.scene.image.Image import javafx.scene.image.WritableImage import tornadofx.* import javax.imageio.
用户6167008
2019/09/11
1.5K0
二维码生成小工具,采用javafx框架tornadofx实现界面开发
六种方式,教你在SpringBoot初始化时搞点事情!
在实际工作中经常需要在项目启动时做一些初始化的操作,比如初始化线程池、提前加载好加密证书.......
用户1263954
2021/12/02
8510
六种方式,教你在SpringBoot初始化时搞点事情!
JavaFX之Scene Builder的使用(开发一款GUI小工具原来这么简单)
首先声明一下,Java的强项并不在GUI上,现在是web的天下,博主发此篇文章仅是个人兴趣,如果您是学Java开发的,业余想做GUI小工具,可以选择使用JavaFX。如果需要开发企业级应用,推荐还是用qt或者wpf那些,用Electron也是很好的选择。
VIBE
2022/11/22
11.5K0
JavaFX之Scene Builder的使用(开发一款GUI小工具原来这么简单)
JavaFx-Button
.button1 { -fx-font: 22 arial; -fx-base: #b6e7c9; }
shengjk1
2021/03/02
4.9K0
JavaFx-Button
躁!DJ 风格 Java 桌面音乐播放器
HelloGitHub 推出的《讲解开源项目》系列,今天给大家带来一款开源 Java 版桌面 DJ 音乐播放器项目——XR3Player,它强大的功能和炫酷的展示效果,你肯定会喜欢上它的!
HelloGitHub
2021/05/14
3.8K0
点击加载更多

相似问题

如何从控制器访问JavaFx Stage?

20

如何在JavaFX中获取stage的关闭事件?

32

无法初始化类javafx.stage.screen

10

JavaFX FileChooser.showOptionDialog( Stage )从其他类获取舞台

10

如何使JavaFX stage透明(仅限Stage)

134
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文