Skip to content

Deliver authentication and RBAC across Scope #17

Open
0 of 3 issues completed
Open

Description

Original author: Cedric Vidal (@cedricvidal)

Goal

Deliver authenticated, permission-controlled access to Scope from human clients
and internal services.

Delivery tracks

Use the native sub-issues on this issue as the progress tracker. Implementation
milestones stay inside their owning child rather than becoming more delivery
issues by default.

Sub-issue Owns
#1300 - Enforce project membership RBAC and administration Human project access, permissions, and administration across API, Portal, and CLI. Implementation: PR #1532.
#1557 - Authenticate internal services with JWT Application service/job authentication, active-run/project authority, caller wiring, and worker-to-judge delegation.
#1562 - Add CLI sign-in and JWT credential management Human login/enrollment, secure cache, refresh, logout/status, and standalone CLI support.

This parent is the overall tracker, not a fourth implementation PR.

Supporting Portal authentication delivery

PR #1531 - Authenticate log streaming, artifact downloads, and video playback
is the Portal authenticated-delivery foundation for RBAC. It carries the existing
human IdP JWT through streaming logs, downloads, and progressive video requests
that cannot directly use the normal browser bearer transport.

This is credential delivery, not a new token issuer or permission policy. It
complements, and is not replaced by, the service/job JWT work in #1557. Track the
existing PR here without creating another delivery sub-issue.

Dependencies

Integrated acceptance criteria

  • All three delivery sub-issues are complete.
  • A CLI user can sign in and run authenticated, authorized commands without
    manually obtaining access tokens; credential refresh and logout work.
  • API, Portal, and CLI behavior consistently respects project membership and
    permissions, including criteria management and run submission/backfill.
  • Portal logs, artifact/archive downloads, and progressive video playback
    and seeking work with human bearer authentication and RBAC enforcement enabled.
  • Agent/version registration, model scanning, worker content loading, and
    benchmark evaluation work with authentication enabled in Compose and AKS.
  • Missing/invalid credentials, unauthorized operations, and cross-project
    access are denied without an anonymous or blanket-administrator bypass.
  • Job completion/cancellation/reclaim and concurrent/long evaluations
    preserve the service authority lifecycle.
  • Existing human enrollment, public probes, and supplied-bearer CLI usage
    remain intentional and covered; documentation matches the delivered behavior.

Shared exclusions

Report authentication/post-run report triggers, submitter-rights binding,
Scope PAT issuance, and authentication of unrelated internal-service endpoints
remain separate work. Membership removal alone does not independently revoke
an active job in the initial service-authority model.

Related work

Original request

You need to be able to control who can create manage and editor criteria as
well as who can submit and backfill runs

Metadata

Metadata

Labels

No labels
No labels

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions