From 49a38728aa9289907a0a37156ab7f347539e2b39 Mon Sep 17 00:00:00 2001 From: Tim Allclair Date: Mon, 11 Sep 2017 11:47:03 -0700 Subject: [PATCH] '*' is valid for allowed seccomp profiles --- pkg/apis/extensions/validation/validation.go | 3 +++ pkg/apis/extensions/validation/validation_test.go | 11 ++++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/pkg/apis/extensions/validation/validation.go b/pkg/apis/extensions/validation/validation.go index 7323b6c9892..502682a7b70 100644 --- a/pkg/apis/extensions/validation/validation.go +++ b/pkg/apis/extensions/validation/validation.go @@ -698,6 +698,9 @@ func ValidatePodSecurityPolicySpecificAnnotations(annotations map[string]string, } if allowed := annotations[seccomp.AllowedProfilesAnnotationKey]; allowed != "" { for _, p := range strings.Split(allowed, ",") { + if p == seccomp.AllowAny { + continue + } allErrs = append(allErrs, apivalidation.ValidateSeccompProfile(p, fldPath.Key(seccomp.AllowedProfilesAnnotationKey))...) } } diff --git a/pkg/apis/extensions/validation/validation_test.go b/pkg/apis/extensions/validation/validation_test.go index 2bd0d5a051d..89e3ae1f4d6 100644 --- a/pkg/apis/extensions/validation/validation_test.go +++ b/pkg/apis/extensions/validation/validation_test.go @@ -2496,6 +2496,10 @@ func TestValidatePodSecurityPolicy(t *testing.T) { invalidSeccompDefault.Annotations = map[string]string{ seccomp.DefaultProfileAnnotationKey: "not-good", } + invalidSeccompAllowAnyDefault := validPSP() + invalidSeccompAllowAnyDefault.Annotations = map[string]string{ + seccomp.DefaultProfileAnnotationKey: "*", + } invalidSeccompAllowed := validPSP() invalidSeccompAllowed.Annotations = map[string]string{ seccomp.AllowedProfilesAnnotationKey: "docker/default,not-good", @@ -2616,6 +2620,11 @@ func TestValidatePodSecurityPolicy(t *testing.T) { errorType: field.ErrorTypeInvalid, errorDetail: "must be a valid seccomp profile", }, + "invalid seccomp allow any default profile": { + psp: invalidSeccompAllowAnyDefault, + errorType: field.ErrorTypeInvalid, + errorDetail: "must be a valid seccomp profile", + }, "invalid seccomp allowed profile": { psp: invalidSeccompAllowed, errorType: field.ErrorTypeInvalid, @@ -2707,7 +2716,7 @@ func TestValidatePodSecurityPolicy(t *testing.T) { validSeccomp := validPSP() validSeccomp.Annotations = map[string]string{ seccomp.DefaultProfileAnnotationKey: "docker/default", - seccomp.AllowedProfilesAnnotationKey: "docker/default,unconfined,localhost/foo", + seccomp.AllowedProfilesAnnotationKey: "docker/default,unconfined,localhost/foo,*", } validDefaultAllowPrivilegeEscalation := validPSP()