mirror of
https://github.com/spring-projects/spring-security.git
synced 2026-02-01 02:59:45 +00:00
47 lines
1.7 KiB
SQL
47 lines
1.7 KiB
SQL
-- ACL schema sql used in HSQLDB
|
|
|
|
-- drop table acl_entry;
|
|
-- drop table acl_object_identity;
|
|
-- drop table acl_class;
|
|
-- drop table acl_sid;
|
|
|
|
create table acl_sid(
|
|
id bigint generated by default as identity(start with 100) not null primary key,
|
|
principal boolean not null,
|
|
sid varchar_ignorecase(100) not null,
|
|
constraint unique_uk_1 unique(sid,principal)
|
|
);
|
|
|
|
create table acl_class(
|
|
id bigint generated by default as identity(start with 100) not null primary key,
|
|
class varchar_ignorecase(100) not null,
|
|
constraint unique_uk_2 unique(class)
|
|
);
|
|
|
|
create table acl_object_identity(
|
|
id bigint generated by default as identity(start with 100) not null primary key,
|
|
object_id_class bigint not null,
|
|
object_id_identity bigint not null,
|
|
parent_object bigint,
|
|
owner_sid bigint,
|
|
entries_inheriting boolean not null,
|
|
constraint unique_uk_3 unique(object_id_class,object_id_identity),
|
|
constraint foreign_fk_1 foreign key(parent_object)references acl_object_identity(id),
|
|
constraint foreign_fk_2 foreign key(object_id_class)references acl_class(id),
|
|
constraint foreign_fk_3 foreign key(owner_sid)references acl_sid(id)
|
|
);
|
|
|
|
create table acl_entry(
|
|
id bigint generated by default as identity(start with 100) not null primary key,
|
|
acl_object_identity bigint not null,
|
|
ace_order int not null,
|
|
sid bigint not null,
|
|
mask integer not null,
|
|
granting boolean not null,
|
|
audit_success boolean not null,
|
|
audit_failure boolean not null,
|
|
constraint unique_uk_4 unique(acl_object_identity,ace_order),
|
|
constraint foreign_fk_4 foreign key(acl_object_identity) references acl_object_identity(id),
|
|
constraint foreign_fk_5 foreign key(sid) references acl_sid(id)
|
|
);
|