securitymanager

How do I simulate a modal dialog from within an Applet?

和自甴很熟 提交于 2019-12-05 14:02:25
On setVisible(true), I call the following code to start a modal dialog: private synchronized void startModal () { try { if (SwingUtilities.isEventDispatchThread()) { EventQueue theQueue = getToolkit().getSystemEventQueue(); while (isVisible()) { AWTEvent event = theQueue.getNextEvent(); Object source = event.getSource(); if (event instanceof ActiveEvent) { ((ActiveEvent) event).dispatch(); } else if (source instanceof Component) { ((Component) source).dispatchEvent(event); } else if (source instanceof MenuComponent) { ((MenuComponent) source).dispatchEvent(event); } else { System.err.println(

上手spring boot项目(二)之spring boot整合shiro安全框架

佐手、 提交于 2019-12-05 10:54:52
题记 :在学习了springboot和thymeleaf之后,想完成一个项目练练手,于是使用springboot+mybatis和thymeleaf完成一个博客系统,在完成的过程中出现的一些问题,将这些问题记录下来,作为自己的学习心得。在这先感谢群主TyCoding的Tumo项目,虽然本人实在太菜了,好些地方看不懂,但还是使我受益匪浅。 shiro作为一个小巧灵活的安全框架,在认证和授权方面简约但又不简单,十分容易上手使用。下面是整合shiro的具体流程。 1.添加依赖 1 <!--shiro和spring整合--> 2 <dependency> 3 <groupId>org.apache.shiro</groupId> 4 <artifactId>shiro-spring</artifactId> 5 <version>1.3.2</version> 6 </dependency> 7 <!--shiro核心包--> 8 <dependency> 9 <groupId>org.apache.shiro</groupId> 10 <artifactId>shiro-core</artifactId> 11 <version>1.3.2</version> 12 </dependency> 2.在springboot控制台中添加基础包的扫描和实体类的扫描注解 由于本人实在粗心

shiro自定义Realm(数据源)

 ̄綄美尐妖づ 提交于 2019-12-05 10:54:10
2.1一样先导包 <!--使用shiro需要先导包--> <dependencies> <!--shiro的核心包--> <dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-core</artifactId> <version>1.4.0</version> </dependency> <!--日志包--> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.2</version> </dependency> <!--测试包--> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.9</version> </dependency> </dependencies> 2.2准备自定义Realm 写一个Realm,继承 AuthorizingRealm 提供了两个方法,一个是授权 doGetAuthorizationInfo ,一个是身份认证 doGetAuthenticationInfo (准备个MyRealm.java文件,填写如下内容 )

shiro学习(五、springboot+shiro+mybatis+thymeleaf)

廉价感情. 提交于 2019-12-05 07:27:56
入门shiro(感觉成功了)首先感谢狂神,然后我就一本正经的复制代码了 项目结构 运行效果 数据库 <dependencies> <!-- thymeleaf-shiro整合包 --> <dependency> <groupId>com.github.theborakompanioni</groupId> <artifactId>thymeleaf-extras-shiro</artifactId> <version>2.0.0</version> </dependency> <!--快速生成pojo的方法有关的lombok--> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.16.10</version> </dependency> <!-- 引入 myBatis,这是 MyBatis官方提供的适配 Spring Boot 的,而不是Spring Boot自己的--> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.1.0</version> <

base-framework 工程文档收录

百般思念 提交于 2019-12-05 01:12:07
1 shrio 实用功能说明 apache shiro 是功能强大并且容易集成的开源权限框架,它能够完成认证、授权、加密、会话管理等功能。认证和授权为权限控制的核心,简单来说,“认证”就是证明“你是谁?” Web 应用程序一般做法是通过表单提交的用户名及密码达到认证目的。“授权”即是"你能做什么?",很多系统通过资源表的形式来完成用户能做什么。关于 shiro 的一系列特征及优点,很多文章已有列举,这里不再逐一赘述,本文首先会简单的讲述 shiro 和spring该如何集成,重点介绍 shiro 的几个实用功能和一些 shiro 的扩展知识。 1.1 shiro 集成 spring 由于 spring 在 java web 应用里广泛使用,在项目中使用 spring 给项目开发带来的好处有很多,spring 框架本身就是一个非常灵活的东西,而 shrio 的设计模式,让 shiro 集成 spring 并非难事。 首先在web.xml里,通过 spring 的 org.springframework.web.filter.DelegatingFilterProxy 定义一个 filter ,让所有可访问的请求通过一个主要的 shiro 过滤器。该过滤器本身是极为强大的,允许临时的自定义过滤器链基于任何 URL 路径表达式执行。 web.xml: <!-- shiro

shiro学习(一)

坚强是说给别人听的谎言 提交于 2019-12-04 20:50:53
基础依赖: shiro-core,junit(因为在单元测试中) test.class public class AuthenticationTest { SimpleAccountRealm realm = new SimpleAccountRealm(); @Before public void addUser(){ realm.addAccount("mark","123456"); } @Test public void testAuthentication(){ //1.构建securityManager环境 DefaultSecurityManager securityManager = new DefaultSecurityManager(); securityManager.setRealm(realm); //2.主体提交认证请求 SecurityUtils.setSecurityManager(securityManager); Subject subject = SecurityUtils.getSubject(); //获取主体之后,就提交认证 UsernamePasswordToken token = new UsernamePasswordToken("mark","123456");      //退出认证 subject.login(token);

对于RBAC与shiro的一些思考

随声附和 提交于 2019-12-04 18:21:36
一、什么是RBAC模型   RBAC模型是一个解决用户权限问题的设计思维。   在最简单的RBAC模型中,将用户表设计为如下几个表   1、用户   2、角色   3、权限   以及这三张表衍生出来的两张中间表   4、用户_角色表   5、权限_角色表   上面描述的5张表就构成了最基本也是最成熟的RBAC模型,可以看得出RBAC模型中的核心是角色,所有与用户相关的权限都是通过角色表进行关联的!在今后我们可能会用到的按钮元素表,样式表等各种各样的资源表最终都如权限表一般,与角色进行关联。RBAC的哲学就是,认角色不认用户,所有的查询都是通过角色来完成的。 1.1、RBAC模型的注意点   我们之所以要用到RBAC模型,本质上是为了实现两个功能:   1、资源对用户的可见性,例如:当前用户对应的角色是否能“看到“某个菜单项或是某个按钮,这一部分其实重在前端渲染,资源的可见性并不能保证资源安全,当有心人拿到资源的请求路径时依旧可以发出相应的请求。在我看来,对资源的可见性,更多的是对用户的体验上的优化。   2、对请求的鉴权,这部分才应该是我们关注的核心点。   需要注意的是,对于资源可见性的控制上,我们只要简单的将五张表进行关联查询,然后通过foreach渲染出用户可见的按钮即可,没有什么复杂的操作。无论是前后端分离的项目还是,传统项目或是各种模板引擎,都建议这样做

Running Java Security Manager without the default java.policy file

泄露秘密 提交于 2019-12-04 13:34:26
问题 I don't want to modify anything in my java home directory, however, I am afraid that sometimes my default java.policy file may be too permissive. Is there a way for me to use a specified policy file as the only policy file when I run java with the -Djava.security.manager option? If I add a -Djava.security.policy=myPolicy.policy option, it uses my policy file in addition to the default policy file -- which is bad because it looks like all permissions granted in the default policy file is still

Shiro权限验证说明

百般思念 提交于 2019-12-04 13:20:06
1、简介 shiro是一个安全框架,是Apache的一个子项目。shiro提供了:认证、授权、加密、会话管理、与web集成、缓存等模块。 1.1、模块介绍 Authentication:用户身份识别,可以认为是登录; Authorization:授权,即权限验证,验证某个已认证的用户是否拥有某个权限;即判断用户是否能做事情,常见的如:验证某个用户是否拥有某个角色。或者细粒度的验证某个用户对某个资源是否具有某个权限。 Session Manager:会话管理,即用户登录后就是一次会话,在没有退出之前,它的所有信息都在会话中;会话可以是普通 JavaSE 环境的,也可以是如 Web 环境的。 Cryptography:加密,保护数据的安全性,如密码加密存储到数据库,而不是明文存储。 Web Support:Web支持,可以非常容易的集成到 web 环境。 Caching:缓存,比如用户登录后,其用户信息、拥有的角色/权限不必每次去查,这样可以提高效率。 Concurrency:shiro 支持多线程应用的并发验证,即如在一个线程中开启另一个线程,能把权限自动传播过去。 Testing:提供测试支持。 Run As:允许一个用户假装为另一个用户(如果他们允许)的身份进行访问。 Remember Me:记住我,这个是非常常见的功能,即一次登录后,下次再来的话不用登录了。 注意

Vue + Spring Boot 项目实战(十三):使用 Shiro 实现用户信息加密与登录认证

橙三吉。 提交于 2019-12-04 06:26:48
重要链接: 「系列文章目录」 「项目源码(GitHub)」 本篇目录 前言 一、用户信息加密 1.hash 算法 2.加盐加密 3.核心代码 二、使用 Shiro 认证登录 1.Shiro 核心概念 2. Shiro 配置与登录验证 3.测试 三、下一步 前言 距离上次写文章已经快一个月了。突然感觉很对不起老读者,可能原本打算用它一两周做个小项目练练手,结果半年过去了这个沙雕作者居然还没更完。这里我诚挚地给各位道个歉,我在这儿立个 flag,只要不加班,以后我保证不会拖更超过两周。 不过说实话,不拖更还真感受不到这么多人等着我。读者大人们如果感到文章还算有一些价值,不妨点个赞、收个藏、转个发之类,这对我也是一种实打实的鼓励。 另外随着阅读量的增加,问我问题的读者也越来越多了,过去我基本上只要有时间就会帮忙看一下,但是现在真的应对不过来了,所以只能选择性回答啦。像 “为什么我运行xx会报错啊” 之类的问题,最好先有个思路再提问,有的同学甚至连错误信息都不说,以为我掐指一算就能得出结论,那我也太 six 了。还有其实我也挺势利的,一般要是一看诶这哥们儿也没给我点赞也没关注我,那一般就直接忽略啦。在此基础上还说话不好听的,我一怒之下就直接怼回去了,谁还不是网络暴民了咋的。刚好手上有个例子,给大家看一下: 讲道理这种情况下即使我发现他说的对,肯定评论一删悄悄改掉,这叫知错改错不认错