org.apache.catalina.connector.Request.newSubject()方法的使用及代码示例

x33g5p2x  于2022-01-28 转载在 其他  
字(1.9k)|赞(0)|评价(0)|浏览(92)

本文整理了Java中org.apache.catalina.connector.Request.newSubject方法的一些代码示例,展示了Request.newSubject的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Request.newSubject方法的具体详情如下:
包路径:org.apache.catalina.connector.Request
类名称:Request
方法名:newSubject

Request.newSubject介绍

暂无

代码示例

代码示例来源:origin: org.apache.tomcat/tomcat-catalina

/**
 * Set the Principal who has been authenticated for this Request.  This
 * value is also used to calculate the value to be returned by the
 * <code>getRemoteUser()</code> method.
 *
 * @param principal The user Principal
 */
public void setUserPrincipal(final Principal principal) {
  if (Globals.IS_SECURITY_ENABLED && principal != null) {
    if (subject == null) {
      final HttpSession session = getSession(false);
      if (session == null) {
        // Cache the subject in the request
        subject = newSubject(principal);
      } else {
        // Cache the subject in the request and the session
        subject = (Subject) session.getAttribute(Globals.SUBJECT_ATTR);
        if (subject == null) {
          subject = newSubject(principal);
          session.setAttribute(Globals.SUBJECT_ATTR, subject);
        } else {
          subject.getPrincipals().add(principal);
        }
      }
    } else {
      subject.getPrincipals().add(principal);
    }
  }
  userPrincipal = principal;
}

代码示例来源:origin: org.ops4j.pax.tipi/org.ops4j.pax.tipi.tomcat-embed-core

/**
 * Set the Principal who has been authenticated for this Request.  This
 * value is also used to calculate the value to be returned by the
 * <code>getRemoteUser()</code> method.
 *
 * @param principal The user Principal
 */
public void setUserPrincipal(final Principal principal) {
  if (Globals.IS_SECURITY_ENABLED && principal != null) {
    if (subject == null) {
      final HttpSession session = getSession(false);
      if (session == null) {
        // Cache the subject in the request
        subject = newSubject(principal);
      } else {
        // Cache the subject in the request and the session
        subject = (Subject) session.getAttribute(Globals.SUBJECT_ATTR);
        if (subject == null) {
          subject = newSubject(principal);
          session.setAttribute(Globals.SUBJECT_ATTR, subject);
        } else {
          subject.getPrincipals().add(principal);
        }
      }
    } else {
      subject.getPrincipals().add(principal);
    }
  }
  userPrincipal = principal;
}

相关文章

微信公众号

最新文章

更多

Request类方法