Google Cloud Deployment Manager ile bir güvenlik duvarı kaynağı dağıtırken ResourceErrorCode: 400 nasıl çözülür?
Google Cloud Deployment Manager ile tek bir güvenlik duvarı kaynağı dağıtmaya çalışıyorum. Güvenlik duvarının, halihazırda dağıtılmış olan App Engine uygulamama erişmesini yalnızca kendi IP adresimin engellemesini istiyorumhttps://cloudfunctiongateway.uc.r.appspot.com/. Ancak bir hata alıyorum:
location: /deployments/firewall-deployment2/resources/app-firewall
message: '{"ResourceType":"compute.v1.firewall","ResourceErrorCode":"400","ResourceErrorMessage":{"code":400,"message":"Request
contains an invalid argument.","status":"INVALID_ARGUMENT","statusMessage":"Bad
Request","requestPath":"https://compute.googleapis.com/compute/v1/projects/cloudfunctiongateway/global/firewalls","httpMethod":"POST"}}'
İşte benim yapılandırma dosyam firewall.yaml
:
resources:
- type: compute.v1.firewall
name: app-firewall
properties:
network: https://cloudfunctiongateway.uc.r.appspot.com/
denied:
- IPProtocol: 33.27.10.123 # a fake ip address, I use my real one
sourceRanges: [ 0.0.0.0/0 ]
Ve bu komutu aynı dizinde çalıştırıyorum:
gcloud deployment-manager deployments create firewall-deployment --config firewall.yaml
Yapılandırma dosyamda sadece bununla dağıtmayı bile denedim:
resources:
- type: compute.v1.firewall
name: app-firewall
Ama yine de aynı hata mesajını alıyorum. Bunu düzeltmenin bir yolu var mı? Not Bunu Deployment Manager ile yapabilmek istiyorum. App Engine Kontrol Panelinden manuel olarak bir güvenlik duvarı kurabileceğimi zaten biliyorum.
Yanıtlar
Aslında ihtiyacınız olan şey, App Engine uygulaması için GCP Güvenlik Duvarından farklı bir güvenlik duvarı kuralı oluşturmaktır - bunlar iki farklı şeydir.
Yani - bunu yapmak için şunu çalıştırmayı deneyin:
resources:
- name: dmapprule1
type: gcp-types/appengine-v1:apps.firewall.ingressRules
properties:
appsId: 00c61b117c74f1a3bbcb4900df618a4c4ae211790ade0822a63cb492d671f318776a5a
priority: 1000
action: "DENY"
source_range: "0.0.0.0/0"
ve birlikte çalıştır gcloud deployment-manager deployments create firewall-deployment --config firewall.yaml
GÜNCELLEME
Desteklenen türlerin tam listesini görmek için kullanın gcloud beta deployment-manager types list
(beta sürüm listesi çok daha kapsamlıdır).