Integrate Permission Controls into Duo Settings Pages
Summary
Integrate the DAP permission settings component into existing GitLab Duo configuration pages for both Self-Managed and GitLab.com environments.
Background
The DAP permission controls component needs to be integrated into the existing Duo settings pages at two different levels:
- Self-Managed:
/admin/gitlab_duo/configuration(instance-level) - GitLab.com:
/groups/:group/-/settings/gitlab_duo/configuration(group-level)
Requirements
Integration Points
-
Add permission component to Self-Managed admin page (
/admin/gitlab_duo/configuration) -
Add permission component to GitLab.com group settings (
/groups/:group/-/settings/gitlab_duo/configuration) - Position component appropriately within existing Duo settings layout
- Ensure proper spacing and visual hierarchy with existing settings
Feature Flag Support
-
Handle
duo_agent_platform_role_permissionsfeature flag visibility - Show/hide permission controls based on flag state
- Graceful degradation when flag is disabled
- Proper loading states during flag checks
Context Handling
- Detect instance-level vs group-level context
- Pass appropriate context to permission component
- Handle different permission scopes based on context
- Show context-appropriate help text and labels
Technical Implementation
- Import and integrate DAP permission component
- Add proper Vue component registration
- Handle component props and event binding
- Ensure proper CSS/styling integration
- Add feature flag checks in templates
Design Requirements
- Follow existing Duo settings page layout patterns
- Maintain consistent spacing and typography
- Add appropriate section headers and descriptions
- Include help text explaining permission controls
Acceptance Criteria
- Permission controls appear on Self-Managed admin Duo settings page
- Permission controls appear on GitLab.com group Duo settings page
- Controls are hidden when feature flag is disabled
- Integration follows existing page layout and design patterns
- Context is properly passed to permission component
- Help text and labels are appropriate for each context
Related Issues
- Parent Epic: #19742 (closed) - [Frontend] Role-based permissions controls DAP
- Parent Epic: #19601 - Implement role-based access permissions for DAP
- Depends on: Issue #1 (closed) - Create DAP Permission Settings Component
- Related: #577172 (closed) - Technical scoping for DAP role-based access controls
Edited by 🤖 GitLab Bot 🤖