AbstractSecurityInterceptor는 안전 객체의 콜백 단계 동안
SecurityContext와 SecurityContextHolder내의
Authentication 객체를 임시로 대체할 수 있다.
이는 오직 원래의 Authentication 객체가
AuthenticationManager와 AccessDecisionManager에 의해
성공적으로 처리될 경우에만 일어난다. RunAsManager는 대체할
Authentication 객체를 가리킬 것이며,
만약 Authentication 객체가 존재한다면, 그 객체는
SecurityInterceptorCallback상에서 사용되어야 한다.
안전 객체의 콜백 단계 동안 일시적으로 Authentication 객체를
대체함으로써 안전한 호출을 수행할 때 다른 인증 및 권한부여 신원정보를 필요로 하는
다른 객체를 요청하는 것이 가능해질 것이다. 뿐만 아니라 특정
GrantedAuthority 객체에 대한 내부 보안 검사를 수행하는 것도
가능해질 것이다. Acegi Security에는 SecurityContextHolder의
내용에 근거하여 원격 프로토콜을 자동적으로 설정하는 수 많은 헬퍼 클래스들이 제공되므로
이러한 run-as 대체는 원격 웹 서비스를 호출할 경우에 특히 유용하다.