List of usage examples for org.springframework.boot.actuate.autoconfigure.cloudfoundry AccessLevel isAccessAllowed
public boolean isAccessAllowed(String id)
From source file:org.springframework.boot.actuate.autoconfigure.cloudfoundry.CloudFoundrySecurityInterceptor.java
private void check(HttpServletRequest request, String path) throws Exception { Token token = getToken(request);/*from w w w.j a v a 2 s. c om*/ this.tokenValidator.validate(token); AccessLevel accessLevel = this.cloudFoundrySecurityService.getAccessLevel(token.toString(), this.applicationId); if (!accessLevel.isAccessAllowed(path)) { throw new CloudFoundryAuthorizationException(CloudFoundryAuthorizationException.Reason.ACCESS_DENIED, "Access denied"); } accessLevel.put(request); }
From source file:org.springframework.boot.actuate.autoconfigure.cloudfoundry.CloudFoundryWebEndpointServletHandlerMapping.java
@ResponseBody private Map<String, Map<String, Link>> links(HttpServletRequest request, HttpServletResponse response) { CloudFoundrySecurityInterceptor.SecurityResponse securityResponse = this.securityInterceptor .preHandle(request, ""); if (!securityResponse.getStatus().equals(HttpStatus.OK)) { sendFailureResponse(response, securityResponse); }// ww w.j a va 2s. c o m AccessLevel accessLevel = AccessLevel.get(request); Map<String, Link> links = this.endpointLinksResolver.resolveLinks(getEndpoints(), request.getRequestURL().toString()); Map<String, Link> filteredLinks = new LinkedHashMap<>(); if (accessLevel == null) { return Collections.singletonMap("_links", filteredLinks); } filteredLinks = links.entrySet().stream() .filter((e) -> e.getKey().equals("self") || accessLevel.isAccessAllowed(e.getKey())) .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue)); return Collections.singletonMap("_links", filteredLinks); }
From source file:org.springframework.boot.actuate.autoconfigure.cloudfoundry.servlet.CloudFoundrySecurityInterceptor.java
private void check(HttpServletRequest request, String endpointId) throws Exception { Token token = getToken(request);//from w ww.ja va 2s . c om this.tokenValidator.validate(token); AccessLevel accessLevel = this.cloudFoundrySecurityService.getAccessLevel(token.toString(), this.applicationId); if (!accessLevel.isAccessAllowed(endpointId)) { throw new CloudFoundryAuthorizationException(Reason.ACCESS_DENIED, "Access denied"); } request.setAttribute(AccessLevel.REQUEST_ATTRIBUTE, accessLevel); }
From source file:org.springframework.boot.actuate.autoconfigure.cloudfoundry.servlet.CloudFoundryWebEndpointServletHandlerMapping.java
@ResponseBody private Map<String, Map<String, Link>> links(HttpServletRequest request, HttpServletResponse response) { SecurityResponse securityResponse = this.securityInterceptor.preHandle(request, ""); if (!securityResponse.getStatus().equals(HttpStatus.OK)) { sendFailureResponse(response, securityResponse); }//from w w w . j a v a 2 s . c o m AccessLevel accessLevel = (AccessLevel) request.getAttribute(AccessLevel.REQUEST_ATTRIBUTE); Map<String, Link> links = this.endpointLinksResolver.resolveLinks(getEndpoints(), request.getRequestURL().toString()); Map<String, Link> filteredLinks = new LinkedHashMap<>(); if (accessLevel == null) { return Collections.singletonMap("_links", filteredLinks); } filteredLinks = links.entrySet().stream() .filter((e) -> e.getKey().equals("self") || accessLevel.isAccessAllowed(e.getKey())) .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue)); return Collections.singletonMap("_links", filteredLinks); }