diff --git a/object/cert.go b/object/cert.go index f0cfe78d..04ba8076 100644 --- a/object/cert.go +++ b/object/cert.go @@ -228,7 +228,7 @@ func (p *Cert) populateContent() error { if sigAlgorithm == "RS" { certificate, privateKey, err = generateRsaKeys(p.BitSize, shaSize, p.ExpireInYears, p.Name, p.Owner) } else if sigAlgorithm == "ES" { - certificate, privateKey, err = generateEsKeys(p.BitSize, shaSize, p.ExpireInYears, p.Name, p.Owner) + certificate, privateKey, err = generateEsKeys(shaSize, p.ExpireInYears, p.Name, p.Owner) } else if sigAlgorithm == "PS" { certificate, privateKey, err = generateRsaPssKeys(p.BitSize, shaSize, p.ExpireInYears, p.Name, p.Owner) } else { diff --git a/object/token_jwt_key.go b/object/token_jwt_key.go index e4616999..3c0eefee 100644 --- a/object/token_jwt_key.go +++ b/object/token_jwt_key.go @@ -83,7 +83,7 @@ func generateRsaKeys(bitSize int, shaSize int, expireInYears int, commonName str return string(certPem), string(privateKeyPem), nil } -func generateEsKeys(bitSize int, shaSize int, expireInYears int, commonName string, organization string) (string, string, error) { +func generateEsKeys(shaSize int, expireInYears int, commonName string, organization string) (string, string, error) { var curve elliptic.Curve switch shaSize { case 256: diff --git a/object/token_jwt_key_test.go b/object/token_jwt_key_test.go index 8bc7172a..d40ed84a 100644 --- a/object/token_jwt_key_test.go +++ b/object/token_jwt_key_test.go @@ -37,7 +37,7 @@ func TestGenerateRsaKeys(t *testing.T) { func TestGenerateEsKeys(t *testing.T) { fileId := "token_jwt_key" - certificate, privateKey, err := generateEsKeys(4096, 256, 20, "Casdoor Cert", "Casdoor Organization") + certificate, privateKey, err := generateEsKeys(256, 20, "Casdoor Cert", "Casdoor Organization") if err != nil { panic(err) } diff --git a/web/src/CertEditPage.js b/web/src/CertEditPage.js index c4d3fe92..dbfa6977 100644 --- a/web/src/CertEditPage.js +++ b/web/src/CertEditPage.js @@ -172,14 +172,12 @@ class CertEditPage extends React.Component { - - - {Setting.getLabel(i18next.t("cert:Bit size"), i18next.t("cert:Bit size - Tooltip"))} : - - - - - + { + this.state.cert.cryptoAlgorithm.startsWith("ES") ? null : ( + + + {Setting.getLabel(i18next.t("cert:Bit size"), i18next.t("cert:Bit size - Tooltip"))} : + + + + + + ) + } {Setting.getLabel(i18next.t("cert:Expire in years"), i18next.t("cert:Expire in years - Tooltip"))} : diff --git a/web/src/Setting.js b/web/src/Setting.js index ed764cdf..070d92d5 100644 --- a/web/src/Setting.js +++ b/web/src/Setting.js @@ -1101,7 +1101,9 @@ export function getProviderTypeOptions(category) { } export function getCryptoAlgorithmOptions(cryptoAlgorithm) { - if (cryptoAlgorithm === "RS256") { + if (cryptoAlgorithm.startsWith("ES")) { + return []; + } else { return ( [ {id: 1024, name: "1024"}, @@ -1109,26 +1111,6 @@ export function getCryptoAlgorithmOptions(cryptoAlgorithm) { {id: 4096, name: "4096"}, ] ); - } else if (cryptoAlgorithm === "HS256" || cryptoAlgorithm === "ES256") { - return ( - [ - {id: 256, name: "256"}, - ] - ); - } else if (cryptoAlgorithm === "ES384") { - return ( - [ - {id: 384, name: "384"}, - ] - ); - } else if (cryptoAlgorithm === "ES521") { - return ( - [ - {id: 521, name: "521"}, - ] - ); - } else { - return []; } }