Get information about the user as specified in the accessToken included in this request
80 logger.error(
"getInfo failed; no principal. Requester is not authorized.");
81 model.addAttribute(HttpCodeView.CODE, HttpStatus.FORBIDDEN);
82 return HttpCodeView.VIEWNAME;
85 String username = auth.getName();
88 if (userInfo == null) {
89 logger.error(
"getInfo failed; user not found: " + username);
90 model.addAttribute(HttpCodeView.CODE, HttpStatus.NOT_FOUND);
91 return HttpCodeView.VIEWNAME;
94 model.addAttribute(UserInfoView.SCOPE, auth.getOAuth2Request().getScope());
96 model.addAttribute(UserInfoView.AUTHORIZED_CLAIMS, auth.getOAuth2Request().getExtensions().get(
"claims"));
98 if (!Strings.isNullOrEmpty(claimsRequestJsonString)) {
99 model.addAttribute(UserInfoView.REQUESTED_CLAIMS, claimsRequestJsonString);
102 model.addAttribute(UserInfoView.USER_INFO, userInfo);
108 model.addAttribute(UserInfoJWTView.CLIENT, client);
110 List<MediaType> mediaTypes = MediaType.parseMediaTypes(acceptHeader);
111 MediaType.sortBySpecificityAndQuality(mediaTypes);
113 if (client.getUserInfoSignedResponseAlg() != null
114 || client.getUserInfoEncryptedResponseAlg() != null
115 || client.getUserInfoEncryptedResponseEnc() != null) {
117 for (MediaType m : mediaTypes) {
118 if (!m.isWildcardType() && m.isCompatibleWith(UserInfoJWTView.JOSE_MEDIA_TYPE)) {
119 return UserInfoJWTView.VIEWNAME;
120 }
else if (!m.isWildcardType() && m.isCompatibleWith(MediaType.APPLICATION_JSON)) {
121 return UserInfoView.VIEWNAME;
126 return UserInfoJWTView.VIEWNAME;
129 for (MediaType m : mediaTypes) {
130 if (!m.isWildcardType() && m.isCompatibleWith(MediaType.APPLICATION_JSON)) {
131 return UserInfoView.VIEWNAME;
132 }
else if (!m.isWildcardType() && m.isCompatibleWith(UserInfoJWTView.JOSE_MEDIA_TYPE)) {
133 return UserInfoJWTView.VIEWNAME;
138 return UserInfoView.VIEWNAME;
ClientDetailsEntityService clientService
Definition: UserInfoEndpoint.java:63
UserInfo getByUsernameAndClientId(String username, String clientId)
UserInfoService userInfoService
Definition: UserInfoEndpoint.java:60
ClientDetailsEntity loadClientByClientId(String clientId)
static final Logger logger
Definition: UserInfoEndpoint.java:68