OAuth 2 PKCE 持久化

This commit is contained in:
Crystal.Sea
2021-10-09 14:28:56 +08:00
parent 121fe4123b
commit eca3367610
12 changed files with 115 additions and 40 deletions

View File

@@ -62,6 +62,8 @@ public class AppsOAuth20Details extends Apps {
private String userInfoEncryptionMethod;
private String jwksUri;
private String pkce;
/**
*
@@ -88,7 +90,7 @@ public class AppsOAuth20Details extends Apps {
this.setVendor(application.getVendor());
this.setVendorUrl(application.getVendorUrl());
this.setVisible(application.getVisible());
this.clientSecret = baseClientDetails.getClientSecret();
this.scope = baseClientDetails.getScope().toString();
this.resourceIds = baseClientDetails.getResourceIds().toString();
@@ -110,9 +112,19 @@ public class AppsOAuth20Details extends Apps {
this.jwksUri = baseClientDetails.getJwksUri();
this.approvalPrompt = baseClientDetails.getApprovalPrompt();
this.pkce = baseClientDetails.getPkce();
}
public String getPkce() {
return pkce;
}
public void setPkce(String pkce) {
this.pkce = pkce;
}
/**
* @return the clientId
*/
@@ -327,6 +339,8 @@ public class AppsOAuth20Details extends Apps {
baseClientDetails.setJwksUri(this.getJwksUri());
baseClientDetails.setApprovalPrompt(this.getApprovalPrompt());
baseClientDetails.setPkce(this.getPkce());
baseClientDetails.setProtocol(this.getProtocol());
return baseClientDetails;
}

View File

@@ -147,5 +147,10 @@ public interface ClientDetails extends Serializable {
public String getJwksUri();
public String getApprovalPrompt();
public String getPkce();
public String getProtocol();
}

View File

@@ -94,6 +94,10 @@ public class BaseClientDetails implements ClientDetails {
private String approvalPrompt;
private String pkce;
private String protocol;
public BaseClientDetails() {
}
@@ -370,6 +374,22 @@ public class BaseClientDetails implements ClientDetails {
public void setApprovalPrompt(String approvalPrompt) {
this.approvalPrompt = approvalPrompt;
}
public String getPkce() {
return pkce;
}
public void setPkce(String pkce) {
this.pkce = pkce;
}
public String getProtocol() {
return protocol;
}
public void setProtocol(String protocol) {
this.protocol = protocol;
}
@Override
public int hashCode() {