先上一张图,以下:app
图1 AccessDecisionManager的类图ide
原文讲的很好,建议读者阅读原文,内容: "AccessDecisionManager is the class in charge of deciding if a particular Authentication object is allowed or not allowed to access a particular resource. In its main implementations, it delegates to AccessDecisionVoter objects, which basically compares the GrantedAuthorities in the Authentication object against the ConfigAttribute(s) required by the resource that is being accessed, deciding whether or not access should be granted. They emit their vote to allow access or not. The AccessDecisionManager implementations take the output from the voters into consideration and apply a determined strategy on whether or not to grant access"ui
AccessDecisionManager的三个实现类,以下:blog
图2 AccessDecisionManager hierarchyci
AccessDecisionManager的内部实现,委托给Voter。it