mirror of
https://github.com/project-zot/zot.git
synced 2026-06-16 04:17:55 +08:00
refactor(authz): use a struct for user access control info operations (#1682)
fix(authz): fix isAdmin not using groups to determine if a user is admin. fix(authz): return 401 instead of 403 403 is correct as per HTTP spec However authz is not part of dist-spec and clients know only about 401 So this is a compromise. Signed-off-by: Petu Eusebiu <peusebiu@cisco.com>
This commit is contained in:
@@ -249,6 +249,19 @@ func (c *Config) IsLdapAuthEnabled() bool {
|
||||
return false
|
||||
}
|
||||
|
||||
func (c *Config) IsMTLSAuthEnabled() bool {
|
||||
if c.HTTP.TLS != nil &&
|
||||
c.HTTP.TLS.Key != "" &&
|
||||
c.HTTP.TLS.Cert != "" &&
|
||||
c.HTTP.TLS.CACert != "" &&
|
||||
!c.IsBasicAuthnEnabled() &&
|
||||
!c.HTTP.AccessControl.AnonymousPolicyExists() {
|
||||
return true
|
||||
}
|
||||
|
||||
return false
|
||||
}
|
||||
|
||||
func (c *Config) IsHtpasswdAuthEnabled() bool {
|
||||
if c.HTTP.Auth != nil && c.HTTP.Auth.HTPasswd.Path != "" {
|
||||
return true
|
||||
|
||||
Reference in New Issue
Block a user