From 77091a3ae5d4971f65874f98257e83c5c5017c64 Mon Sep 17 00:00:00 2001 From: Yang Luo Date: Fri, 13 Oct 2023 12:54:57 +0800 Subject: [PATCH] Fix null model issue in UpdatePermission() --- object/permission.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/object/permission.go b/object/permission.go index 0d9eb471..d08a97ba 100644 --- a/object/permission.go +++ b/object/permission.go @@ -154,14 +154,17 @@ func UpdatePermission(id string, permission *Permission) (bool, error) { model, err := GetModel(util.GetId(owner, permission.Model)) if err != nil { return false, err + } else if model == nil { + return false, fmt.Errorf("the model: %s for permission: %s is not found", permission.Model, permission.GetId()) } + modelCfg, err := getModelCfg(model) if err != nil { return false, err } if len(strings.Split(modelCfg["p"], ",")) != 3 { - return false, fmt.Errorf("the model: %s for permission: %s is not valid, application type resources need 3 size [policy_defination] model", permission.Model, permission.GetId()) + return false, fmt.Errorf("the model: %s for permission: %s is not valid, Casbin model's [policy_defination] section should have 3 elements", permission.Model, permission.GetId()) } }