From b633ecdcf29fec5a828fb4180cf95392b2dad583 Mon Sep 17 00:00:00 2001 From: Yang Luo Date: Fri, 15 Sep 2023 00:54:33 +0800 Subject: [PATCH] Fix bug that cannot access application's public certificate for non "admin" owner --- controllers/application.go | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/controllers/application.go b/controllers/application.go index 0a4c70f7..2751a694 100644 --- a/controllers/application.go +++ b/controllers/application.go @@ -90,14 +90,24 @@ func (c *ApiController) GetApplication() { return } - if c.Input().Get("withKey") != "" && application.Cert != "" { + if c.Input().Get("withKey") != "" && application != nil && application.Cert != "" { cert, err := object.GetCert(util.GetId(application.Owner, application.Cert)) if err != nil { c.ResponseError(err.Error()) return } - application.CertPublicKey = cert.Certificate + if cert == nil { + cert, err = object.GetCert(util.GetId(application.Organization, application.Cert)) + if err != nil { + c.ResponseError(err.Error()) + return + } + } + + if cert != nil { + application.CertPublicKey = cert.Certificate + } } c.ResponseOk(object.GetMaskedApplication(application, userId))