Definded with properties users (static) are configured using property map (no need of indexes)
AuthenticationProvider that authenticates them is always registered (if not needed - don't configure them)
UserDetailService (in case of missing - won't be registered)
Spring security user (spring.security.username) will be registered together with other users (if any). If any - it will be system-wide, otherwise tenant-scoped.
UserPrincipal renamed to TenantAwareUser in order to match its purpose.
Some if its fields are removes as not needed - to be closer to spring security user