File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ // Copyright 2025 The casbin Authors. All Rights Reserved.
2+ //
3+ // Licensed under the Apache License, Version 2.0 (the "License");
4+ // you may not use this file except in compliance with the License.
5+ // You may obtain a copy of the License at
6+ //
7+ // http://www.apache.org/licenses/LICENSE-2.0
8+ //
9+ // Unless required by applicable law or agreed to in writing, software
10+ // distributed under the License is distributed on an "AS IS" BASIS,
11+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+ // See the License for the specific language governing permissions and
13+ // limitations under the License.
14+
15+ package detector
16+
17+ import "github.com/casbin/casbin/v3/rbac"
18+
19+ // Detector defines the interface of a policy consistency checker, currently used to detect RBAC inheritance cycles.
20+ type Detector interface {
21+ // Check checks whether the current status of the passed-in RoleManager contains logical errors (e.g., cycles in role inheritance).
22+ // param: rm RoleManager instance
23+ // return: If an error is found, return a descriptive error; otherwise return nil.
24+ Check (rm rbac.RoleManager ) error
25+ }
You can’t perform that action at this time.
0 commit comments