public void Init() { _rbac = new RbacSession(); _rbac.AddPermission("owner", "Delete"); _rbac.AddPermission("owner", "Transfer"); _rbac.AddPermission("member", "Comment"); _rbac.AddPermission("member", "Create"); _rbac.AddPermission("user", "Read"); _rbac.AddPermission("mantainer", "Maintnance"); _rbac.UserIsInRoleIf("mantainer", u => u.Identity.Name == "Bob"); _rbac.AddPermission("mantainer", "Maintnance"); _rbac.AddPermission("Teacher", "Grading"); _rbac.AddPermission("Evaluator", "evaluation"); _rbac.AddUserRoleForTypeIf<string>("Teacher", (user, resource) => resource == "Hello world"); _owner = new RbacPrincipal(new Principal { Roles = { "owner", "member", "user" } }, _rbac); _member = new RbacPrincipal(new Principal { Roles = { "member", "user" } }, _rbac); _user = new RbacPrincipal(new Principal { Roles = { "member", "user" } }, _rbac); _evaluator = new RbacPrincipal(new Principal { Roles = { "evaluator" } }, _rbac); _teacher = new RbacPrincipal(new Principal { Roles = { "teacher" } }, _rbac); _bob = new RbacPrincipal(new Principal { Name = "Bob", Roles = { "owner" } }, _rbac); }
public CanDoAction(RbacPrincipal principal) { _principal = principal; }
public IsUserInRole(RbacPrincipal principal) { _principal = principal; }