GCP - App Engine Enum
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Google Cloud Platform's (GCP) App Engine je robustna, serverless platforma prilagođena razvoju i hostovanju web aplikacija na velikoj skali. Dizajn ove platforme fokusira se na pojednostavljenje procesa razvoja i poboljšanje upravljivosti aplikacija. Ključne karakteristike i prednosti GCP-ovog App Engine-a uključuju:
Serverless arhitektura: App Engine automatski upravlja infrastrukturom, uključujući obezbeđivanje servera, konfiguraciju i skaliranje. Ovo omogućava programerima da se fokusiraju na pisanje koda bez brige o osnovnom hardveru.
Automatsko skaliranje: App Engine može automatski skalirati vašu aplikaciju u zavisnosti od količine saobraćaja koji prima. Skalira se kako bi obradio povećani saobraćaj i smanjuje se kada saobraćaj opada, pomažući u optimizaciji troškova i performansi.
Podrška za jezike i runtime: Podržava popularne programske jezike kao što su Java, Python, Node.js, Go, Ruby, PHP i .NET. Možete pokrenuti svoje aplikacije u standardnom ili fleksibilnom okruženju. Standardno okruženje je restriktivnije, ali visoko optimizovano za specifične jezike, dok fleksibilno okruženje omogućava više prilagođavanja.
Integrisane usluge: App Engine se integriše sa mnogim drugim GCP uslugama, kao što su Cloud SQL, Cloud Storage, Cloud Datastore i druge. Ova integracija pojednostavljuje arhitekturu aplikacija zasnovanih na oblaku.
Verzionisanje i deljenje saobraćaja: Možete lako implementirati više verzija svoje aplikacije i zatim deliti saobraćaj među njima za A/B testiranje ili postepeno uvođenje.
Uvidi u aplikaciju: App Engine pruža ugrađene usluge kao što su logovanje, autentifikacija korisnika i paket alata za programere za praćenje i upravljanje aplikacijama.
Bezbednost: Pruža ugrađene bezbednosne karakteristike kao što su verzionisanje aplikacija, SSL/TLS sertifikati za sigurne veze i upravljanje identitetom i pristupom.
Jednostavan firewall može biti konfigurisan za instance koje pokreću aplikacije sa sledećim opcijama:
Podrazumevani servisni nalog koji koriste ove aplikacije je <proj-name>@appspot.gserviceaccount.com
koji ima Editor ulogu nad projektom, a SA unutar APP Engine instance radi sa cloud-platform opsegom (među ostalim).
Izvorni kod i metapodaci se automatski čuvaju u kanticama sa imenima kao što su <proj-id>.appspot.com
i staging.<proj-id>.appspot.com
i <country>.<proj-id>.appspot.com
Svaka datoteka aplikacije se čuva sa sha1 sadržaja kao imenom datoteke:
Unutar ae
foldera sa staging.<proj-id>.appspot.com
, postoji jedan folder po verziji sa izvornim kodom i manifest.json
datotekom koja opisuje komponente aplikacije:
Web aplikacija će na kraju biti izvršena unutar kontejnera i Code Build se koristi za izgradnju kontejnera.
Podrazumevana web stranica će biti izložena na URL-u <project-uniq-name>.appspot.com
, iako će URL starijih verzija biti malo drugačiji, kao https://20240117t001540-dot-<project-uniq-name>.uc.r.appspot.com
(obratite pažnju na početni vremenski pečat).
Može izgledati kao da je moguće implementirati samo 1 aplikaciju engine po regionu, ali je moguće naznačiti service: <servicename>
u app.yml
i kreirati novu uslugu (novu web). Format URL-a za ovu novu web će biti <servicename>-dot-<project-uniq-name>.appspot.com
.
Svaki put kada otpremite novi kod na aplikaciju, nova verzija se kreira. Sve verzije se čuvaju i čak imaju URL za pristup njima. Tako da modifikacija koda stare verzije može biti sjajna tehnika za postizanje trajnosti.
Kao i sa Cloud Functions, postoji šansa da aplikacija zavisi od tajni koje se pristupaju u vreme izvršavanja putem promenljivih okruženja. Ove promenljive se čuvaju u app.yaml
datoteci koja se može pristupiti na sledeći način:
Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)