Class ServiceAccountAwareSecurityManager

java.lang.Object
com.gigaspaces.security.serviceaccount.ServiceAccountAwareSecurityManager
All Implemented Interfaces:
SecurityManager

public class ServiceAccountAwareSecurityManager extends Object implements SecurityManager
A SecurityManager wrapper that adds service-account JWT authentication on top of any legacy SecurityManager (File-based or Spring-based).

Authentication chain (mirrors the ProviderManager pattern in the auth server):

  1. If the password looks like a JWT → validate signature via auth server JWK endpoint, extract privilege strings from the sa_scope claim.
  2. Otherwise (or if JWT validation fails) → delegate to the wrapped legacy SecurityManager.

Required configuration properties (in security.properties):

   com.gs.security.security-manager.class=com.gigaspaces.security.serviceaccount.ServiceAccountAwareSecurityManager
   com.gs.security.service-account.delegate-class=com.gigaspaces.security.spring.SpringSecurityManager
   com.gs.security.service-account.auth-url=http://localhost:9000
 
All other properties (e.g. spring-security-config-location) are forwarded to the delegate.