# yaml-language-server: $schema=https://api.cerbos.dev/latest/cerbos/policy/v1/Policy.schema.json
---
apiVersion: api.cerbos.dev/v1
resourcePolicy:
  version: default
  resource: sound_recording
  schemas:
    principalSchema:
      ref: cerbos:///principal.json
    resourceSchema:
      ref: cerbos:///identity_and_tenant_owned_resource.json
  importDerivedRoles:
    - nr_ownership
  rules:
  - name: sound_recording_view
    actions: ["view"]
    derivedRoles: [
      "content_nr_ownership_sr_can_view",
      "content_nr_ownership_sr_can_create",
      "content_nr_ownership_sr_can_manage",
      "content_nr_ownership_sr_can_delete",
    ]
    effect: EFFECT_ALLOW
  - name: sound_recording_create
    actions: ["create"]
    derivedRoles: [
      "content_nr_ownership_sr_can_create",
      "content_nr_ownership_sr_can_manage",
      "content_nr_ownership_sr_can_delete",
    ]
    effect: EFFECT_ALLOW
  - name: sound_recording_edit
    actions: ["edit"]
    derivedRoles: [
      "content_nr_ownership_sr_can_manage",
      "content_nr_ownership_sr_can_delete",
    ]
    effect: EFFECT_ALLOW
