クラス ConsensusBased
- java.lang.Object
-
- org.springframework.security.access.vote.AbstractAccessDecisionManager
-
- org.springframework.security.access.vote.ConsensusBased
- 実装されたすべてのインターフェース:
org.springframework.beans.factory.Aware
、org.springframework.beans.factory.InitializingBean
、org.springframework.context.MessageSourceAware
、AccessDecisionManager
public class ConsensusBased extends AbstractAccessDecisionManager
コンセンサスベースのアプローチを使用するAccessDecisionManager
のシンプルで具体的な実装。ここでの「コンセンサス」とは、全会一致(棄権を無視)ではなく、多数決(棄権を無視)を意味します。全会一致が必要な場合は、
UnanimousBased
を参照してください。
フィールドサマリー
クラス org.springframework.security.access.vote.AbstractAccessDecisionManager から継承されたフィールド
logger, messages
コンストラクターのサマリー
コンストラクター コンストラクター 説明 ConsensusBased(java.util.List<AccessDecisionVoter<?>> decisionVoters)
メソッドのサマリー
すべてのメソッド インスタンスメソッド 具象メソッド 修飾子と型 メソッド 説明 void
decide(Authentication authentication, java.lang.Object object, java.util.Collection<ConfigAttribute> configAttributes)
この具体的な実装は、構成されたすべてのAccessDecisionVoter
をポーリングするだけで、完了時に、拒否されたレスポンスに対して許可されたコンセンサスを決定します。boolean
isAllowIfEqualGrantedDeniedDecisions()
void
setAllowIfEqualGrantedDeniedDecisions(boolean allowIfEqualGrantedDeniedDecisions)
クラス org.springframework.security.access.vote.AbstractAccessDecisionManager から継承されたメソッド
afterPropertiesSet, checkAllowIfAllAbstainDecisions, getDecisionVoters, isAllowIfAllAbstainDecisions, setAllowIfAllAbstainDecisions, setMessageSource, supports, supports, toString
コンストラクターの詳細
ConsensusBased
public ConsensusBased(java.util.List<AccessDecisionVoter<?>> decisionVoters)
メソッドの詳細
decide
public void decide(Authentication authentication, java.lang.Object object, java.util.Collection<ConfigAttribute> configAttributes) throws AccessDeniedException
この具体的な実装は、構成されたすべてのAccessDecisionVoter
をポーリングするだけで、完了時に、拒否されたレスポンスに対して許可されたコンセンサスを決定します。賛成票と拒否票の数が等しい場合、決定は
isAllowIfEqualGrantedDeniedDecisions()
プロパティに基づいて行われます(デフォルトは true)。すべての
AccessDecisionVoter
が投票を棄権した場合、決定はAbstractAccessDecisionManager.isAllowIfAllAbstainDecisions()
プロパティに基づいて行われます(デフォルトは false)。- パラメーター:
authentication
- メソッドを呼び出す呼び出し元object
- 保護されたオブジェクトconfigAttributes
- 呼び出されるメソッドに関連付けられた構成属性- 例外:
AccessDeniedException
- アクセスが拒否された場合
isAllowIfEqualGrantedDeniedDecisions
public boolean isAllowIfEqualGrantedDeniedDecisions()
setAllowIfEqualGrantedDeniedDecisions
public void setAllowIfEqualGrantedDeniedDecisions(boolean allowIfEqualGrantedDeniedDecisions)