Use util.GetId()

This commit is contained in:
Yang Luo 2023-05-19 14:26:32 +08:00
parent de73ff0e60
commit 79bd58e0e6
8 changed files with 11 additions and 14 deletions

View File

@ -15,13 +15,13 @@
package authz
import (
"fmt"
"strings"
"github.com/casbin/casbin/v2"
"github.com/casbin/casbin/v2/model"
"github.com/casdoor/casdoor/conf"
"github.com/casdoor/casdoor/object"
"github.com/casdoor/casdoor/util"
xormadapter "github.com/casdoor/xorm-adapter/v3"
stringadapter "github.com/qiangmzsx/string-adapter/v2"
)
@ -150,8 +150,7 @@ func IsAllowed(subOwner string, subName string, method string, urlPath string, o
}
}
userId := fmt.Sprintf("%s/%s", subOwner, subName)
user := object.GetUser(userId)
user := object.GetUser(util.GetId(subOwner, subName))
if user != nil && user.IsAdmin && (subOwner == objOwner || (objOwner == "admin")) {
return true
}

View File

@ -84,7 +84,7 @@ func (c *ApiController) Signup() {
return
}
organization := object.GetOrganization(fmt.Sprintf("%s/%s", "admin", authForm.Organization))
organization := object.GetOrganization(util.GetId("admin", authForm.Organization))
msg := object.CheckUserSignup(application, organization, &authForm, c.GetAcceptLanguage())
if msg != "" {
c.ResponseError(msg)

View File

@ -335,7 +335,7 @@ func (c *ApiController) Login() {
return
}
organization := object.GetOrganization(fmt.Sprintf("%s/%s", "admin", application.Organization))
organization := object.GetOrganization(util.GetId("admin", application.Organization))
provider := object.GetProvider(util.GetId("admin", authForm.Provider))
providerItem := application.GetProviderItem(provider.Name)
if !providerItem.IsProviderVisible() {
@ -396,7 +396,7 @@ func (c *ApiController) Login() {
if authForm.Method == "signup" {
user := &object.User{}
if provider.Category == "SAML" {
user = object.GetUser(fmt.Sprintf("%s/%s", application.Organization, userInfo.Id))
user = object.GetUser(util.GetId(application.Organization, userInfo.Id))
} else if provider.Category == "OAuth" {
user = object.GetUserByField(application.Organization, provider.Type, userInfo.Id)
}
@ -440,7 +440,7 @@ func (c *ApiController) Login() {
}
// Handle username conflicts
tmpUser := object.GetUser(fmt.Sprintf("%s/%s", application.Organization, userInfo.Username))
tmpUser := object.GetUser(util.GetId(application.Organization, userInfo.Username))
if tmpUser != nil {
uid, err := uuid.NewRandom()
if err != nil {

View File

@ -98,7 +98,7 @@ func (c *ApiController) GetUser() {
owner = util.GetOwnerFromId(id)
}
organization := object.GetOrganization(fmt.Sprintf("%s/%s", "admin", owner))
organization := object.GetOrganization(util.GetId("admin", owner))
if !organization.IsProfilePublic {
requestUserId := c.GetSessionUsername()
hasPermission, err := object.CheckUserPermission(requestUserId, id, false, c.GetAcceptLanguage())

View File

@ -318,7 +318,7 @@ func GetCaptchaProviderByApplication(applicationId, isCurrentProvider, lang stri
continue
}
if provider.Provider.Category == "Captcha" {
return GetCaptchaProviderByOwnerName(fmt.Sprintf("%s/%s", provider.Provider.Owner, provider.Provider.Name), lang)
return GetCaptchaProviderByOwnerName(util.GetId(provider.Provider.Owner, provider.Provider.Name), lang)
}
}
return nil, nil

View File

@ -233,7 +233,7 @@ func generateJwtToken(application *Application, user *User, nonce string, scope
_, originBackend := getOriginFromHost(host)
name := util.GenerateId()
jti := fmt.Sprintf("%s/%s", application.Owner, name)
jti := util.GetId(application.Owner, name)
claims := Claims{
User: user,

View File

@ -43,7 +43,7 @@ func AutoSigninFilter(ctx *context.Context) {
return
}
userId := fmt.Sprintf("%s/%s", token.Organization, token.User)
userId := util.GetId(token.Organization, token.User)
application, _ := object.GetApplicationByUserId(fmt.Sprintf("app/%s", token.Application))
setSessionUser(ctx, userId)
setSessionOidc(ctx, token.Scope, application.ClientId)

View File

@ -15,8 +15,6 @@
package routers
import (
"fmt"
"github.com/beego/beego/context"
"github.com/casdoor/casdoor/object"
"github.com/casdoor/casdoor/util"
@ -50,7 +48,7 @@ func getUserByClientIdSecret(ctx *context.Context) string {
return ""
}
return fmt.Sprintf("%s/%s", application.Organization, application.Name)
return util.GetId(application.Organization, application.Name)
}
func RecordMessage(ctx *context.Context) {