クラス MapBasedMethodSecurityMetadataSource

  • 実装されているすべてのインターフェース:
    org.springframework.aop.framework.AopInfrastructureBeanorg.springframework.beans.factory.Awareorg.springframework.beans.factory.BeanClassLoaderAwareMethodSecurityMetadataSourceSecurityMetadataSource

    public class MapBasedMethodSecurityMetadataSource
    extends AbstractFallbackMethodSecurityMetadataSource
    implements org.springframework.beans.factory.BeanClassLoaderAware
    メソッドまたはクラスシグネチャーの ConfigAttribute のリストを格納します。

    このクラスは、メソッドセキュリティメタデータの XML ベースの定義のための MethodSecurityMetadataSource の推奨実装です。XML ベースの定義を支援するために、ワイルドカードのサポートが提供されています。

    導入:
    2.0
    • フィールドの詳細

      • methodMap

        protected final java.util.Map<org.springframework.security.access.method.MapBasedMethodSecurityMetadataSource.RegisteredMethod,​java.util.List<ConfigAttribute>> methodMap
        RegisteredMethod から ConfigAttribute リストへのマップ
    • コンストラクターの詳細

      • MapBasedMethodSecurityMetadataSource

        public MapBasedMethodSecurityMetadataSource()
      • MapBasedMethodSecurityMetadataSource

        public MapBasedMethodSecurityMetadataSource​(java.util.Map<java.lang.String,​java.util.List<ConfigAttribute>> methodMap)
        MapBasedMethodSecurityMetadataSource
        パラメーター:
        methodMap - メソッド名の ConfigAttribute へのマップ。
    • メソッドの詳細

      • findAttributes

        protected java.util.Collection<ConfigAttribute> findAttributes​(java.lang.Class<?> clazz)
        実装はクラスレベルの属性をサポートしていません。
        次で指定:
        クラス AbstractFallbackMethodSecurityMetadataSourcefindAttributes 
        パラメーター:
        clazz - 呼び出しのターゲットクラス (非 null)
        戻り値:
        セキュリティメタデータ (メタデータが適用されない場合は null)
      • findAttributes

        protected java.util.Collection<ConfigAttribute> findAttributes​(java.lang.reflect.Method method,
                                                                       java.lang.Class<?> targetClass)
        メソッド継承ツリーをたどって、適用可能な最も具体的な宣言を見つけます。
        次で指定:
        クラス AbstractFallbackMethodSecurityMetadataSourcefindAttributes 
        パラメーター:
        method - 現在の呼び出しのメソッド (非 null)
        targetClass - 呼び出しのターゲットクラス (null の場合があります)
        戻り値:
        セキュリティメタデータ (メタデータが適用されない場合は null)
      • addSecureMethod

        public void addSecureMethod​(java.lang.Class<?> javaType,
                                    java.lang.String mappedName,
                                    java.util.List<ConfigAttribute> attr)
        安全なメソッドの構成属性を追加します。マップされたメソッド名は、複数のメソッドに一致させるために、* で終了または開始できます。
        パラメーター:
        javaType - セキュリティ構成属性が適用されるターゲットインターフェースまたはクラス
        mappedName - javaType が宣言または継承したマッピングされたメソッド名
        attr - メソッドに関連する必要な権限
      • addSecureMethod

        public void addSecureMethod​(java.lang.Class<?> javaType,
                                    java.lang.reflect.Method method,
                                    java.util.List<ConfigAttribute> attr)
        たとえば、ポイントカット式を使用してメソッドが一致した場合など、特定のメソッドの構成属性を追加します。メソッドのマップに一致がすでに存在する場合、既存の一致が保持されるため、このメソッドがより一般的なポイントカットに対して呼び出された場合、すでに追加されているより具体的なポイントカットはオーバーライドされません。

        このメソッドは、BeanFactory の初期化中にのみ呼び出す必要があります。

      • getAllConfigAttributes

        public java.util.Collection<ConfigAttribute> getAllConfigAttributes()
        この Bean に対して明示的に定義された構成属性を取得します。
        次で指定:
        インターフェース SecurityMetadataSourcegetAllConfigAttributes 
        戻り値:
        この Bean に対して明示的に定義された属性
      • setBeanClassLoader

        public void setBeanClassLoader​(java.lang.ClassLoader beanClassLoader)
        次で指定:
        インターフェース org.springframework.beans.factory.BeanClassLoaderAwaresetBeanClassLoader 
      • getMethodMapSize

        public int getMethodMapSize()
        戻り値:
        地図サイズ (単体テストと診断用)