• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Java UserInfoSuccessResponse类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

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



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

示例1: userInfoRequestInt

import com.nimbusds.openid.connect.sdk.UserInfoSuccessResponse; //导入依赖的package包/类
@Override
protected UserInfoSuccessResponse userInfoRequestInt(UserInfoRequest userReq, HttpServletResponse resp)
		throws IOException {
	// extract values from request
	AccessToken at = userReq.getAccessToken();

	// get values from honest OP for comparison
	AccessToken refAt = (AccessToken) stepCtx.get(OPContextConstants.HONEST_ACCESSTOKEN);

	// compare values
	Object fo = stepCtx.get(OPContextConstants.USERINFO_INFORMATIONLEAK_FUTURE);
	CompletableFuture<TestStepResult> f = (CompletableFuture<TestStepResult>) fo;
	if (f != null) {
		if (refAt != null && refAt.equals(at)) {
			logger.log("Detected Honest AccessToken in Evil OP.");
			f.complete(TestStepResult.FAIL);
		} else if (at != null) {
			logger.log("Detected unknown AccessToken in Evil OP.");
			f.complete(TestStepResult.FAIL);
		}
	}

	return super.userInfoRequestInt(userReq, resp);
}
 
开发者ID:RUB-NDS,项目名称:PrOfESSOS,代码行数:25,代码来源:MaliciousEndpointOP.java


示例2: userInfoRequest

import com.nimbusds.openid.connect.sdk.UserInfoSuccessResponse; //导入依赖的package包/类
@Override
public void userInfoRequest(RequestPath path, HttpServletRequest req, HttpServletResponse resp) throws IOException {
	try {
		logger.log("User Info requested.");

		HTTPRequest httpReq = ServletUtils.createHTTPRequest(req);
		UserInfoRequest userReq = UserInfoRequest.parse(httpReq);
		logger.logHttpRequest(req, httpReq.getQuery());
		
		UserInfoSuccessResponse uiResp = userInfoRequestInt(userReq, resp);
		if (uiResp != null) {
			sendResponse("User Info", uiResp, resp);
		}
	} catch (ParseException ex) {
		logger.log("Error parsing User Info Request.", ex);
		ErrorObject error = ex.getErrorObject();
		BearerTokenError be = new BearerTokenError(error.getCode(), error.getDescription(), error.getHTTPStatusCode());
		UserInfoErrorResponse errorResp = new UserInfoErrorResponse(be);
		sendErrorResponse("User Info", errorResp, resp);
	}
}
 
开发者ID:RUB-NDS,项目名称:PrOfESSOS,代码行数:22,代码来源:DefaultOP.java


示例3: userInfoRequestInt

import com.nimbusds.openid.connect.sdk.UserInfoSuccessResponse; //导入依赖的package包/类
@Nullable
protected UserInfoSuccessResponse userInfoRequestInt(UserInfoRequest userReq, HttpServletResponse resp)
		throws IOException {
	AccessToken at = userReq.getAccessToken();
	if (at == null) {
		UserInfoErrorResponse errorResp = new UserInfoErrorResponse(BearerTokenError.MISSING_TOKEN);
		sendErrorResponse("User Info", errorResp, resp);
		return null;
	}
	//AccessTokenHash atHash = AccessTokenHash.compute(at, JWSAlgorithm.RS256);

	UserInfo ui = getUserInfo();

	UserInfoSuccessResponse uiResp = new UserInfoSuccessResponse(ui);
	return uiResp;
}
 
开发者ID:RUB-NDS,项目名称:PrOfESSOS,代码行数:17,代码来源:DefaultOP.java


示例4: processAuthorization

import com.nimbusds.openid.connect.sdk.UserInfoSuccessResponse; //导入依赖的package包/类
protected AuthenticationMechanismOutcome processAuthorization(HttpServerExchange exchange) {
	String authorization = exchange.getRequestHeaders().getFirst(Headers.AUTHORIZATION);
	try {
		// TODO support passing in a JWT id_token instead of an oauth access token. This would bypass an expensive profile lookup and realize the goal of using
		// OpenID Connect tokens for SSO
		BearerAccessToken accessToken = BearerAccessToken.parse(authorization);
		UserInfoSuccessResponse info = fetchProfile(accessToken);
		// JWT idToken = JWTParser.parse(accessToken.getValue());
		// JWTClaimsSet claimsSet = new JWTClaimsSet.Builder().subject("demo").build();
		// PlainJWT idToken = new PlainJWT(claimsSet);
		// validateToken(idToken, exchange, false);
		return complete(info.getUserInfo().toJWTClaimsSet(), accessToken, null, exchange, false);
	} catch (Exception e) {
		OIDCContext oidcContext = exchange.getAttachment(OIDCContext.ATTACHMENT_KEY);
		oidcContext.setError(true);
		exchange.getSecurityContext().authenticationFailed("Unable to obtain OIDC JWT token from authorization header", mechanismName);
		return AuthenticationMechanismOutcome.NOT_AUTHENTICATED;
	}

}
 
开发者ID:aaronanderson,项目名称:swarm-oidc,代码行数:21,代码来源:OIDCAuthenticationMechanism.java


