code: protected void recreateFullSubjects(SecurityService securityService, AtomicServiceReference<UnauthenticatedSubjectService> unauthenticatedSubjectServiceRef) {
          callerSubject = recreateFullSubject(callerPrincipal, securityService, unauthenticatedSubjectServiceRef, callerSubjectCacheKey);
          if (!subjectsAreEqual) {
              invocationSubject = recreateFullSubject(invocationPrincipal, securityService, unauthenticatedSubjectServiceRef, invocationSubjectCacheKey);
          } else {
              invocationSubject = callerSubject;
          }
      }
docs: After deserializing the security context, re-inflate the subjects (need to add the missing credentials, since these don't get serialized)
  
  @param securityService the security service to use for authenticating the user
  @param unauthenticatedSubjectServiceRef reference to the unauthenticated subject service for creating the unauthenticated subject