Skip to content
Back to skills

Execution Authorization Review

ASecurity

Review and verify cryptographically bound execution authorization envelopes and reject obsolete checksum receipts.

  • 2 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added October 15, 2026
securitypythonrustbashapisecurity

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned October 15, 2026

npx -y skills add sodejm/copilot-operation-plugin-for-security --skill execution-authorization-review --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Execution Authorization Review?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Execution Authorization Review
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/sodejm-execution-authorization-review/badge)](https://www.skillsdirectory.com/skills/sodejm-execution-authorization-review)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: execution-authorization-review
description: Review and verify cryptographically bound execution authorization envelopes and reject obsolete checksum receipts.
---

# Execution authorization review

Review, issue, and verify cryptographically bound, operator-authenticated execution authorization envelopes (`cops.execution-authorization/v1`) for immutable action plans (`cops.action-plan/v1`).

## Core Responsibilities

1. **Reject Legacy Receipts for Execution**:
   - Legacy checksum receipts (`schema_version: 1.0` or `receipt_id`) are unkeyed historical records.
   - They MUST NOT authorize any new live or executable security operation.
2. **Enforce Descriptor-Bound Envelopes**:
   - Execution authorizations must bind the exact `action_plan_id`, `plan_digest`, `engagement_id`, `specialist_id`, `target`, `limits`, `operations_summary`, and `credential_references`.
   - Modifying any operation, flag, target, or limit invalidates the envelope.
3. **Validate Lifecycles and Atomic Consumption**:
   - Envelopes transition from `approved` to `consumed`, `revoked`, or `expired`.
   - Replay of an already-consumed authorization envelope is strictly rejected.

## CLI Usage

### Validate an Execution Authorization Contract

```bash
python3 -m cops contract validate path/to/auth-envelope.json --type execution_authorization
```

### Validate Authorization Lifecycle Transitions

```bash
python3 -m cops contract transition approved consumed --type execution_authorization
```

## Python API

```python
from cops.execution import (
    AuthorizationSigner,
    AuthorizationTrustStore,
    create_execution_authorization,
    verify_execution_authorization,
)

# The verifier loads this independently from an owner-controlled file. Never
# accept verification keys from an authorization envelope or request payload.
trust_store = AuthorizationTrustStore.from_file("path/to/authorization-trust.json")

# The signing secret comes from an operator-controlled secret store. HMAC key
# holders can both sign and verify, so this proves membership in that trust
# boundary rather than providing third-party non-repudiation.
signer = AuthorizationSigner(
    key_id="[REDACTED]",
    operator=engagement.operator,
    secret=signing_secret,
)

# 1. Create an envelope bound to the exact immutable plan and expected worker.
envelope = create_execution_authorization(
    action_plan=plan,
    signer=signer,
    engagement=engagement,
    worker_identity="worker-linux-01",
    valid_hours=4,
)

# 2. Verify prior to execution
verified_envelope = verify_execution_authorization(
    authorization=envelope,
    action_plan=plan,
    trust_store=trust_store,
    engagement=engagement,
    worker_identity="worker-linux-01",
)
```

Files in this skill

  • SKILL.md2.7 KB
  • tests/test_skill.py1.7 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.