本文整理了Java中javax.ws.rs.container.ContainerRequestContext.setSecurityContext()
方法的一些代码示例,展示了ContainerRequestContext.setSecurityContext()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ContainerRequestContext.setSecurityContext()
方法的具体详情如下:
包路径:javax.ws.rs.container.ContainerRequestContext
类名称:ContainerRequestContext
方法名:setSecurityContext
[英]Set a new injectable security context information for the current request. The SecurityContext#getUserPrincipal() must return nullif the current request has not been authenticated.
[中]为当前请求设置新的可注入安全上下文信息。如果当前请求尚未通过身份验证,则SecurityContext#getUserPrincipal()必须返回null。
代码示例来源:origin: jersey/jersey
@Override
public void filter(final ContainerRequestContext requestContext) throws IOException {
requestContext.setSecurityContext(new SecurityContext() {
@Override
public Principal getUserPrincipal() {
return new Principal() {
@Override
public String getName() {
return "Jersey";
}
};
}
@Override
public boolean isUserInRole(final String role) {
return "manager".equals(role);
}
@Override
public boolean isSecure() {
return false;
}
@Override
public String getAuthenticationScheme() {
return null;
}
});
}
}
代码示例来源:origin: apache/shiro
@Override
public void filter(ContainerRequestContext requestContext) throws IOException {
requestContext.setSecurityContext(new ShiroSecurityContext(requestContext));
}
}
代码示例来源:origin: jersey/jersey
@Override
public void filter(ContainerRequestContext filterContext) throws IOException {
User user = authenticate(filterContext);
filterContext.setSecurityContext(new Authorizer(user));
}
代码示例来源:origin: opentripplanner/OpenTripPlanner
@Override
public void filter(ContainerRequestContext containerRequest) throws WebApplicationException {
// Get the authentication passed in HTTP headers parameters
String auth = containerRequest.getHeaderString(HttpHeaders.AUTHORIZATION);
if (auth != null) {
if (auth.startsWith("Basic ") || auth.startsWith("basic ")) {
if ( ! containerRequest.getSecurityContext().isSecure()) unencrypted();
auth = auth.replaceFirst("[Bb]asic ", "");
String[] split = new String(BaseEncoding.base64().decode(auth)).split(":", 2);
if (split.length != 2) return;
String user = split[0];
String pass = split[1];
if (pass.equals(passwords.get(user))) {
containerRequest.setSecurityContext(makeSecurityContext(user, user));
} else {
unauthenticated (user);
}
}
}
}
代码示例来源:origin: dropwizard/dropwizard
final boolean secure = securityContext != null && securityContext.isSecure();
requestContext.setSecurityContext(new SecurityContext() {
@Override
public Principal getUserPrincipal() {
代码示例来源:origin: jersey/jersey
@Override
public void filter(ContainerRequestContext request) throws IOException {
// do not filter requests that do not use OAuth authentication
String authHeader = request.getHeaderString(OAuth1Parameters.AUTHORIZATION_HEADER);
if (authHeader == null || !authHeader.toUpperCase().startsWith(OAuth1Parameters.SCHEME.toUpperCase())) {
return;
}
// do not filter requests that matches to access or token resources
final Method handlingMethod = uriInfo.get().getMatchedResourceMethod().getInvocable().getHandlingMethod();
if (handlingMethod.isAnnotationPresent(TokenResource.class)
|| handlingMethod.getDeclaringClass().isAnnotationPresent(TokenResource.class)) {
return;
}
// do not filter if the request path matches pattern to ignore
if (match(ignorePathPattern, request.getUriInfo().getPath())) {
return;
}
OAuth1SecurityContext sc;
try {
sc = getSecurityContext(request);
} catch (OAuth1Exception e) {
if (optional) {
return;
} else {
throw e;
}
}
request.setSecurityContext(sc);
}
代码示例来源:origin: Graylog2/graylog2-server
requestContext.setSecurityContext(securityContext);
代码示例来源:origin: traccar/traccar
requestContext.setSecurityContext(securityContext);
} else {
Method method = resourceInfo.getResourceMethod();
代码示例来源:origin: oracle/helidon
request.setSecurityContext(new JerseySecurityContext(securityContext,
filterContext.getMethodSecurity(),
"https".equals(filterContext.getTargetUri().getScheme())));
代码示例来源:origin: stackoverflow.com
final HttpSession session = webRequest.getSession();
requestContext.setSecurityContext(new SecurityContext() {
@Override
public Principal getUserPrincipal() {
代码示例来源:origin: hugegraph/hugegraph
@Override
public void filter(ContainerRequestContext context) throws IOException {
User user = this.authenticate(context);
Authorizer authorizer = new Authorizer(user, context.getUriInfo());
context.setSecurityContext(authorizer);
}
代码示例来源:origin: stackoverflow.com
Authorizer authorizer = new Authorizer(roles, "admin",
originalContext.isSecure());
requestContext.setSecurityContext(authorizer);
代码示例来源:origin: openscoring/openscoring
@Override
public void filter(ContainerRequestContext requestContext){
SecurityContext securityCOntext= new NetworkSecurityContext(this.request){
private Set
@Override
public boolean isTrusted(String address){
return (this.trustedAddresses).contains(address) || (this.trustedAddresses).contains("*");
}
};
requestContext.setSecurityContext(securityContext);
}
代码示例来源:origin: stackoverflow.com
@PreMatching
public class AuthenticationRequestFilter implements ContainerRequestFilter {
@Override
public void filter(ContainerRequestContext request) throws IOException {
String authorization = request.getHeaderString("Authorization"); // get BasicAuth header
if (StringUtils.isNotEmpty(authorization) && StringUtils.startsWith(authorization, "Basic")) {
... do the password check... you have base64 encrypted string here
request.setSecurityContext(new SecurityContext(){
...implementation...
});
}}}
代码示例来源:origin: org.ikasan/ikasan-rest
@Override
public void filter(ContainerRequestContext context) throws IOException
{
Authentication authentication = authenticate(context);
if(authentication != null)
{
context.setSecurityContext(new Authorizer(authentication));
}
}
代码示例来源:origin: org.trellisldp/trellis-auth-basic
@Override
public void filter(final ContainerRequestContext requestContext) throws IOException {
final boolean secure = ofNullable(requestContext.getSecurityContext()).filter(SecurityContext::isSecure)
.isPresent();
getCredentials(requestContext)
.map(credentials -> authenticate(credentials)
.
.ifPresent(principal -> requestContext
.setSecurityContext(new BasiAuthSecurityContext(principal, secure)));
}
代码示例来源:origin: org.ikasan/ikasan-dashboard-jar
@Override
public void filter(ContainerRequestContext context) throws IOException
{
Authentication authentication = authenticate(context);
if(authentication != null)
{
context.setSecurityContext(new Authorizer(authentication));
}
}
代码示例来源:origin: bbilger/jrestless
private static SecurityContext filter(GatewayRequest request, AwsSecurityContextFilter filter) {
filter.setGatewayRequest(request);
ContainerRequestContext cOntainerRequestContext= mock(ContainerRequestContext.class);
ArgumentCaptor
try {
filter.filter(containerRequestContext);
} catch (IOException e) {
throw new RuntimeException(e);
}
verify(containerRequestContext).setSecurityContext(securityContextCapture.capture());
return securityContextCapture.getValue();
}
代码示例来源:origin: allegro/hermes
@Override
public void filter(ContainerRequestContext requestContext) throws IOException {
SecurityProvider.HermesSecurity security = securityProvider.security(requestContext);
requestContext.setSecurityContext(security.getSecurityContext());
requestContext.setProperty(OWNERSHIP_RESOLVER, security.getOwnershipResolver());
}
}
代码示例来源:origin: hammock-project/hammock
private void propagateSecurityContext(JaxrsHttpFacade facade, ContainerRequestContext request, KeycloakDeployment resolvedDeployment, BearerTokenRequestAuthenticator bearer) {
final RefreshableKeycloakSecurityContext skSession = new RefreshableKeycloakSecurityContext(resolvedDeployment, null, bearer.getTokenString(), bearer.getToken(), null, null, null);
facade.setSecurityContext(skSession);
final String principalName = AdapterUtils.getPrincipalName(resolvedDeployment, bearer.getToken());
final KeycloakPrincipal
final Set
request.setSecurityContext(new HammockSecurityContext(principal, roles, request.getSecurityContext().isSecure()));
}