有没有办法在资源服务器中访问OAuth UserDetails?
在OAuth服务器上,我将返回自定义用户详细信息
http://localhost:9999/uaa/user
@RestController
public class UserInfoResource {
@RequestMapping("/user")
public ResponseEntity<UserInfo> account(@AuthenticationPrincipal UserInfo userInfo) {
return Optional.ofNullable(userInfo)
.map((usr) -> new ResponseEntity<UserInfo>(usr, HttpStatus.OK))
.orElse(new ResponseEntity<>(HttpStatus.INTERNAL_SERVER_ERROR));
}
}
有没有办法在资源服务器中访问UserInfo对象? Spring Security定义了可用于将身份验证对象注入Spring MVC控制器/休息端点的方便@AuthenticationPrincipal
注释,可以使用OAuth身份验证完成相同的操作,还是有任何其他方法可以为处理请求填充UserInfo实例?
答案 0 :(得分:0)
试试这个:
array([['120', '29.9475077984', '1'],
['125', '31.3887667742', '1'],
['125', '32.3881706091', '1'],
['125', '34.4894481007', '1'],
['126', '36.1494551046', '1'],
['127', '39.3121447948', '1'],
['128', '43.8203811171', '1'],
['128', '49.3179066095', '1'],
['128', '53.4929489926', '1'],
['128', '55.1837748899', '1'],
['130', '55.9167038553', '1'],
['130', '56.2727376481', '1'],
['130', '57.480058071', '1'],
['130', '60.3922465138', '1'],
['130', '61.2506277637', '1'],
['130', '60.5279054759', '1'],
['143', '62.139526711', '1'],
['143', '65.4147315349', '1'],
['143', '72.3278873965', '1'],
答案 1 :(得分:0)
我不确定,但由于Oauth2
是描述不同服务器/服务之间的身份验证机制的标准,因此无法提供自定义属性。
假设您的资源服务器支持oauth2授权,并且用户使用FB的身份验证服务器。正如我们所说,它是一个标准,但FB对您的自定义字段一无所知...