camunda授权的一些简单操作
/**
* 授权操作
*/
public class ZccAuthorizationService {
AuthorizationService authorizationService;
@Before
public void init(){
ProcessEngineConfiguration processEngineConfiguration = ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("camunda.cfg.xml");
ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine();
authorizationService = processEngine.getAuthorizationService();
System.out.println("####");
System.out.println("authorizationService:"+authorizationService);
}
@Test
public void getIdentityService(){
init();
} /**
* select distinct RES.* from ACT_RU_AUTHORIZATION RES WHERE RES.USER_ID_ in ( ? ) order by RES.ID_ asc LIMIT ? OFFSET ?
* 也可以向操作用户那样添加一些查询条件
*/
@Test
public void createAuthorizationQuery(){
List<Authorization> list = authorizationService.createAuthorizationQuery().userIdIn("zcc2").list();
for (int i=0;i<list.size();i++){
Authorization authorization = list.get(i);
System.out.println(authorization.getId());
System.out.println(authorization.getAuthorizationType());
System.out.println(authorization.getResourceId());
System.out.println(authorization.getGroupId());
} } public void createAuthorization(String userId, String groupId, Resource resource, String resourceId, Permission[] permissions){
Authorization authorization=authorizationService.createNewAuthorization(Authorization.AUTH_TYPE_GRANT);
authorization.setUserId(userId);
authorization.setGroupId(groupId);
authorization.setResource(resource);
authorization.setResourceId(resourceId);
authorization.setPermissions(permissions);
authorizationService.saveAuthorization(authorization);
} public static class TestResource implements Resource{
String reaourceName;int resrouceType;
public TestResource(String reaourceName,int resrouceType) {
this.reaourceName=reaourceName;
this.resrouceType=resrouceType; } public String getReaourceName() {
return reaourceName;
} public void setReaourceName(String reaourceName) {
this.reaourceName = reaourceName;
} public int getResrouceType() {
return resrouceType;
} public void setResrouceType(int resrouceType) {
this.resrouceType = resrouceType;
} @Override
public String resourceName() {
return null;
} @Override
public int resourceType() {
return 0;
}
} /**
* Preparing: insert into ACT_RU_AUTHORIZATION ( ID_, TYPE_, GROUP_ID_, USER_ID_, RESOURCE_TYPE_, RESOURCE_ID_, PERMS_, REV_ ) values ( ?, ?, ?, ?, ?, ?, ?, 1 )
* Parameters: 601(String), 1(Integer), null, zcc2(String), 0(Integer), 60(String), 2147483647(Integer)
*/
@Test
public void addAuthorization(){
Resource resource1=new TestResource("resource1",100);
Resource resource2=new TestResource("resource2",200);
createAuthorization("zcc2",null,resource1,"60", new Permission[]{Permissions.ALL});
} @Test
public void addAuthorization2(){
Authorization authorization=authorizationService.createNewAuthorization(Authorization.AUTH_TYPE_GRANT);
authorization.setUserId("zcc3");
authorization.setResource(Resources.APPLICATION);
authorization.setResourceType(10);
authorization.setResourceId("*");
authorization.setPermissions(new Permission[]{Permissions.ALL});
authorizationService.saveAuthorization(authorization); } /**
* 授权访问用户
*/
@Test
public void addAuthorization3(){
Authorization authorization=authorizationService.createNewAuthorization(Authorization.AUTH_TYPE_GRANT);
authorization.setUserId("zcc3");
authorization.setResource(Resources.USER);
authorization.setResource(Resources.APPLICATION);
authorization.setResourceType(1);
authorization.setResourceId("*");
authorization.setPermissions(new Permission[]{Permissions.CREATE,Permissions.UPDATE});
authorizationService.saveAuthorization(authorization); } /**
* 授权访问组
*/
@Test
public void addAuthorization4(){
Authorization authorization=authorizationService.createNewAuthorization(Authorization.AUTH_TYPE_GRANT);
authorization.setUserId("zcc3");
authorization.setResource(Resources.GROUP);
authorization.setResourceId("*");
authorization.setPermissions(new Permission[]{Permissions.READ,Permissions.CREATE,Permissions.UPDATE});
authorizationService.saveAuthorization(authorization); } /**
* 授权访问租户
*/
@Test
public void addAuthorization5(){
Authorization authorization=authorizationService.createNewAuthorization(Authorization.AUTH_TYPE_GRANT);
authorization.setUserId("zcc3");
authorization.setResource(Resources.TENANT);
authorization.setResourceId("*");
authorization.setPermissions(new Permission[]{Permissions.READ,Permissions.CREATE,Permissions.UPDATE});
authorizationService.saveAuthorization(authorization); } }
camunda授权的一些简单操作的更多相关文章
- camunda用户的一些简单操作
act_id_group:存放组信息act_id_membership:存放用户与组的相关信息act_id_user:存放用户act_id_info:存放用户个人信息act_id_tenant:存放租 ...
- camunda任务的一些简单操作
public class ZccTaskService { TaskService taskService; @Before public void init(){ ProcessEngineConf ...
- python(pymysql)之mysql简单操作
一.mysql简单介绍 说到数据库,我们大多想到的是关系型数据库,比如mysql.oracle.sqlserver等等,这些数据库软件在windows上安装都非常的方便,在Linux上如果要安装数据库 ...
- Linux下MySQL的简单操作
Linux下MySQL的简单操作 更改mysql数据库root的密码 首次进入数据库是不用密码的: [root@localhost ~]# /usr/local/mysql/bin/mysql -ur ...
- MySQL基本概念以及简单操作
一.MySQL MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MyS ...
- 进击的Python【第十二章】:mysql介绍与简单操作,sqlachemy介绍与简单应用
进击的Python[第十二章]:mysql介绍与简单操作,sqlachemy介绍与简单应用 一.数据库介绍 什么是数据库? 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,每个数 ...
- Postgresql部署及简单操作
PostgreSQL是一个功能强大的开源对象关系数据库管理系统(ORDBMS),在开源数据库使用上与MySQL各领风骚.但也有不少人质疑postgresql的未来,正所谓,赞扬或批判一种数据库都必须先 ...
- 第十五节:Asp.Net Core中的各种过滤器(授权、资源、操作、结果、异常)
一. 简介 1. 说明 提到过滤器,通常是指请求处理管道中特定阶段之前或之后的代码,可以处理:授权.响应缓存(对请求管道进行短路,以便返回缓存的响应). 防盗链.本地化国际化等,过滤器用于横向处理业务 ...
- RabbitMQ安装以及简单操作应用(针对Windows和C#)
1.RabbitMQ安装 1.1下载并安装Erlang https://www.erlang.org/downloads 一直点next就安装好了.我直接使用了默认的安装目录.否则的话,应该需要配置一 ...
随机推荐
- 对GridFS数据进行分片
On this page files 集合 chunks 集合 在对 GridFS 存储进行分片时,需要注意以下的情况: files 集合 大多数情况下不需要对 files 集合进行分片,这个集合通常 ...
- spring boot 尚桂谷学习笔记10 数据访问02 mybatis
数据访问 mybatis 创建一个 springboot 工程,模块选择 sql 中 mysql(数据驱动), jdbc(自动配置数据源), mybatis Web模块中选择 web pom 引入: ...
- Linux安装Apache报错:Cannot find a valid baseurl for repo: base/7/x86_64解决方案
最近使用CentOS7学习,安装安装Apache时候,使用yum安装Apache报错:本文适合CentOS7和RHEL7 # yum install httpd 出现:cannot find a va ...
- 原生AJAX的封装
/**调用AJAX ajaxPlug.openajax({ url: "./TestXHR.aspx", //请求地址 type: "POST", //请求方式 ...
- 面相对象编程 扩充之封装、访问机制、 property
封装: 封装指的是可以将一堆属性和方法,封装到对象中 ps : 对象就好比一个 “袋子/容器”, 可以存放一堆属性和方法 ps : 存不是目的,目的是为了取,可以通过“对象” d的方式获取属性或方法 ...
- [fw]LINUX中断描述符初始化
LINUX中断描述符初始化 @CopyLeft by ICANTH,I Can do ANy THing that I CAN THink!~ Author: WenHui, WuHan Univer ...
- Linux GNU GAS introduction
Linux汇编语法简介(GNU GAS) 声明:本教程不是介绍汇编语言和CPU指令的书籍,只是对gas的用法做一简单介绍.市面上所有讲汇编的书都是在微软的环境下,使用的是Intel的语法格式, ...
- Introduction to Object-Oriented JavaScript 转载自:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Introduction_to_Object-Oriented_JavaScript
Introduction to Object-Oriented JavaScript IN THIS ARTICLE JavaScript review Object-oriented program ...
- cookie,seesion学习
一,为什么需要cookie和session? 1,Web应用程序是使用HTTP协议传输数据的.然而HTTP协议是无状态的协议.一旦数据交换完毕,客户端与服务器端的连接就会关闭,再次交换数据需要建立新的 ...
- Centos 进入recovery模式,单用户模式
1.重启服务器,在选择内核界面使用上下箭头移动 2.选择内核并按“e” 3.找到下面这行 4.修改 这里要删除掉rhgb quiet,如下图 5.使用“ctrl + x” 来重启服务器就可以了,重启后 ...