Skip to content

auth: request scopes for new server-side OAuth support | DAL-971 DAL-972 DAL-959 DAL-974 DAL-978 - #714

Merged
platinummonkey merged 1 commit into
DataDog:mainfrom
srosenthal-dd:stephen.rosenthal/oauth-batched-scopes
Aug 19, 2026
Merged

auth: request scopes for new server-side OAuth support | DAL-971 DAL-972 DAL-959 DAL-974 DAL-978#714
platinummonkey merged 1 commit into
DataDog:mainfrom
srosenthal-dd:stephen.rosenthal/oauth-batched-scopes

Conversation

@srosenthal-dd

@srosenthal-dd srosenthal-dd commented Aug 8, 2026

Copy link
Copy Markdown
Member

Motivation

Expand support for OAuth, in particular for the pup CLI and other AI-agent/programmatic clients. OAuth is now a general-purpose auth method, and is preferred over API+App Keys because it's always scoped and credentials automatically expire.

Changes

Add scopes for server-side OAuth support that has now landed, so pup's login tokens carry the required permission:

  • metrics_metadata_write
  • synthetics_default_settings_write
  • ccm_budget_write
  • ccm_forecast_write
  • security_monitoring_cws_agent_rules_read/write
  • telemetry_rules_read/create

Test plan

  • CI green
  • e2e tested against staging (default scopes, no --extra-scopes needed):
    • metrics metadata update -- no-op update of an existing metric's metadata
    • csm-threats agent-rules create/delete -- created and deleted a throwaway agent rule
    • tag-policies create/delete -- created and deleted a throwaway tag policy
    • costs ccm budgets validate -- reached budget-validation business logic (not an auth error)
    • POST /api/v2/cost/budget/custom-forecast (no dedicated pup command yet) -- reached validation business logic (not an auth error)
    • synthetics default-settings write route has no dedicated pup command either; confirmed the scope clears auth via the raw route (got a business-logic response, not a 401/403)

@platinummonkey platinummonkey added enhancement New feature or request authnz labels Aug 8, 2026
@srosenthal-dd srosenthal-dd changed the title auth: request scopes needed by in-flight server-side OAuth changes | DAL-971 DAL-972 DAL-959 DAL-973 auth: request scopes for landed server-side OAuth changes | DAL-971 DAL-972 DAL-959 DAL-973 DAL-974 DAL-978 Aug 19, 2026
@srosenthal-dd
srosenthal-dd force-pushed the stephen.rosenthal/oauth-batched-scopes branch from 0bd2d92 to e8d401c Compare August 19, 2026 20:09
@srosenthal-dd srosenthal-dd changed the title auth: request scopes for landed server-side OAuth changes | DAL-971 DAL-972 DAL-959 DAL-973 DAL-974 DAL-978 auth: request scopes for landed server-side OAuth changes | DAL-971 DAL-972 DAL-959 DAL-974 DAL-978 Aug 19, 2026
@srosenthal-dd srosenthal-dd changed the title auth: request scopes for landed server-side OAuth changes | DAL-971 DAL-972 DAL-959 DAL-974 DAL-978 auth: request scopes for new server-side OAuth support | DAL-971 DAL-972 DAL-959 DAL-974 DAL-978 Aug 19, 2026
@srosenthal-dd
srosenthal-dd marked this pull request as ready for review August 19, 2026 21:09
@srosenthal-dd
srosenthal-dd requested a review from a team as a code owner August 19, 2026 21:09
@platinummonkey
platinummonkey merged commit f6a1bca into DataDog:main Aug 19, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

authnz enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants