X-Git-Url: https://git.hcoop.net/hcoop/domtool2.git/blobdiff_plain/08a04eb413e8ee58ee35affc5c4125b622ea75c4..51cc45f7d84d0d92700b461a1296b9aa748dd88e:/src/acl.sig diff --git a/src/acl.sig b/src/acl.sig index fc72ab6..a88bddd 100644 --- a/src/acl.sig +++ b/src/acl.sig @@ -30,6 +30,12 @@ signature ACL = sig val queryAll : string -> (string * string list) list (* What are all of a user's permissions, by class? *) + val users : unit -> string list + (* Which users have been granted privileges? *) + + val whoHas : {class : string, value : string} -> string list + (* Which users have a permission? *) + val class : {user : string, class : string} -> DataStructures.StringSet.set (* For what objects does the user have the permission? *) @@ -37,8 +43,15 @@ signature ACL = sig val revoke : acl -> unit (* Grant/ungrant the user the permission. *) + val revokeFromAll : {class : string, value : string} -> unit + + val rmuser : string -> unit + (* Remove all of a user's privileges. *) + val read : string -> unit val write : string -> unit (* Read/write saved ACL state from/to a file *) + val queryDomain : {user : string, domain : string} -> bool + (* Like a call to [query] for class 'domain', but considers subdomains, too *) end