auth返回状态码异常

auth返回状态码异常,第1张

throw new AuthException("ssCode","登录错了")

返回:

{

"error" : "ssCode",

"error_description" : "登录错了"

}

文章知识点与官方知识档案匹配

Java技能树首页概览

86213 人正在系统学习中

打开CSDN,阅读体验更佳

springsecurity+oauth2+jwt实现单点登录demo

该资源是springsecurity+oauth2+jwt实现的单点登录demo,模式为授权码模式,实现自定义登录页面和自定义授权页面。应用数据存在内存中或者存在数据库中(附带数据库表结构),token存储分为数据库或者Redis。demo包含服务端和客户端,可直接运行测试。

Spring Security OAuth2 认证服务器自定义异常处理

认证服务器默认返回的数据格式如下: { "error": "unsupported_grant_type", "error_description": "Unsupported grant type: password1" } 上面的返回结果很不友好,而且前端代码也很难判断是什么错误,所以我们需要对返回的错误进行统一的异常处理 1.默认的异常处理器 默认情况是使用WebRespo...

继续访问

自定义spring security oauth /auth/token的返回内容格式

场景 在前后端分离的项目中,一般后端返回给前端的格式是一个固定的json格式。 在这个前提下,spring security oauth 生成access token的请求/auth/token的返回内容就需要自定义 原返回值 我们希望使用我们自己固定的json格式 需求 我们的BaseResponse类 public class BaseResponse { pri...

继续访问

Spring Security OAuth2模块/oauth/token授权接口自定义返回结果

spring security提供了默认的oauth登录授权接口/oauth/token,该接口位于org.springframework.security.oauth2.provider.endpoint包中的TokenEndpoint类。 公司要实现自定义的登录授权接口,且返回值也要实现私有结构,下面大概讲一下怎么改造这个类来实现要求的业务逻辑。 一、利用Spring AOP方式 二、自定义Controller接口实现 简单粗暴,直接把TokenEndpointer类注入到自定义Controller中;

继续访问

Spring Security Oauth2 自定义异常返回信息

开头引用 https://my.oschina.net/merryyou/blog/1819572 在使用Spring Security Oauth2登录和鉴权失败时,默认返回的异常信息如下 { "error": "unauthorized", "error_description": "Full authentication is required to access this r...

继续访问

oauth2.0源码分析之oauth/token申请令牌

本期介绍的是在oauth2.0中 , 通过调用oauth/token接口 , 框架是如何给我们申请到JWT令牌的 , 内部做了些什么事情 ? 在分析源码之前 , 我们首先需要知道的是我们需要具备哪些调试条件 , 不然会发现许多奇奇怪怪的错误 (比如通过/oauth/token时出现401) 1.一张oauth2.0的内置表(oauth_client_details) 注意:这里的密码需要用Bcript加密 , 因为源码内部是用Bcript解密的 2.两把钥匙: 一本是后缀为jks的私钥 另一本是后缀为k

继续访问

SpringSecurity+OAuth2认证/oauth/token登录报错There is no client authentication

报错信息: { "error": "unauthorized", "error_description": "There is no client authentication. Try adding an appropriate authentication filter." } 找到这个问题原因后,发现自己被自己蠢哭了。 在自己的核心配置类里,把这个/oauth/token加入到忽...

继续访问

spring security+Oauth2密码模式认证时,报401,Unauthorized的问题排查

第一种情况: 进行 /auth/token的post请求时,没有进行httpbasic认证。 什么是http Basic认证? http协议的一种认证方式,将客户端id和客户端密码按照“客户端ID:客户端密码”的格式拼接,并用base64编码,放在 header中请求服务端。例子如下: Authorization:Basic ASDLKFALDSFAJSLDFKLASD= ASDLKFALDSFAJSLDFKLASD= 就是 客户端ID:客户端密码 的64编码 springsecurity中的...

继续访问

最新发布 SpringBoot使用SpringSecurity,使用oauth2登录,使用自定义/uaa/oauth/token报错解决

SpringBoot使用SpringSecurity,使用oauth2登录,使用自定义/uaa/oauth/token报错解决

继续访问

asp.net WebAPI OWIN OAuth2.0授权自定义返回结果及错误或异常问题处理办法

asp.net WebAPI OWIN OAuth2.0授权自定义返回结果及错误或异常问题处理核心代码,详情: https://www.cnblogs.com/wgx0428/p/12315546.html

ASP.NET WebAPI Token JWT Bearer 认证失败和成功返回自定义数据 Json

asp.net WebAPI Token Oauth2.0授权自定义返回结果(包括登录正确返回,登录失败返回)。 详细参考:https://blog.csdn.net/u013546115/article/details/105580532

Spring Security OAuth2 token权限隔离实例解析

主要介绍了Spring Security OAuth2 token权限隔离实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

spring security oauth其中的/oauth/token做了哪些

项目场景: 问题描述: 提示:这里描述项目中遇到的问题: 例如:数据传输过程中数据不时出现丢失的情况,偶尔会丢失一部分数据 APP 中接收数据代码: 原因分析: 提示:这里填写问题的分析: 例如:Handler 发送消息有两种方式,分别是 Handler.obtainMessage()和 Handler.sendMessage(),其中 obtainMessage 方式当数据量过大时,由于 MessageQuene 大小也有限,所以当 message 处理不及时时,会造成先传的数据被覆盖,进而.

继续访问

Spring Security OAuth2 自定义 token Exception

https://raw.githubusercontent.com/longfeizheng/longfeizheng.github.io/master/images/spring-security-OAuth208.png 1. 前言 在使用Spring Security Oauth2登录和鉴权失败时,默认返回的异常信息如下 { "error": "unauthorized", "error_description": "Full authentication is required to

继续访问

前后端分离 token过期 返回状态码

1.首先配置Mvc配置文件类 @Configuration public class BackendConfiguration extends WebMvcConfigurationSupport { @Autowired private LoginInterceptor loginInterceptor@Override public void addInterceptors(InterceptorRegistry registry) { regi

继续访问

SpringSecurityOAuth2(2)请求携带客户端信息校验,自定义异常返回,无权处理,token失效处理...

上文地址:SpringSecurityOAuth2(1)(password,authorization_code,refresh_token,client_credentials)获取token 上一篇博客写了一个至简的OAuth2的token认证服务器,只实现了4种获取token的方式 ,对...

继续访问

oauth2.0自定义token失效返回信息

oauth2.0自定义token失效返回信息 一、问题 由于spring security oauth2返回的失效信息对于客户端不太有好,在网上找了自定义的解决方案以便更优雅的展示返回信息。 重写框架里的方法,实现自定义。 二、配置类 Oauth2ResourceServer extends ResourceServerConfigurerAdapter @Override public void configure(ResourceServerSecurityConfigurer reso

继续访问

热门推荐 解决Spring Security OAuth在访问/oauth/token时候报401 authentication is required

先来张图片 我在用psotman 测试oauth授权码模式的出现了401的异常, 就是调用oauth/token. 我是想用code换token,但是发现报错了。这是为什么呢? 首先你要理解 /oauth/token 这个如果配置支持allowFormAuthenticationForClients的,且url中有client_...

继续访问

spring security 和OAuth2 整合访问 localhost:8082/oauth/token 报401的问题,或者403的问题

@Bean public PasswordEncoder passwordEncoder() { /** * 采坑 * spring-boot2 之后废弃了MD5,使用BCryptPasswordEncoder()加密* */ return new BCryptPasswordEncoder()} 注意在security的配置内中,要使用BCryptPasswordEncoder 加密,..

继续访问

数据库课程设计

c语言文件读写操作代码

html+css+js网页设计

在默认的情况下,spring security oauth2 在发生异常情况下,返回的格式并不符合现实需要,其格式是:

我们一般需要是这种格式

对于oauth2的异常,其类主要是 OAuth2Exception ,默认处理这些异常的是DefaultWebResponseExceptionTranslator,其错误主要是包含oauth2相关的错误,就类似以下的。

DefaultWebResponseExceptionTranslator处理的OAuth2Exception,其类可见的序列化器如下,可以得出默认的返回格式:

所以我们需要重新定义自己的WebResponseExceptionTranslator,以及自己的oauth2异常以及其序列化器(也可以不定义,重写handleOauth2Exception即可)

自定义oauth2异常处理类,CustomWebResponseExceptionTranslator,模仿DefaultWebResponseExceptionTranslator即可,下面给出关键部分,注意result是自己定义返回格式的bean,含有msg和code。最后在认证服务器配置一下就可。

这里说的是oauth2的异常处理,其中还有认证的异常,我们这里使用basic的认证方式,如果发生异常,是不会走这个自定义的异常处理器的,所以在securityConfig中配置,在httpBasic后面配置的那里处理了。

这里加上 http.addFilterBefore(customBasicAuthenticationFilter, BasicAuthenticationFilter.class)

这个filter其实就是验证一些必要参数有无缺失,并且返回自定义的格式,

还有需要注意是:因为是授权码模式,在获取token的时候,需要传clientId和clientSecret,这是获取token的验证我们需要先于一步再到后面,所以我们会定义个过滤器处理,因为在测试过程,如果不先于验证clientId和clientSecret,返回的错误可能不是预期之中的,这里还不清楚为啥会出现那些特殊情况,所以还是先于一步先校验了、

认证服务器配置上自定义的filter,这个filter会先执行再到后面/oauth2/token链接,还有这里不开启allowFormAuthenticationForClients,还是只限于basic,如果开启了,有可能返回不正确的异常格式,具体原因不明,但后续肯定是不走basicFilter的,自定义的filter还是验证参数完整性和认证clientId和clientSecret身份是否正确。

例示参考:

https://blog.csdn.net/qq_31063463/article/details/83752459


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/476025.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-06-07
下一篇2023-06-07

发表评论

登录后才能评论

评论列表(0条)

    保存