本文整理汇总了Java中com.nimbusds.openid.connect.sdk.UserInfoRequest类的典型用法代码示例。如果您正苦于以下问题:Java UserInfoRequest类的具体用法?Java UserInfoRequest怎么用?Java UserInfoRequest使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
UserInfoRequest类属于com.nimbusds.openid.connect.sdk包,在下文中一共展示了UserInfoRequest类的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: userInfoRequestInt
import com.nimbusds.openid.connect.sdk.UserInfoRequest; //导入依赖的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.UserInfoRequest; //导入依赖的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.UserInfoRequest; //导入依赖的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: updateUserInfo
import com.nimbusds.openid.connect.sdk.UserInfoRequest; //导入依赖的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
示例5: requestUserInfo
import com.nimbusds.openid.connect.sdk.UserInfoRequest; //导入依赖的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
示例6: fetchProfile
import com.nimbusds.openid.connect.sdk.UserInfoRequest; //导入依赖的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
示例7: handle
import com.nimbusds.openid.connect.sdk.UserInfoRequest; //导入依赖的package包/类
@Override
public Response handle(HTTPRequest httpRequest, OIDCResourceReference reference) throws Exception
{
// Parse the request
UserInfoRequest request = UserInfoRequest.parse(httpRequest);
// Get the token associated to the user
AccessToken accessToken = request.getAccessToken();
// UserInfoSuccessResponse
return null;
}
开发者ID:xwiki-contrib,项目名称:oidc,代码行数:13,代码来源:JWKOIDCEndpoint.java
注:本文中的com.nimbusds.openid.connect.sdk.UserInfoRequest类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论