Skip to content

Latest commit

 

History

History
35 lines (26 loc) · 1.19 KB

README.md

File metadata and controls

35 lines (26 loc) · 1.19 KB

gae-worm

Google App Engine Worm is Python based web application designed to expose GCP settings publicly and clone itself to other projects

This app was created as proof of concept for testing GCP IAM and answering questions:

  • Can GAE app clone itself to other repo using it's appspot.com service account?
  • Can one service account create keys for other service account?
  • Can service account list GCP resources, like other projects and/or service accounts?

Features

GAE Worm can:

  • list GCP resources to which GAE app has access:
    • projects
    • projects IAM
    • service accounts
    • enabled services
  • create service account keys for given service account
  • enable service for given project
  • deploy itself (from Google Cloud Storage bucket) using GAE Admin API

GCS link to sources: https://storage.googleapis.com/gae-worm/gae-worm-v1.zip

Setup

Install dependencies:

pip install -t lib -r requirements.txt

Run locally:

dev_appserver.py app.yaml