azure-batch-application-version-write

derived azure emits CanModifyCode

match (effective permission)

{ "action": "Microsoft.Batch/batchAccounts/applications/versions/write", "scope_type": "resource|resourceGroup|subscription" }

emit

source typeIdentity
source<principal>
target<batch application package>
permissionsMicrosoft.Batch/batchAccounts/applications/versions/write Microsoft.Batch/batchAccounts/applications/versions/activate/action
conditionsservice_state

Narrative

{principal.name} can upload and activate an application package (applications/versions/write + activate/action) deployed to Batch nodes.

Raw rule rules/derived/azure/batch.yaml

id: azure-batch-application-version-write
emits: CanModifyCode
match_effective_permission:
  action: Microsoft.Batch/batchAccounts/applications/versions/write
  scope_type: resource|resourceGroup|subscription
optional_permission: Microsoft.Batch/batchAccounts/applications/versions/activate/action
emit:
  source_type: Identity
  source: <principal>
  target: <batch application package>
  permissions:
  - Microsoft.Batch/batchAccounts/applications/versions/write
  - Microsoft.Batch/batchAccounts/applications/versions/activate/action
  conditions:
  - service_state
  escalation: Upload + activate an application package that is deployed to pool nodes referencing it,
    executing on the node.
  false_positive_note: Only reaches execution on pools that reference the application (applicationPackageReferences)
    and that have (or will have) nodes; else POTENTIAL.
  narrative: '{principal.name} can upload and activate an application package (applications/versions/write
    + activate/action) deployed to Batch nodes.'
move · open · esc close