私はBean_2からBean_1メソッドを呼び出しています。 Bean_1は、セキュリティ設定、次があります。Spring Security RunAsManagerImplが動作しない
<protect-pointcut expression="execution(* com.proficiency.cg.core.blc.Bean_1.*.*(..))" access="ROLE_Administrators,RUN_AS_InternalRole"/>
Bean_2 - セキュリティ設定は次の通りです: -
<protect-pointcut expression="execution(* com.proficiency.cg.core.blc.Bean_2.*.*(..))" access="ROLE_InternalRole"/>
は、追加で、私はRunAsManagerを設定します。
私は私のテストプログラムを実行します
<b:bean id="runAsManager"
class="org.springframework.security.access.intercept.RunAsManagerImpl">
<b:property name="key" value="prof_key"/>
</b:bean>
<b:bean id="runAsAuthenticationProvider"
class="org.springframework.security.access.intercept.RunAsImplAuthenticationProvider">
<b:property name="key" value="prof_key"/>
</b:bean>
<global-method-security secured-annotations="enabled" run-as-manager-ref="runAsManager" authentication-manager-ref="authenticationManager">
- Bean_2へのアクセス中にセキュリティ例外が発生します。 結論:RunAsManagerは適切に、または環礁では機能しません。