クラス RunAsManagerImpl

  • 実装されたすべてのインターフェース:
    org.springframework.beans.factory.InitializingBeanRunAsManager

    public class RunAsManagerImpl
    extends java.lang.Object
    implements RunAsManager, org.springframework.beans.factory.InitializingBean
    RunAsManager の基本的な具体的な実装。

    ConfigAttribute.getAttribute() の前に RUN_AS_ が付いている場合にアクティブになります。見つかった場合は、元の Authentication オブジェクトと同じプリンシパル、資格情報、付与された権限を含む新しい RunAsUserToken と、示された各 RUN_AS_ の SimpleGrantedAuthority が生成されます。作成された SimpleGrantedAuthority には、それがロールであることを示す特別なプレフィックス(デフォルトのプレフィックス値は ROLE_)が付けられ、次に RUN_AS_ キーワードの残りの部分が付けられます。例: RUN_AS_FOO は、ROLE_RUN_AS_FOO の付与された権限の作成になります。

    ロールプレフィックスは、他の場所で使用されているものと一致するように、デフォルトからオーバーライドされる場合があります。たとえば、既存のロールデータベースを別のプレフィックスで使用する場合などです。空のロールプレフィックスを指定することもできます。ただし、ConfigAttribute のさまざまなカテゴリをプレフィックスに基づいて適切に識別できず、投票やその他のアクションを実行すると結果が生じる可能性があるため、空のロールプレフィックスの使用には潜在的な課題があることに注意してください。ただし、このオプションは、プレフィックスなしで既存のロール名を使用する場合に役立つ可能性があり、たとえば JdbcDaoImpl で提供されているように、読み込むときにロールプレフィックスをプレフィックスとして付ける機能はありません。

    • コンストラクターのサマリー

      コンストラクター  
      コンストラクター 説明
      RunAsManagerImpl()
    • メソッドのサマリー

      すべてのメソッド   インスタンスメソッド   具象メソッド  
      修飾子と型 メソッド 説明
      voidafterPropertiesSet()
      AuthenticationbuildRunAs​(Authentication authentication, java.lang.Object object, java.util.Collection<ConfigAttribute> attributes)
      現在のセキュアオブジェクト呼び出しの置換 Authentication オブジェクト、または置換が不要な場合は null を返します。
      java.lang.StringgetKey()
      java.lang.StringgetRolePrefix()
      voidsetKey​(java.lang.String key)
      voidsetRolePrefix​(java.lang.String rolePrefix)
      ROLE_ のデフォルトのロール接頭辞を上書きできるようにします。
      booleansupports​(java.lang.Class<?> clazz)
      この実装は、提示されたセキュアオブジェクトをクエリしないため、あらゆる型のクラスをサポートします。
      booleansupports​(ConfigAttribute attribute)
      この RunAsManager が、渡された ConfigAttribute を処理できるかどうかを示します。
      • クラス java.lang.Object から継承されたメソッド

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • コンストラクターの詳細

      • RunAsManagerImpl

        public RunAsManagerImpl()
    • メソッドの詳細

      • afterPropertiesSet

        public void afterPropertiesSet()
        次で指定:
        インターフェース org.springframework.beans.factory.InitializingBeanafterPropertiesSet 
      • buildRunAs

        public Authentication buildRunAs​(Authentication authentication,
                                         java.lang.Object object,
                                         java.util.Collection<ConfigAttribute> attributes)
        インターフェースからコピーされた説明: RunAsManager
        現在のセキュアオブジェクト呼び出しの置換 Authentication オブジェクト、または置換が不要な場合は null を返します。
        次で指定:
        インターフェース RunAsManagerbuildRunAs 
        パラメーター:
        authentication - 安全なオブジェクトを呼び出す呼び出し元
        object - 呼び出されている保護されたオブジェクト
        attributes - 呼び出されるセキュアオブジェクトに関連付けられた構成属性
        戻り値:
        セキュアオブジェクト呼び出しの期間中に使用される置換オブジェクト、または Authentication をそのままにしておく必要がある場合は null 
      • getKey

        public java.lang.String getKey()
      • getRolePrefix

        public java.lang.String getRolePrefix()
      • setKey

        public void setKey​(java.lang.String key)
      • setRolePrefix

        public void setRolePrefix​(java.lang.String rolePrefix)
        ROLE_ のデフォルトのロール接頭辞を上書きできるようにします。これは通常は望ましくありませんが、空の値に設定できます。
        パラメーター:
        rolePrefix - 新しい接頭辞
      • supports

        public boolean supports​(ConfigAttribute attribute)
        インターフェースからコピーされた説明: RunAsManager
        この RunAsManager が、渡された ConfigAttribute を処理できるかどうかを示します。

        これにより、AbstractSecurityInterceptor は、構成された AccessDecisionManager および / または RunAsManager および / または AfterInvocationManager が消費できるすべての構成属性をチェックできます。

        次で指定:
        インターフェース RunAsManagersupports 
        パラメーター:
        attribute - AbstractSecurityInterceptor に対して構成された構成属性
        戻り値:
        この RunAsManager が渡された構成属性をサポートできる場合は true 
      • supports

        public boolean supports​(java.lang.Class<?> clazz)
        この実装は、提示されたセキュアオブジェクトをクエリしないため、あらゆる型のクラスをサポートします。
        次で指定:
        インターフェース RunAsManagersupports 
        パラメーター:
        clazz - 安全なオブジェクト
        戻り値:
        常に true