Skip to content

Threat model updates v1.2 - #1333

Open
kumaab wants to merge 4 commits into
apache:masterfrom
kumaab:threat-model-updates-v2
Open

kumaab wants to merge 4 commits into
apache:masterfrom
kumaab:threat-model-updates-v2

Conversation

@kumaab

@kumaab kumaab commented Oct 24, 2026

Copy link
Copy Markdown
Contributor

What changes

Updates THREAT_MODEL.md to v1.2 with four PMC rulings, one per commit:

  • Service Admin and global roles. Adds Service Admin as a caller role. Roles are global, so a Service Admin of any service can create, delete, and grant/revoke membership of any role; this lets services such as Hive use Ranger roles. Recorded as by design (§2, §6–§11a). Also clarifies that the plugin-bucket "grant/revoke" in §14 Q10 means policy grant/revoke.
  • KMS endpoint authentication. No KMS endpoint is meant to be reachable without authentication, so any KMS HTTP path is in-model (§4, §11a).
  • Unauthenticated-access config. ranger.admin.allow.unauthenticated.access=true is not a supported production setting (OUT-OF-MODEL: non-default-build). ranger.admin.allow.unauthenticated.download.access=true is a supported, reduced posture (§5a, §9–§11).
  • Policy script sandbox. New §8 #7: scripts in policies run sandboxed and cannot run host code. An escape is VALID when a delegated, security-zone or Service Admin can write the script (§6–§8, §11a).

Testing: not applicable; no code or build changes.

- Add Service Admin as a caller role: trusted for its own service's
  policies and for every Ranger role, since roles are global
- Record role-level isolation between services as not provided (§9)
  and list cross-service role changes as a known non-finding (§11a)
- Add operator guidance and the service.admin.groups=public misuse
- Clarify that grant/revoke in §14 Q10 refers to policy grant/revoke
- State that no KMS endpoint is meant to be reachable without
  authentication, so any KMS HTTP path is in-model (§4)
- Add a §11a correction so KMS endpoints are not triaged as public
- ranger.admin.allow.unauthenticated.access=true is not a supported
  production posture; findings needing it are non-default-build (§5a)
- ranger.admin.allow.unauthenticated.download.access=true is a supported,
  reduced posture with download-data confidentiality disclaimed (§9)
- Add operator guidance (§10) and the production misuse (§11)
- Policy bodies are authored by delegated, security-zone and Service
  Admins as well as Ranger admins (§6)
- Add §8 #7: scripts in policies run sandboxed and cannot run host code
- Treat host code execution via a policy script as exceeding delegated
  scope (§7) and add a §11a correction against trusted-input routing
@kumaab kumaab self-assigned this Oct 24, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant