azure-vmss-reimage

derived azure emits CanTrigger

match (effective permission)

{ "action": "Microsoft.Compute/virtualMachineScaleSets/reimage/action", "scope_type": "resource|resourceGroup|subscription|mg" }

emit

target typeCompute
source<principal>
target<scale set>
permissionsMicrosoft.Compute/virtualMachineScaleSets/reimage/action

Narrative

{principal.name} can reimage {vmss.name} (virtualMachineScaleSets/reimage/action), re-applying the model to running instances and detonating poisoned model/extension writes.

Raw rule rules/derived/azure/vmss.yaml

id: azure-vmss-reimage
emits: CanTrigger
match_effective_permission:
  action: Microsoft.Compute/virtualMachineScaleSets/reimage/action
  scope_type: resource|resourceGroup|subscription|mg
emit:
  target_type: Compute
  source: <principal>
  target: <scale set>
  permissions:
  - Microsoft.Compute/virtualMachineScaleSets/reimage/action
  note: Reimage/osRollingUpgrade re-applies the (poisoned) model to already-running instances - it causes
    the target to (re)execute the model, so this is a CanTrigger (detonation) semantic, NOT a power-on-a-stopped-fleet
    CanStart. Modeled as CanTrigger so path scoring does not conflate reimage with starting a deallocated
    fleet; it realizes CONDITIONAL(service_state) execution edges (azure-vmss-execute-as-via-code) by
    re-applying poisoned model/extension writes.
  narrative: '{principal.name} can reimage {vmss.name} (virtualMachineScaleSets/reimage/action), re-applying
    the model to running instances and detonating poisoned model/extension writes.'
move · open · esc close