empty audit policy file is legal configuration

Empty audit policy file or policy file contains only comments means
using default audit level for all requests.
This commit is contained in:
Cao Shufeng 2017-06-01 17:25:10 +08:00
parent c13d8917c2
commit b6b2a30e83
2 changed files with 6 additions and 3 deletions

View File

@ -34,6 +34,7 @@ go_library(
],
tags = ["automanaged"],
deps = [
"//vendor/github.com/golang/glog:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
"//vendor/k8s.io/apiserver/pkg/apis/audit:go_default_library",
"//vendor/k8s.io/apiserver/pkg/apis/audit/v1alpha1:go_default_library",

View File

@ -25,6 +25,8 @@ import (
auditv1alpha1 "k8s.io/apiserver/pkg/apis/audit/v1alpha1"
"k8s.io/apiserver/pkg/apis/audit/validation"
"k8s.io/apiserver/pkg/audit"
"github.com/golang/glog"
)
func LoadPolicyFromFile(filePath string) (*auditinternal.Policy, error) {
@ -35,9 +37,7 @@ func LoadPolicyFromFile(filePath string) (*auditinternal.Policy, error) {
if err != nil {
return nil, fmt.Errorf("failed to read file path %q: %+v", filePath, err)
}
if len(policyDef) == 0 {
return nil, fmt.Errorf("file %q was empty", filePath)
}
policyVersioned := &auditv1alpha1.Policy{}
decoder := audit.Codecs.UniversalDecoder(auditv1alpha1.SchemeGroupVersion)
@ -53,5 +53,7 @@ func LoadPolicyFromFile(filePath string) (*auditinternal.Policy, error) {
if err := validation.ValidatePolicy(policy); err != nil {
return nil, err.ToAggregate()
}
glog.V(4).Infof("Loaded %d audit policy rules from file %s\n", len(policy.Rules), filePath)
return policy, nil
}