@@ -2,7 +2,6 @@ package ingress
22
33import (
44 "context"
5- "slices"
65 "strings"
76 "sync"
87 "time"
@@ -16,6 +15,7 @@ import (
1615 "github.com/pkg/errors"
1716 "k8s.io/apimachinery/pkg/util/cache"
1817 "k8s.io/apimachinery/pkg/util/sets"
18+ "k8s.io/utils/strings/slices"
1919 "sigs.k8s.io/aws-load-balancer-controller/pkg/aws/services"
2020)
2121
@@ -153,18 +153,18 @@ func (d *acmCertDiscovery) loadDomainsForCertificate(ctx context.Context, certAR
153153 certDetail := resp .Certificate
154154
155155 // check if cert is issued from an allowed CA
156+ // otherwise empty-out the list of domains
157+ domains := sets.String {}
156158 if len (d .allowedCAARNs ) == 0 || slices .Contains (d .allowedCAARNs , awssdk .StringValue (certDetail .CertificateAuthorityArn )) {
157- domains := sets .NewString (aws .StringValueSlice (certDetail .SubjectAlternativeNames )... )
158- switch aws .StringValue (certDetail .Type ) {
159- case acm .CertificateTypeImported :
160- d .certDomainsCache .Set (certARN , domains , d .importedCertDomainsCacheTTL )
161- case acm .CertificateTypeAmazonIssued , acm .CertificateTypePrivate :
162- d .certDomainsCache .Set (certARN , domains , d .privateCertDomainsCacheTTL )
163- }
164- return domains , nil
159+ domains = sets .NewString (aws .StringValueSlice (certDetail .SubjectAlternativeNames )... )
165160 }
166- return sets.String {}, nil
167-
161+ switch aws .StringValue (certDetail .Type ) {
162+ case acm .CertificateTypeImported :
163+ d .certDomainsCache .Set (certARN , domains , d .importedCertDomainsCacheTTL )
164+ case acm .CertificateTypeAmazonIssued , acm .CertificateTypePrivate :
165+ d .certDomainsCache .Set (certARN , domains , d .privateCertDomainsCacheTTL )
166+ }
167+ return domains , nil
168168}
169169
170170func (d * acmCertDiscovery ) domainMatchesHost (domainName string , tlsHost string ) bool {
0 commit comments