]> git.sesse.net Git - itkacl/blob - itkacl-2.0/itkacl.sql
Add the Apache module.
[itkacl] / itkacl-2.0 / itkacl.sql
1 CREATE TABLE objects (
2         id SERIAL NOT NULL PRIMARY KEY,
3         name VARCHAR(64) NOT NULL,
4         description VARCHAR(255) NOT NULL,
5         parent INTEGER REFERENCES objects(id),
6
7         UNIQUE ( name, parent )
8 );
9
10 CREATE TABLE aclentries (
11         object INTEGER NOT NULL REFERENCES objects(id),
12         entity_type VARCHAR(5) NOT NULL CHECK ( entity_type IN ('group', 'user') ),
13         entity VARCHAR(64) NOT NULL,
14         allow VARCHAR(5) NOT NULL CHECK ( allow IN ('grant', 'deny') ),
15
16         UNIQUE ( object, entity_type, entity )
17 );
18 CREATE INDEX object_index ON aclentries ( object );
19