Skip to content

Duo agent Platform - Cascading permissions

Issue: Implement cascading permissions for Duo Agent Platform (DAP) settings

Problem

The current implementation of Duo Agent Platform settings only allows project-level control, which creates security concerns for enterprise customers. When the feature flag is enabled, project owners can turn on DAP without requiring approval from GitLab instance administrators or group owners.

Key concerns identified:

  • Large enterprise customers require stricter control over DAP enablement
  • Project owners are not trusted with this level of AI feature control by most customers
  • Current project-only permissions are too permissive for enterprise security requirements
  • This limitation will prevent DAP adoption for major customers in 18.3

Proposed Solution

Implement the same cascading permission logic for DAP that currently exists for general AI features:

  1. Instance Admin level: Can turn DAP on/off for the entire GitLab instance
  2. Group Owner level: Can turn DAP on/off for all projects within their group
  3. Project Admin level: Can enable/disable DAP for individual projects (only if enabled at higher levels)

Acceptance Criteria

  • Instance administrators can control DAP availability instance-wide
    • Group owners can control DAP availability for all projects in their group
    • Project administrators can only enable DAP if it's allowed at the group and instance levels
    • Settings cascade properly (instance → group → project)
    • UI reflects the cascading nature of these permissions
    • Existing API endpoints are updated to respect the new permission hierarchy

Timeline

  • Target for 18.4 release (won't make 18.3)
  • This addresses the enterprise customer adoption blocker identified for 18.3

Related Discussion

https://gitlab.slack.com/archives/C07035GQ0TB/p1755262895834489

Edited by Fred de Gier