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

Method policyApplies

pkg/security/access_control.go:655–672  ·  view source on GitHub ↗

policyApplies 检查策略是否适用

(policy *AccessPolicy, userID, resource, action string, context map[string]any)

Source from the content-addressed store, hash-verified

653
654// policyApplies 检查策略是否适用
655func (ac *AccessController) policyApplies(policy *AccessPolicy, userID, resource, action string, context map[string]any) bool {
656 // 检查主体
657 if policy.Principal != userID && policy.Principal != "*" {
658 return false
659 }
660
661 // 检查资源
662 if policy.Resource != "*" && policy.Resource != resource {
663 return false
664 }
665
666 // 检查操作
667 if policy.Action != "*" && policy.Action != action {
668 return false
669 }
670
671 return true
672}
673
674// evaluatePolicyConditions 评估策略条件
675func (ac *AccessController) evaluatePolicyConditions(conditions []PolicyCondition, userID, resource, action string, context map[string]any) bool {

Callers 1

evaluatePoliciesMethod · 0.95

Calls

no outgoing calls

Tested by

no test coverage detected