X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=itkacl-2.2%2Fitkacl.sql;fp=itkacl-2.2%2Fitkacl.sql;h=92b559cf86e99caa88f886b56d074b87a1ecc30c;hb=55f933b88c9d9992b1ec0ed7c13a621032f7637d;hp=0000000000000000000000000000000000000000;hpb=e51368f580164e7324c706501758aaf56a4fa312;p=itkacl diff --git a/itkacl-2.2/itkacl.sql b/itkacl-2.2/itkacl.sql new file mode 100644 index 0000000..92b559c --- /dev/null +++ b/itkacl-2.2/itkacl.sql @@ -0,0 +1,20 @@ +CREATE TABLE objects ( + id SERIAL NOT NULL PRIMARY KEY, + name VARCHAR(64) NOT NULL, + description VARCHAR(255) NOT NULL, + parent INTEGER REFERENCES objects(id), + + UNIQUE ( name, parent ) +); + +CREATE TABLE aclentries ( + object INTEGER NOT NULL REFERENCES objects(id), + entity_type VARCHAR(5) NOT NULL CHECK ( entity_type IN ('group', 'user') ), + entity VARCHAR(64) NOT NULL, + allow VARCHAR(5) NOT NULL CHECK ( allow IN ('grant', 'deny') ), + comment VARCHAR, + + UNIQUE ( object, entity_type, entity ) +); +CREATE INDEX object_index ON aclentries ( object ); +