请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

老师 您好, 关于在企业实际生产环境中的OAuth2问题

  1. 首先我想问下, 实际业务中都是不直接访问OAuth2端点,而是写Controller去远程调用认证的吗?
  2. 我见过获取用户直接在认证的时候带上用户信息, 这样就不用远程去获取用户信息, 这样做有什么不好的地方吗?

最后 我想知道企业生产环境中 一般是像您这样的方案执行的吗?

正在回答

1回答

1. 要看具体的情况分析的,不过目前我司的情况是没有直接去访问,因为我们认证中心会有很多其他不同业务的微服务进行认证,不仅仅只是C端用户,我个人觉得只要公司采用的是统一认证,基本上不会直接调OAuth2的端点,除非这个应用是写一些公共的API,采用code授权方式,那种可以直接使用端点。

2. 第二个问题表达的是认证后的返回结果携带用户信息吗?我这里也返回了用户信息,只不过每个登录业务返回的数据会不一样而已,像我这个项目中的业务,用户登录只需要显示用户的昵称、头像当然还有登录凭证,具体返回数据要根据业务定的,远程获取用户信息主要是因为登录的时候不一定会把用户数据都返回到客户端,原因很简单,我们设计API接口的时候是客户端需要什么就返回什么,因此在个人中心修改用户信息的时候,可能就要求用户数据比较多,所以会重新在写一个接口拉取所需的用户数据


0 回复 有任何疑惑可以回复我~
  • 提问者 燎丶Trance #1
    那就是说 我们如果采用不直接访问, 那么我们需要为每一个登录服务去额外构建一个登录接口, 这样会更好。
    
    还有就是, 你们在实际开发中定义异常都是靠AssetUtil这种方式去做的吗, 那假设N个字段要去做效验, 也是这样处理的吗?
    
    麻烦您了,老师.
    回复 有任何疑惑可以回复我~ 2020-12-07 16:21:19
  • InCowboy 回复 提问者 燎丶Trance #2
    是的,我们实际开发中要看的,比如有的接口尤其是给后台系统用的,有的就有很多字段要进行判断(前提是基本判断,比如非空或者长度等),那么可以采用hibernate validation框架,然后全局异常捕捉ValidationException异常即可
    回复 有任何疑惑可以回复我~ 2020-12-07 17:34:29
  • 提问者 燎丶Trance #3
    非常感谢!
    回复 有任何疑惑可以回复我~ 2020-12-07 18:36:19
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号