A secure object is a term frequently used throughout the security
system. It does not refer to a business object that is being
secured, but instead refers to some infrastructure object that can have
security facilities provided for it by Spring Security.
For example, one secure object would be MethodInvocation
,
whilst another would be HTTP
{@link org.springframework.security.web.FilterInvocation}. Note these are
infrastructure objects and their design allows them to represent a large
variety of actual resources that might need to be secured, such as business
objects or HTTP request URLs.
Each secure object typically has its
own interceptor package.
Each package usually includes a concrete security interceptor (which
subclasses {@link org.springframework.security.access.intercept.AbstractSecurityInterceptor},
an appropriate {@link org.springframework.security.access.SecurityMetadataSource}
for the type of resources the secure object represents, and a property editor
to populate the SecurityMetadataSource
.