本文整理汇总了Java中org.springframework.security.oauth2.client.resource.OAuth2AccessDeniedException类的典型用法代码示例。如果您正苦于以下问题:Java OAuth2AccessDeniedException类的具体用法?Java OAuth2AccessDeniedException怎么用?Java OAuth2AccessDeniedException使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
OAuth2AccessDeniedException类属于org.springframework.security.oauth2.client.resource包,在下文中一共展示了OAuth2AccessDeniedException类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: obtainNewAccessTokenInternal
import org.springframework.security.oauth2.client.resource.OAuth2AccessDeniedException; //导入依赖的package包/类
protected OAuth2AccessToken obtainNewAccessTokenInternal(OAuth2ProtectedResourceDetails details,
AccessTokenRequest request) throws UserRedirectRequiredException, AccessDeniedException {
if (request.isError()) {
// there was an oauth error...
throw OAuth2Exception.valueOf(request.toSingleValueMap());
}
for (AccessTokenProvider tokenProvider : chain) {
if (tokenProvider.supportsResource(details)) {
return tokenProvider.obtainAccessToken(details, request);
}
}
throw new OAuth2AccessDeniedException("Unable to obtain a new access token for resource '" + details.getId()
+ "'. The provider manager is not configured to support it.", details);
}
示例2: retrieveToken
import org.springframework.security.oauth2.client.resource.OAuth2AccessDeniedException; //导入依赖的package包/类
protected OAuth2AccessToken retrieveToken(AccessTokenRequest request, OAuth2ProtectedResourceDetails resource,
MultiValueMap<String, String> form, HttpHeaders headers) throws OAuth2AccessDeniedException {
try {
// Prepare headers and form before going into rest template call in case the URI is affected by the result
authenticationHandler.authenticateTokenRequest(resource, form, headers);
// Opportunity to customize form and headers
tokenRequestEnhancer.enhance(request, resource, form, headers);
return getRestTemplate().execute(getAccessTokenUri(resource, form), getHttpMethod(),
getRequestCallback(resource, form, headers), getResponseExtractor(), form.toSingleValueMap());
}
catch (OAuth2Exception oe) {
throw new OAuth2AccessDeniedException("Access token denied.", resource, oe);
}
catch (RestClientException rce) {
throw new OAuth2AccessDeniedException("Error requesting access token.", resource, rce);
}
}
示例3: obtainAccessToken
import org.springframework.security.oauth2.client.resource.OAuth2AccessDeniedException; //导入依赖的package包/类
@Override
public OAuth2AccessToken obtainAccessToken(OAuth2ProtectedResourceDetails details, AccessTokenRequest request)
throws UserRedirectRequiredException, UserApprovalRequiredException, AccessDeniedException,
OAuth2AccessDeniedException {
AuthorizationCodeResourceDetails resource = (AuthorizationCodeResourceDetails) details;
if (request.getAuthorizationCode() == null) {
if (request.getStateKey() == null) {
throw getRedirectForAuthorization(resource, request);
}
obtainAuthorizationCode(resource, request);
}
return retrieveToken(request, resource, getParametersForTokenRequest(resource, request),
getHeadersForTokenRequest(request));
}
示例4: obtainAccessToken
import org.springframework.security.oauth2.client.resource.OAuth2AccessDeniedException; //导入依赖的package包/类
public OAuth2AccessToken obtainAccessToken(OAuth2ProtectedResourceDetails details, AccessTokenRequest request)
throws UserRedirectRequiredException, AccessDeniedException, OAuth2AccessDeniedException {
ImplicitResourceDetails resource = (ImplicitResourceDetails) details;
try {
// We can assume here that the request contains all the parameters needed for authentication etc.
OAuth2AccessToken token = retrieveToken(request,
resource, getParametersForTokenRequest(resource, request), getHeadersForTokenRequest(request));
if (token==null) {
// Probably an authenticated request, but approval is required. TODO: prompt somehow?
throw new UserRedirectRequiredException(resource.getUserAuthorizationUri(), request.toSingleValueMap());
}
return token;
}
catch (UserRedirectRequiredException e) {
// ... but if it doesn't then capture the request parameters for the redirect
throw new UserRedirectRequiredException(e.getRedirectUri(), request.toSingleValueMap());
}
}
示例5: obtainAccessToken
import org.springframework.security.oauth2.client.resource.OAuth2AccessDeniedException; //导入依赖的package包/类
public OAuth2AccessToken obtainAccessToken(OAuth2ProtectedResourceDetails details, AccessTokenRequest request)
throws UserRedirectRequiredException, UserApprovalRequiredException, AccessDeniedException,
OAuth2AccessDeniedException {
AuthorizationCodeResourceDetails resource = (AuthorizationCodeResourceDetails) details;
if (request.getAuthorizationCode() == null) {
if (request.getStateKey() == null) {
throw getRedirectForAuthorization(resource, request);
}
obtainAuthorizationCode(resource, request);
}
return retrieveToken(request, resource,
getParametersForTokenRequest(resource, request), getHeadersForTokenRequest(request));
}
示例6: getAccessToken
import org.springframework.security.oauth2.client.resource.OAuth2AccessDeniedException; //导入依赖的package包/类
/**
* Get the current access token. Should be available inside a test method as long as a resource has been setup with
* {@link OAuth2ContextConfiguration @OAuth2ContextConfiguration}.
*
* @return the current access token initializing it if necessary
*/
public OAuth2AccessToken getAccessToken() {
if (resource == null || client == null) {
return null;
}
if (accessToken != null) {
return accessToken;
}
try {
if (accessTokenProvider != null) {
client.setAccessTokenProvider(accessTokenProvider);
}
return client.getAccessToken();
}
catch (OAuth2AccessDeniedException e) {
Throwable cause = e.getCause();
if (cause instanceof RuntimeException) {
throw (RuntimeException) cause;
}
if (cause instanceof Error) {
throw (Error) cause;
}
throw e;
}
}
示例7: authenticate
import org.springframework.security.oauth2.client.resource.OAuth2AccessDeniedException; //导入依赖的package包/类
/**
* Expects the incoming authentication request to have a principal value that is an access token value (e.g. from an
* authorization header) .Loads an authentication from the {@link ResourceServerTokenServices} and checks that the
* resource id is contained in the {@link AuthorizationRequest} (if one is specified). Also copies authentication
* details over from the input to the output (e.g. typically so that the access token value and request details can
* be reported later).
*
* @param authentication an authentication request containing an access token value as the principal
* @return an {@link OAuth2Authentication}
*
* @see org.springframework.security.authentication.AuthenticationManager#authenticate(org.springframework.security.core.Authentication)
*/
public Authentication authenticate(Authentication authentication) throws AuthenticationException {
String token = (String) authentication.getPrincipal();
OAuth2Authentication auth = tokenServices.loadAuthentication(token);
if (auth == null) {
throw new InvalidTokenException("Invalid token: " + token);
}
Collection<String> resourceIds = auth.getOAuth2Request().getResourceIds();
if (resourceId != null && resourceIds != null && !resourceIds.isEmpty() && !resourceIds.contains(resourceId)) {
throw new OAuth2AccessDeniedException("Invalid token does not contain resource id (" + resourceId + ")");
}
auth.setDetails(authentication.getDetails());
return auth;
}
示例8: createToken
import org.springframework.security.oauth2.client.resource.OAuth2AccessDeniedException; //导入依赖的package包/类
private OAuth2AccessToken createToken(String username, String password, String clientId, String clientSecret) {
OAuth2ProtectedResourceDetails resource = getResourceDetails(username, password, clientId, clientSecret);
AccessTokenRequest request = createAccessTokenRequest(username, password);
ResourceOwnerPasswordAccessTokenProvider provider = createResourceOwnerPasswordAccessTokenProvider();
try {
return provider.obtainAccessToken(resource, request);
} catch (OAuth2AccessDeniedException oauthEx) {
HttpStatus status = HttpStatus.valueOf(oauthEx.getHttpErrorCode());
throw new CloudFoundryException(status, oauthEx.getMessage(), oauthEx.getSummary());
}
}
示例9: obtainAccessToken
import org.springframework.security.oauth2.client.resource.OAuth2AccessDeniedException; //导入依赖的package包/类
public OAuth2AccessToken obtainAccessToken(OAuth2ProtectedResourceDetails details, AccessTokenRequest request) throws UserRedirectRequiredException, UserApprovalRequiredException, AccessDeniedException, OAuth2AccessDeniedException {
AuthorizationCodeResourceDetails resource = (AuthorizationCodeResourceDetails)details;
System.out.println(request.getCurrentUri());
if(request.getAuthorizationCode() == null) {
if(request.getStateKey() == null) {
throw this.getRedirectForAuthorization(resource, request);
}
this.obtainAuthorizationCode(resource, request);
}
System.out.println("code == " + request.getAuthorizationCode());
return this.retrieveToken(request,
resource, this.getParametersForTokenRequest(resource, request), this.getHeadersForTokenRequest(request));
}
开发者ID:luotuo,项目名称:springboot-security-wechat,代码行数:15,代码来源:MyAuthorizationCodeAccessTokenProvider.java
示例10: refreshAccessToken
import org.springframework.security.oauth2.client.resource.OAuth2AccessDeniedException; //导入依赖的package包/类
public OAuth2AccessToken refreshAccessToken(OAuth2ProtectedResourceDetails resource, OAuth2RefreshToken refreshToken, AccessTokenRequest request) throws UserRedirectRequiredException, OAuth2AccessDeniedException {
MultiValueMap<String, String> form = new LinkedMultiValueMap();
form.add("grant_type", "refresh_token");
form.add("refresh_token", refreshToken.getValue());
form.add("appid", resource.getClientId());
try {
return this.retrieveToken(request, resource, form, this.getHeadersForTokenRequest(request));
} catch (OAuth2AccessDeniedException var6) {
throw this.getRedirectForAuthorization((AuthorizationCodeResourceDetails)resource, request);
}
}
开发者ID:luotuo,项目名称:springboot-security-wechat,代码行数:13,代码来源:MyAuthorizationCodeAccessTokenProvider.java
示例11: retrieveToken
import org.springframework.security.oauth2.client.resource.OAuth2AccessDeniedException; //导入依赖的package包/类
protected OAuth2AccessToken retrieveToken(final AccessTokenRequest request,
OAuth2ProtectedResourceDetails resource,
MultiValueMap<String, String> form,
HttpHeaders headers) throws OAuth2AccessDeniedException {
try {
this.authenticationHandler.authenticateTokenRequest(resource, form, headers);
this.tokenRequestEnhancer.enhance(request, resource, form, headers);
final ResponseExtractor<OAuth2AccessToken> delegate = this.getResponseExtractor();
ResponseExtractor<OAuth2AccessToken> extractor = new ResponseExtractor<OAuth2AccessToken>() {
public OAuth2AccessToken extractData(ClientHttpResponse response) throws IOException {
if(response.getHeaders().containsKey("Set-Cookie")) {
request.setCookie(response.getHeaders().getFirst("Set-Cookie"));
}
return (OAuth2AccessToken)delegate.extractData(response);
}
};
System.out.println("URI == " + this.getAccessTokenUri(resource, form));
return (OAuth2AccessToken)this.getRestTemplate().execute(this.getAccessTokenUri(resource, form),
this.getHttpMethod(),
this.getRequestCallback(resource, form, headers),
extractor,
form.toSingleValueMap());
} catch (OAuth2Exception var8) {
System.out.println(var8.toString());
throw new OAuth2AccessDeniedException("Access token denied.", resource, var8);
} catch (RestClientException var9) {
System.out.println(var9.toString());
throw new OAuth2AccessDeniedException("Error requesting access token.", resource, var9);
}
}
开发者ID:luotuo,项目名称:springboot-security-wechat,代码行数:33,代码来源:MyAuthorizationCodeAccessTokenProvider.java
示例12: handleCustomBindException
import org.springframework.security.oauth2.client.resource.OAuth2AccessDeniedException; //导入依赖的package包/类
@ExceptionHandler(OAuth2AccessDeniedException.class)
public String handleCustomBindException(OAuth2AccessDeniedException ex, Model model) {
model.addAttribute("exception_message",
String.format("Http Error Code: %s, OAuth2Error Code: %s, Exception Message: %s",
ex.getHttpErrorCode(), ex.getOAuth2ErrorCode(), ex.getMessage()));
return "exception_page";
}
示例13: obtainAccessToken
import org.springframework.security.oauth2.client.resource.OAuth2AccessDeniedException; //导入依赖的package包/类
@Override
public OAuth2AccessToken obtainAccessToken(OAuth2ProtectedResourceDetails details, AccessTokenRequest request)
throws UserRedirectRequiredException, AccessDeniedException, OAuth2AccessDeniedException {
ResourceOwnerPasswordResourceDetails resource = (ResourceOwnerPasswordResourceDetails) details;
return retrieveToken(request, resource, getParametersForTokenRequest(resource, request), new HttpHeaders());
}
示例14: addAccount
import org.springframework.security.oauth2.client.resource.OAuth2AccessDeniedException; //导入依赖的package包/类
private void addAccount(GMMCredential credential) {
try {
ProjectBinding[] projects = client.GETMyProjects(credential);
ArrayList<Object> list = new ArrayList<Object>();
list.add(credential);
for (ProjectBinding project : projects) {
list.add(project);
}
if (save != null) {
IMemento child = save.createChild("credential");
child.putString("username", credential.getUsername());
child.putString("password", credential.getPassword());
}
content.addElement(list);
content.initialize();
viewer.setContentProvider(content);
keyStore.addCredential(credential.getUsername(), credential);
} catch (OAuth2AccessDeniedException e) {
IStatus err = new Status(
Status.ERROR,
Activator.PLUGIN_ID,
Status.ERROR,
"Login/password error\n\tPlease verify your information and be sure that you set a passord for your account.",
e);
StatusManager.getManager().handle(err, StatusManager.BLOCK);
}
}
示例15: refreshAccessToken
import org.springframework.security.oauth2.client.resource.OAuth2AccessDeniedException; //导入依赖的package包/类
@Override
public OAuth2AccessToken refreshAccessToken(
OAuth2ProtectedResourceDetails resource,
OAuth2RefreshToken refreshToken, AccessTokenRequest request)
throws UserRedirectRequiredException,
OAuth2AccessDeniedException {
OAuth2AccessToken accessToken = super.refreshAccessToken(resource, refreshToken, request);
// Google does not replace refresh tokens, so we need to hold on to the existing refresh token...
if (accessToken.getRefreshToken() == null) {
((DefaultOAuth2AccessToken) accessToken).setRefreshToken(refreshToken);
}
return accessToken;
}