MCPcopy Create free account
hub / github.com/astercloud/aster / sortPoliciesByPriority

Method sortPoliciesByPriority

pkg/security/access_control.go:738–752  ·  view source on GitHub ↗

sortPoliciesByPriority 按优先级排序策略

(policies []*AccessPolicy)

Source from the content-addressed store, hash-verified

736
737// sortPoliciesByPriority 按优先级排序策略
738func (ac *AccessController) sortPoliciesByPriority(policies []*AccessPolicy) []*AccessPolicy {
739 // 简单排序,优先级数值越小优先级越高
740 sorted := make([]*AccessPolicy, len(policies))
741 copy(sorted, policies)
742
743 for i := range len(sorted) - 1 {
744 for j := i + 1; j < len(sorted); j++ {
745 if sorted[i].Priority > sorted[j].Priority {
746 sorted[i], sorted[j] = sorted[j], sorted[i]
747 }
748 }
749 }
750
751 return sorted
752}
753
754// getUserPermissions 获取用户的所有权限
755func (ac *AccessController) getUserPermissions(userID string) []string {

Callers 1

evaluatePoliciesMethod · 0.95

Calls 1

copyFunction · 0.85

Tested by

no test coverage detected