code: public static Optional<Principal> withSubjectClaim(final Claims claims) {
          final String subject = claims.getSubject();
          if (subject == null) return empty();
          if (isUrl(subject)) {
              LOGGER.debug("Using JWT claim with sub: {}", subject);
              return of(new OAuthPrincipal(subject));
          }
  
          final String iss = claims.getIssuer();
          // combine the iss and sub fields if that appears possible
          if (iss != null && isUrl(iss)) {
              final String webid = iss.endsWith("/") ? iss + subject : iss + "/" + subject;
              LOGGER.debug("Using JWT claim with generated webid: {}", webid);
              return of(new OAuthPrincipal(webid));
          }
  
          // Use an OIDC website claim, if one exists
          if (claims.containsKey(WEBSITE)) {
              final String site = claims.get(WEBSITE, String.class);
              LOGGER.debug("Using JWT claim with website: {}", site);
              return of(new OAuthPrincipal(site));
          }
          return empty();
      }
docs: Generate a Principal from a subject claim.
  @param claims the JWT claims
  @return a Principal, if one can be generated from standard claims