[英]bad credential error in spring-boot application
我正在使用Oauth2並連接SqlServer的spring-boot應用程序上工作。 因此,當我點擊如下所示的訪問令牌URL時:
localhost:8081/oauth/token?client_secret=secret&client_id=web&grant_type=password&username=XXXX&password=XXXXXXX
我得到的回應是:
{ "error": "invalid_grant", "error_description": "Bad credentials" }
所以我覺得這是因為@Table注釋和休眠所具有的命名約定錯誤。 使用spring 1.5.9 and hibernate 5.0.12
I / m。
我的Account.java文件是:
package com.oauth.oserver.entities;
import javax.persistence.*;
@Entity
@Table(name = "userinfo")
public class Account {
@Id
@GeneratedValue
private Long id;
@Column(name = "name")
private String username;
@Column(name = "password")
private String password;
public Account() {
}
public Account(String username, String password) {
this.username = username;
this.password = password;
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
數據庫包含名稱為UserInfo
表。
從OAuth2 doc( https://tools.ietf.org/html/rfc6749 ),該錯誤對應於:
invalid_grant提供的授權授權(例如,授權代碼,資源所有者憑證)或刷新令牌無效,已過期,已吊銷,與授權請求中使用的重定向URI不匹配,或已頒發給另一個客戶端。
因此,請確保您輸入了正確的贈款。 如果是這樣,請將@table名稱更改為“ UserInfo”,而不是“ userinfo”。 希望能有所幫助。 並請查看表命名策略: https : //docs.jboss.org/hibernate/orm/3.5/api/org/hibernate/cfg/ImprovedNamingStrategy.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.