示例5: updateUserInfo

import com.nimbusds.openid.connect.sdk.UserInfoSuccessResponse; //导入依赖的package包/类
public Principal updateUserInfo(URI userInfoEndpoint, IDTokenClaimsSet idToken, BearerAccessToken accessToken)
    throws IOException, ParseException, OIDCException, XWikiException, QueryException
{
    // Get OIDC user info
    UserInfoRequest userinfoRequest = new UserInfoRequest(userInfoEndpoint, accessToken);
    HTTPRequest userinfoHTTP = userinfoRequest.toHTTPRequest();
    userinfoHTTP.setHeader("User-Agent", this.getClass().getPackage().getImplementationTitle() + '/'
        + this.getClass().getPackage().getImplementationVersion());
    HTTPResponse httpResponse = userinfoHTTP.send();
    UserInfoResponse userinfoResponse = UserInfoResponse.parse(httpResponse);

    if (!userinfoResponse.indicatesSuccess()) {
        UserInfoErrorResponse error = (UserInfoErrorResponse) userinfoResponse;
        throw new OIDCException("Failed to get user info", error.getErrorObject());
    }

    UserInfoSuccessResponse userinfoSuccessResponse = (UserInfoSuccessResponse) userinfoResponse;
    UserInfo userInfo = userinfoSuccessResponse.getUserInfo();

    // Update/Create XWiki user
    return updateUser(idToken, userInfo);
}
 
开发者ID:xwiki-contrib,项目名称:oidc,代码行数:23,代码来源:OIDCUserManager.java


示例6: requestUserInfo

import com.nimbusds.openid.connect.sdk.UserInfoSuccessResponse; //导入依赖的package包/类
/**
 * UserInfo Request
 * Using the access token, information about the end user can be obtained by making a user info request
 * 
 * @throws KeyStoreException
 * @throws CertificateException
 * @throws NoSuchAlgorithmException
 * @throws KeyManagementException
 * @throws ParseException
 * @throws IOException
 * @throws FileNotFoundException
 */
public void requestUserInfo() throws KeyManagementException, NoSuchAlgorithmException, CertificateException, KeyStoreException, ParseException, FileNotFoundException, IOException {
	if (accessToken == null) {
		System.err.println(this.getClass().getSimpleName() + " - Access Token null, stopping UserInfo retrieval");
		return;
	}

	UserInfoRequest userInfoReq = new UserInfoRequest(
			userInfoEndpointURI,
			(BearerAccessToken) accessToken);

	HTTPResponse userInfoHTTPResp = null;
	userInfoHTTPResp = userInfoReq.toHTTPRequest().send(null, Trust.getSocketFactory(trustStoreFile));

	UserInfoResponse userInfoResponse = null;
	userInfoResponse = UserInfoResponse.parse(userInfoHTTPResp);

	if (userInfoResponse instanceof UserInfoErrorResponse) {
		UserInfoErrorResponse errorResponse = ((UserInfoErrorResponse) userInfoResponse);
		ErrorObject error = errorResponse.getErrorObject();

		System.err.println(this.getClass().getSimpleName() + " - " + errorResponse.indicatesSuccess());
		System.err.println("Userinfo retrieval failed:");
		System.err.println(errorResponse);
		System.err.println(error);
		System.err.println(error.getHTTPStatusCode());
		System.err.println(userInfoHTTPResp.getStatusCode());
		System.err.println(userInfoHTTPResp.getContent());
		System.err.println(userInfoHTTPResp.getWWWAuthenticate());
		System.err.println(userInfoHTTPResp.getLocation());
	}

	UserInfoSuccessResponse successResponse = (UserInfoSuccessResponse) userInfoResponse;
	userInfoClaims = successResponse.getUserInfo().toJSONObject();
}
 
开发者ID:EnFlexIT,项目名称:AgentWorkbench,代码行数:47,代码来源:SimpleOIDCClient.java


示例7: fetchProfile

import com.nimbusds.openid.connect.sdk.UserInfoSuccessResponse; //导入依赖的package包/类
protected UserInfoSuccessResponse fetchProfile(BearerAccessToken accessToken) throws Exception {
	UserInfoRequest userInfoReq = new UserInfoRequest(oidcProvider.getUserInfoURI(), accessToken);
	HTTPResponse userInfoHTTPResp = userInfoReq.toHTTPRequest().send();
	UserInfoResponse userInfoResponse = UserInfoResponse.parse(userInfoHTTPResp);
	if (userInfoResponse instanceof UserInfoErrorResponse) {
		ErrorObject error = ((UserInfoErrorResponse) userInfoResponse).getErrorObject();
		throw new IllegalStateException(String.format("OIDC UserInfoRequest error: code %s description: %s", error.getCode(), error.getDescription()));
	}
	return (UserInfoSuccessResponse) userInfoResponse;
}
 
开发者ID:aaronanderson,项目名称:swarm-oidc,代码行数:11,代码来源:OIDCAuthenticationMechanism.java



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java TimeStatistic类代码示例发布时间:2022-05-23
下一篇:
Java Util类代码示例发布时间:2022-05-23
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap