当前位置: 首页>>代码示例>>Java>>正文


Java ServletSecurity类代码示例

本文整理汇总了Java中javax.servlet.annotation.ServletSecurity的典型用法代码示例。如果您正苦于以下问题:Java ServletSecurity类的具体用法?Java ServletSecurity怎么用?Java ServletSecurity使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


ServletSecurity类属于javax.servlet.annotation包,在下文中一共展示了ServletSecurity类的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: processServletSecurityAnnotation

import javax.servlet.annotation.ServletSecurity; //导入依赖的package包/类
private void processServletSecurityAnnotation(Class<?> clazz) {
    // Calling this twice isn't harmful so no syncs
    servletSecurityAnnotationScanRequired = false;

    Context ctxt = (Context) getParent();
    
    if (ctxt.getIgnoreAnnotations()) {
        return;
    }

    ServletSecurity secAnnotation =
        clazz.getAnnotation(ServletSecurity.class);
    if (secAnnotation != null) {
        ctxt.addServletSecurity(
                new ApplicationServletRegistration(this, ctxt),
                new ServletSecurityElement(secAnnotation));
    }
}
 
开发者ID:liaokailin,项目名称:tomcat7,代码行数:19,代码来源:StandardWrapper.java

示例2: ServletSecurityElement

import javax.servlet.annotation.ServletSecurity; //导入依赖的package包/类
/**
 * Create from an annotation.
 * @param annotation
 * @throws IllegalArgumentException if a method name is specified more than
 */
public ServletSecurityElement(ServletSecurity annotation) {
    this(new HttpConstraintElement(annotation.value().value(),
            annotation.value().transportGuarantee(),
            annotation.value().rolesAllowed()));
    
    List<HttpMethodConstraintElement> l =
        new ArrayList<HttpMethodConstraintElement>();
    HttpMethodConstraint[] constraints = annotation.httpMethodConstraints();
    if (constraints != null) {
        for (int i = 0; i < constraints.length; i++) {
            HttpMethodConstraintElement e =
                new HttpMethodConstraintElement(constraints[i].value(),
                        new HttpConstraintElement(
                                constraints[i].emptyRoleSemantic(),
                                constraints[i].transportGuarantee(),
                                constraints[i].rolesAllowed()));
            l.add(e);
        }
    }
    addHttpMethodConstraints(l);
}
 
开发者ID:liaokailin,项目名称:tomcat7,代码行数:27,代码来源:ServletSecurityElement.java

示例3: ServletSecurityElement

import javax.servlet.annotation.ServletSecurity; //导入依赖的package包/类
/**
 * Constructs an instance from a {@link ServletSecurity} annotation value.
 *
 * @param annotation the annotation value
 *
 * @throws IllegalArgumentException if duplicate method names are
 * detected
 */
public ServletSecurityElement(ServletSecurity annotation) {
    super(annotation.value().value(),
            annotation.value().transportGuarantee(),
            annotation.value().rolesAllowed());
    this.methodConstraints = new HashSet<HttpMethodConstraintElement>();
    for (HttpMethodConstraint constraint :
            annotation.httpMethodConstraints()) {
        this.methodConstraints.add(
            new HttpMethodConstraintElement(
                constraint.value(),
                new HttpConstraintElement(constraint.emptyRoleSemantic(),
                    constraint.transportGuarantee(),
                    constraint.rolesAllowed())));
    }
    methodNames = checkMethodNames(this.methodConstraints);
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:25,代码来源:ServletSecurityElement.java

示例4: processServletSecurityAnnotation

import javax.servlet.annotation.ServletSecurity; //导入依赖的package包/类
private void processServletSecurityAnnotation(Class<?> clazz) {
	// Calling this twice isn't harmful so no syncs
	servletSecurityAnnotationScanRequired = false;

	Context ctxt = (Context) getParent();

	if (ctxt.getIgnoreAnnotations()) {
		return;
	}

	ServletSecurity secAnnotation = clazz.getAnnotation(ServletSecurity.class);
	if (secAnnotation != null) {
		ctxt.addServletSecurity(new ApplicationServletRegistration(this, ctxt),
				new ServletSecurityElement(secAnnotation));
	}
}
 
开发者ID:how2j,项目名称:lazycat,代码行数:17,代码来源:StandardWrapper.java

示例5: ServletSecurityElement

import javax.servlet.annotation.ServletSecurity; //导入依赖的package包/类
/**
 * Create from an annotation.
 * 
 * @param annotation
 * @throws IllegalArgumentException
 *             if a method name is specified more than
 */
public ServletSecurityElement(ServletSecurity annotation) {
	this(new HttpConstraintElement(annotation.value().value(), annotation.value().transportGuarantee(),
			annotation.value().rolesAllowed()));

	List<HttpMethodConstraintElement> l = new ArrayList<HttpMethodConstraintElement>();
	HttpMethodConstraint[] constraints = annotation.httpMethodConstraints();
	if (constraints != null) {
		for (int i = 0; i < constraints.length; i++) {
			HttpMethodConstraintElement e = new HttpMethodConstraintElement(constraints[i].value(),
					new HttpConstraintElement(constraints[i].emptyRoleSemantic(),
							constraints[i].transportGuarantee(), constraints[i].rolesAllowed()));
			l.add(e);
		}
	}
	addHttpMethodConstraints(l);
}
 
开发者ID:how2j,项目名称:lazycat,代码行数:24,代码来源:ServletSecurityElement.java

示例6: contextInitialized

import javax.servlet.annotation.ServletSecurity; //导入依赖的package包/类
@Override
public void contextInitialized(ServletContextEvent servletContextEvent) {
    System.out.println(getClass() + " contextInitialized");
    ServletContext ctx = servletContextEvent.getServletContext();
    ServletRegistration reg = ctx.addServlet("uploadServlet", FileUploadServlet.class);
    reg.addMapping("/upload");
    reg.setInitParameter("text", "Servlet init parameter");

    FilterRegistration filterReg = ctx.addFilter("/*", MyFilter.class);
    filterReg.addMappingForUrlPatterns(EnumSet.of(DispatcherType.REQUEST), true, "/*");
    filterReg.setInitParameter("log", "Log message in filter");

    ctx.addListener(MyRequestlistener.class);

    ServletRegistration.Dynamic securedServlet = ctx.addServlet("Programmatic Security Servlet", MyProgrammaticSecuredServlet.class);
    securedServlet.addMapping("/progsec");
    HttpConstraintElement sec = new HttpConstraintElement(ServletSecurity.TransportGuarantee.CONFIDENTIAL, new String[] { "admin" });
    ServletSecurityElement secElem = new ServletSecurityElement(sec);
    securedServlet.setServletSecurity(secElem);
}
 
开发者ID:kslisenko,项目名称:ocejwcd-6-certification,代码行数:21,代码来源:MyServletContextListener.java

示例7: createConstraint

import javax.servlet.annotation.ServletSecurity; //导入依赖的package包/类
private static SecurityConstraint createConstraint(
        HttpConstraintElement element, String urlPattern, boolean alwaysCreate) {

    SecurityConstraint constraint = new SecurityConstraint();
    SecurityCollection collection = new SecurityCollection();
    boolean create = alwaysCreate;
    
    if (element.getTransportGuarantee() !=
            ServletSecurity.TransportGuarantee.NONE) {
        constraint.setUserConstraint(element.getTransportGuarantee().name());
        create = true;
    }
    if (element.getRolesAllowed().length > 0) {
        String[] roles = element.getRolesAllowed();
        for (String role : roles) {
            constraint.addAuthRole(role);
        }
        create = true;
    }
    if (element.getEmptyRoleSemantic() != EmptyRoleSemantic.PERMIT) {
        constraint.setAuthConstraint(true);
        create = true;
    }
    
    if (create) {
        collection.addPattern(urlPattern);
        constraint.addCollection(collection);
        return constraint;
    }
    
    return null;
}
 
开发者ID:liaokailin,项目名称:tomcat7,代码行数:33,代码来源:SecurityConstraint.java

示例8: run

import javax.servlet.annotation.ServletSecurity; //导入依赖的package包/类
@Override
public Void run() {
    final ServletSecurity security = servletInfo.getServletClass().getAnnotation(ServletSecurity.class);
    if (security != null) {

        ServletSecurityInfo servletSecurityInfo = new ServletSecurityInfo()
                .setEmptyRoleSemantic(security.value().value() == ServletSecurity.EmptyRoleSemantic.DENY ? SecurityInfo.EmptyRoleSemantic.DENY : SecurityInfo.EmptyRoleSemantic.PERMIT)
                .setTransportGuaranteeType(security.value().transportGuarantee() == ServletSecurity.TransportGuarantee.CONFIDENTIAL ? TransportGuaranteeType.CONFIDENTIAL : TransportGuaranteeType.NONE)
                .addRolesAllowed(security.value().rolesAllowed());
        for (HttpMethodConstraint constraint : security.httpMethodConstraints()) {
            servletSecurityInfo.addHttpMethodSecurityInfo(new HttpMethodSecurityInfo()
                    .setMethod(constraint.value()))
                    .setEmptyRoleSemantic(constraint.emptyRoleSemantic() == ServletSecurity.EmptyRoleSemantic.DENY ? SecurityInfo.EmptyRoleSemantic.DENY : SecurityInfo.EmptyRoleSemantic.PERMIT)
                    .setTransportGuaranteeType(constraint.transportGuarantee() == ServletSecurity.TransportGuarantee.CONFIDENTIAL ? TransportGuaranteeType.CONFIDENTIAL : TransportGuaranteeType.NONE)
                    .addRolesAllowed(constraint.rolesAllowed());
        }
        servletInfo.setServletSecurityInfo(servletSecurityInfo);
    }
    final MultipartConfig multipartConfig = servletInfo.getServletClass().getAnnotation(MultipartConfig.class);
    if (multipartConfig != null) {
        servletInfo.setMultipartConfig(new MultipartConfigElement(multipartConfig.location(), multipartConfig.maxFileSize(), multipartConfig.maxRequestSize(), multipartConfig.fileSizeThreshold()));
    }
    final RunAs runAs = servletInfo.getServletClass().getAnnotation(RunAs.class);
    if (runAs != null) {
        servletInfo.setRunAs(runAs.value());
    }
    final DeclareRoles declareRoles = servletInfo.getServletClass().getAnnotation(DeclareRoles.class);
    if (declareRoles != null) {
        deploymentInfo.addSecurityRoles(declareRoles.value());
    }
    return null;
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:33,代码来源:ServletContextImpl.java

示例9: createConstraint

import javax.servlet.annotation.ServletSecurity; //导入依赖的package包/类
private static SecurityConstraint createConstraint(HttpConstraintElement element, String urlPattern,
		boolean alwaysCreate) {

	SecurityConstraint constraint = new SecurityConstraint();
	SecurityCollection collection = new SecurityCollection();
	boolean create = alwaysCreate;

	if (element.getTransportGuarantee() != ServletSecurity.TransportGuarantee.NONE) {
		constraint.setUserConstraint(element.getTransportGuarantee().name());
		create = true;
	}
	if (element.getRolesAllowed().length > 0) {
		String[] roles = element.getRolesAllowed();
		for (String role : roles) {
			constraint.addAuthRole(role);
		}
		create = true;
	}
	if (element.getEmptyRoleSemantic() != EmptyRoleSemantic.PERMIT) {
		constraint.setAuthConstraint(true);
		create = true;
	}

	if (create) {
		collection.addPattern(urlPattern);
		constraint.addCollection(collection);
		return constraint;
	}

	return null;
}
 
开发者ID:how2j,项目名称:lazycat,代码行数:32,代码来源:SecurityConstraint.java

示例10: createConstraint

import javax.servlet.annotation.ServletSecurity; //导入依赖的package包/类
private static SecurityConstraint createConstraint(
        HttpConstraintElement element, String urlPattern, boolean alwaysCreate) {

    SecurityConstraint constraint = new SecurityConstraint();
    SecurityCollection collection = new SecurityCollection();
    boolean create = alwaysCreate;

    if (element.getTransportGuarantee() !=
            ServletSecurity.TransportGuarantee.NONE) {
        constraint.setUserConstraint(element.getTransportGuarantee().name());
        create = true;
    }
    if (element.getRolesAllowed().length > 0) {
        String[] roles = element.getRolesAllowed();
        for (String role : roles) {
            constraint.addAuthRole(role);
        }
        create = true;
    }
    if (element.getEmptyRoleSemantic() != EmptyRoleSemantic.PERMIT) {
        constraint.setAuthConstraint(true);
        create = true;
    }

    if (create) {
        collection.addPattern(urlPattern);
        constraint.addCollection(collection);
        return constraint;
    }

    return null;
}
 
开发者ID:nkasvosve,项目名称:beyondj,代码行数:33,代码来源:SecurityConstraint.java


注:本文中的javax.servlet.annotation.ServletSecurity类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。