You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

25 lines
950 B

// Package acl is an interface for implementing arbitrary access control lists.
package acl
const (
// Read means read only
Read = "read"
// Write means read and write
Write = "write"
// Admin means read, write, import/export and arbitrary delete
Admin = "admin"
// Owner means read, write, import/export, arbitrary delete and wipe
Owner = "owner"
// Group applies to communities and other groups; the content afterwards a
// set of comma separated <permission>:<pubkey> pairs designating permissions to groups.
Group = "group:"
)
type I interface {
// GetAccessLevel returns the access level string for a given pubkey.
GetAccessLevel(pub []byte) (level string)
// GetACLInfo returns the name and a description of the ACL, which should
// explain briefly how it works, and then a long text of documentation of
// the ACL's rules and configuration (in asciidoc or markdown).
GetACLInfo() (name, description, documentation string)
}