gcp-appengine-app-admin

derived gcp emits CanAdminister

match (effective permission)

{ "action": "appengine.applications.update", "resource_type": "google.appengine.Application" }

where

principal effectively holds the appAdmin set: appengine.services.update, appengine.versions.create, appengine.versions.update, appengine.versions.delete, appengine.instances.delete

emit

source typeIdentity
target type*
source<principal>
target<App Engine application>
permissionsappengine.applications.update appengine.services.update appengine.versions.create appengine.versions.update appengine.instances.delete

Narrative

{principal.name} has full control of App Engine app {app.name} (roles/appengine.appAdmin), able to deploy, reconfigure, and route traffic.

Raw rule rules/derived/gcp/appengine.yaml

id: gcp-appengine-app-admin
emits: CanAdminister
match_effective_permission:
  action: appengine.applications.update
  resource_type: google.appengine.Application
where:
- 'principal effectively holds the appAdmin set: appengine.services.update, appengine.versions.create,
  appengine.versions.update, appengine.versions.delete, appengine.instances.delete'
emit:
  source_type: Identity
  target_type: '*'
  source: <principal>
  target: <App Engine application>
  permissions:
  - appengine.applications.update
  - appengine.services.update
  - appengine.versions.create
  - appengine.versions.update
  - appengine.instances.delete
  narrative: '{principal.name} has full control of App Engine app {app.name} (roles/appengine.appAdmin),
    able to deploy, reconfigure, and route traffic.'
move · open · esc close