当前位置: 首页 > 知识库问答 >
问题:

spring-security-oauth2-authorization-server:0.1.1获取令牌错误invalid_client

哈宪
2023-03-14

我正在使用spring授权服务器,但我无法获得令牌。这是我的代码和示例。pls帮我知道正确的要求

@Bean
public RegisteredClientRepository registeredClientRepository() {
    RegisteredClient registeredClient = RegisteredClient.withId(UUID.randomUUID().toString())
            .clientId("client")
            .clientSecret("secret")
            .clientAuthenticationMethod(ClientAuthenticationMethod.CLIENT_SECRET_BASIC)
            .clientAuthenticationMethod(ClientAuthenticationMethod.CLIENT_SECRET_JWT)
            .clientAuthenticationMethod(ClientAuthenticationMethod.CLIENT_SECRET_POST)
            .clientAuthenticationMethod(ClientAuthenticationMethod.PRIVATE_KEY_JWT)
            .authorizationGrantType(AuthorizationGrantType.PASSWORD)
            .authorizationGrantType(AuthorizationGrantType.REFRESH_TOKEN)
            .authorizationGrantType(AuthorizationGrantType.CLIENT_CREDENTIALS)
            .authorizationGrantType(AuthorizationGrantType.JWT_BEARER)
            .clientSettings(clientSettings -> clientSettings.requireUserConsent(true))
            .build();
    return new InMemoryRegisteredClientRepository(registeredClient);
}

这是我的请求与基本auth客户端/秘密

curl--位置--请求后'http://localhost:9000/oauth2/token'
--header“授权:基本y2xpzw50onnly3jlda=='
--header”内容-类型:application/x-www-form-urlencoded'
--header'cookie:jsessionid=557c0348994efc10db8e7f06c2fdff21'
--data-urlencode'grant_type=client_credentials'

答复401:

{“error”:“invalid_client”}

共有1个答案

庾才
2023-03-14

您可以尝试将spring-security-oauth2-authorization-server升级到更新的0.2.0版本

我在client_secret_post时遇到了同样的问题,但是升级版本对我来说很有效。

 类似资料:
  • 目前,我使用spring mvc oauth2来保护我的web应用程序。 我尝试执行curl-x POST“http://localhost:8080/project/oauth/token?client_id=the_client&grant_type=password&username=user&password=password&response_type=token” 我收到回复了。{“e

  • 我的所作所为 首先,我承认我缺乏Spring安全知识。 我可以接收access_token、refresh_token等等,一切都非常好,甚至我可以使用接收的access_token访问url http://localhost:8282/melayer/articles (二)。curl http://localhost:8282/melayer/articles-h“授权:携带者 我想了解的是

  • 我的问题很“简单”。我不知道如何设置OAUTH2身份验证服务器以接受用户名/密码并返回令牌。 如果我使用: 卷曲:password@localhost:8081/oauth/token\?grant\u type=client\u credentials它返回令牌,但问题是它在DB中注册用户“curl”,所以。。。不太好。。。 如果我使用: http://www.example.com:8081/

  • 我计划在AngularJS上使用Spring RESTful API后端和客户端创建应用程序。 我想用Google OAuth2授权服务器来保护我的Spring RESTful API。 我有一个建筑问题: 在谷歌成功授权后,我将从谷歌OAuth2授权服务器收到accessToken。我是否需要将此访问令牌传输到我的客户端应用程序(AngularJS),或者我需要在我的后端应用程序中引入一些自己的

  • 我有一些问题,当我想要获得“访问令牌”,我使用Spring Security在我的项目 WebSecurity配置 我在内存中设置了user以便在该类中进行身份验证,并且我使用的是内存令牌 我正确地发送了grant_type,client_id,client_secret,username和password,但没有在API上响应“访问令牌

  • Spring Authorization Server 是一个社区驱动的项目,由 Spring Security 团队领导,其目的主要是为 Spring 社区提供 OAuth 2.0 授权服务器支持。 该项目将作为一个独立的项目在 Spring 的实验项目中启动,以便更迅速地发展。其最终目标是取代 Spring Security OAuth 所提供的授权服务器支持。 功能规划 这个项目使用 Zen