mirror of
https://github.com/casdoor/casdoor.git
synced 2025-09-09 00:42:56 +08:00
fix: check the duplicated Application ClientId (#1481)
* fix: Check the duplicate ClientId and ClientSecret of Application. * Bug fix
This commit is contained in:
@@ -287,7 +287,8 @@ func GetMaskedApplications(applications []*Application, userId string) []*Applic
|
|||||||
|
|
||||||
func UpdateApplication(id string, application *Application) bool {
|
func UpdateApplication(id string, application *Application) bool {
|
||||||
owner, name := util.GetOwnerAndNameFromId(id)
|
owner, name := util.GetOwnerAndNameFromId(id)
|
||||||
if getApplication(owner, name) == nil {
|
oldApplication := getApplication(owner, name)
|
||||||
|
if oldApplication == nil {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -302,6 +303,10 @@ func UpdateApplication(id string, application *Application) bool {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if oldApplication.ClientId != application.ClientId && GetApplicationByClientId(application.ClientId) != nil {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
for _, providerItem := range application.Providers {
|
for _, providerItem := range application.Providers {
|
||||||
providerItem.Provider = nil
|
providerItem.Provider = nil
|
||||||
}
|
}
|
||||||
@@ -325,6 +330,9 @@ func AddApplication(application *Application) bool {
|
|||||||
if application.ClientSecret == "" {
|
if application.ClientSecret == "" {
|
||||||
application.ClientSecret = util.GenerateClientSecret()
|
application.ClientSecret = util.GenerateClientSecret()
|
||||||
}
|
}
|
||||||
|
if GetApplicationByClientId(application.ClientId) != nil {
|
||||||
|
return false
|
||||||
|
}
|
||||||
for _, providerItem := range application.Providers {
|
for _, providerItem := range application.Providers {
|
||||||
providerItem.Provider = nil
|
providerItem.Provider = nil
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user