You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
v1beta1/Backendconfig securityPolicy.name will be removed after apply #1508
$ kubectl version
Client Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.1", GitCommit:"5e58841cce77d4bc13713ad2b91fa0d961e69192", GitTreeState:"clean", BuildDate:"2021-05-12T14:18:45Z", GoVersion:"go1.16.4", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"19+", GitVersion:"v1.19.10-gke.1600", GitCommit:"7b8e568a7fb4c9d199c2ba29a5f7d76f6b4341c2", GitTreeState:"clean", BuildDate:"2021-05-07T09:18:53Z", GoVersion:"go1.15.10b5", Compiler:"gc", Platform:"linux/amd64"}
WARNING: version difference between client (1.21) and server (1.19) exceeds the supported minor version skew of +/-1
Reproduced with GKE 1.18.20-gke.900. 1.17.17-gke.9100 seems fine.
I think this may be a security risk.
If a user upgrades a cluster from 1.17 to 1.18+ and reapplies an existing v1beta1 BackendConfig which has SecurityPolicy, then LoadBalancer will lose CloudArmor protection.
So, for example, IP-restricted resource could be exposed to the public.
Reproduced with GKE 1.18.20-gke.900. 1.17.17-gke.9100 seems fine.
I think this may be a security risk.
If a user upgrades a cluster from 1.17 to 1.18+ and reapplies an existing v1beta1 BackendConfig which has SecurityPolicy, then LoadBalancer will lose CloudArmor protection.
So, for example, IP-restricted resource could be exposed to the public.
This happened to us. We use Cloud Armor to restrict admin services to VPN-only. Could y'all post a notice on the GKE release notes with this bug and the workaround?
GKE 1.19.x is now patched as of GKE 1.19.14-gke.301 and later. These versions are no longer impacted by this issue and can use v1beta1 BackendConfig versions without any Cloud Armor issues.
GKE 1.18.x is targeted to be patched within the next 2 weeks. GKE 1.18.x clusters should continue using the v1 BackendConfig resources as a workaround until GKE 1.18.x is patched.
Activity
yokomotod commentedon Jul 14, 2021
v1works fineor using Server-side Apply also fine even with
v1beta1sekinet commentedon Jul 16, 2021
We've got same issue with v1.19.10-gke.1600
yokomotod commentedon Jul 17, 2021
Reproduced with GKE 1.18.20-gke.900. 1.17.17-gke.9100 seems fine.
I think this may be a security risk.
If a user upgrades a cluster from 1.17 to 1.18+ and reapplies an existing v1beta1 BackendConfig which has
SecurityPolicy, then LoadBalancer will lose CloudArmor protection.So, for example, IP-restricted resource could be exposed to the public.
yokomotod commentedon Jul 17, 2021
I found that 1.21.2-gke.600 has already solved this problem.
I didn't know what change fixed the issue, but I hope it will be backported to 1.18-1.20.
rramkumar1 commentedon Aug 3, 2021
@skmatti
skmatti commentedon Aug 3, 2021
The issue resulted from missing validation for
securityPolicyfield in the v1beta1 CRD.The fix (#1512) was backported to GKE v1.20.9-gke.900+ and will be backported to 1.18 and 1.19 as well.
skmatti commentedon Aug 3, 2021
/assign
yokomotod commentedon Aug 4, 2021
@skmatti Thanks!!
jbuck commentedon Aug 10, 2021
This happened to us. We use Cloud Armor to restrict admin services to VPN-only. Could y'all post a notice on the GKE release notes with this bug and the workaround?
Thanks, Jon
bowei commentedon Aug 12, 2021
The release should be update soon @skmatti
skmatti commentedon Aug 13, 2021
Our docs are updated with the issue details: https://cloud.google.com/kubernetes-engine/docs/how-to/ingress-features#armor_fields_removed
A release note will be sent early next week about the fix in GKE v1.20.9-gke.900
skmatti commentedon Aug 17, 2021
Release notes for GKE v1.20: https://cloud.google.com/kubernetes-engine/docs/release-notes#August_17_2021
Will keep this thread posted on the release notes for 1.19 and 1.18 in next couple of weeks.
rrondeau commentedon Aug 18, 2021
I just found this, this is huge for us.
All our platforms were exposed without policies ðĻ
We are on v1.18.20-gke.900 and v1.20.8-gke.900
tacumai commentedon Aug 25, 2021
I've faced the same problem at
1.20.8-gke.2100.thanks for the issue, I got the solution. thanks.
mark-church commentedon Sep 13, 2021
GKE 1.19.x is now patched as of GKE 1.19.14-gke.301 and later. These versions are no longer impacted by this issue and can use v1beta1 BackendConfig versions without any Cloud Armor issues.
GKE 1.18.x is targeted to be patched within the next 2 weeks. GKE 1.18.x clusters should continue using the v1 BackendConfig resources as a workaround until GKE 1.18.x is patched.
k8s-triage-robot commentedon Dec 12, 2021
The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs.
This bot triages issues and PRs according to the following rules:
lifecycle/staleis appliedlifecycle/stalewas applied,lifecycle/rottenis appliedlifecycle/rottenwas applied, the issue is closedYou can:
/remove-lifecycle stale/lifecycle rotten/closePlease send feedback to sig-contributor-experience at kubernetes/community.
/lifecycle stale