[Interlock Cancelled] Secret Push Protection Configuration Profile (experimental)
[[_TOC_]] ## Problem Today, secret detection configuration is more complex than it needs to be and also not as flexible as it should be. Some things that could be improved: * Pipeline-based SD requires editing a YAML file * Push protection does not allow for custom rules * Pipeline-based custom rules require editing a TOML file * Handling custom rules at scale can feel complex for some teams ### Scope/Requirements 1. CRUD operations can be performed on via the UI or API. 1. CRUD operations are limited to Owner, Maintainer, and the custom role https://gitlab.com/gitlab-org/gitlab/-/issues/508649+ 1. Configurable settings include: 1. Default rules/detections 1. Disable 1. Secret Push Protection [Exclusions](https://gitlab.com/gitlab-org/gitlab/-/issues/480925) (directories/paths, values) -- patterns should likely no longer be included in exclusions as these are rules/default detections that could be disabled/enabled instead #### Engineering Assessment High-level Requirements ##### **Backend** * [ ] New configuration profile tables * [ ] Migration of existing `*project_exclusions` to profile tables * [ ] Ability to convert UI-based settings for scanner consumption * [ ] Work by ~"group::secret detection" to enable SPP scanner to consume exclusion patterns ##### **Frontend** * [ ] Ability to configure secret detection exclusions via scanner profile * [ ] Ability to apply profiles from the security inventory page #### Dependencies - Team dependencies: * Dependency on ~"group::secret detection" to handle backend implementation supporting ingestion of exclusions. - External dependencies: \[Any external dependencies\] #### DRIs - **PM**: @smeadzinger <!--also add as assignee to this epic--> - **EM**: @or-gal (Acting EM @rossfuhrman) <!--also add as assignee to this epic--> - **UX/PDM**: @mfangman <!--also add as assignee to this epic--> - **Group(s)**: ~"group::security platform management" <!--also add as label--> - **Engineering Owner**: @rvider #### Initiative Driver - Product or Engineering? - [x] **Product-driven initiatives (P1/P2/P3)** - Customer-facing features or improvements driven by Product teams that require engineering resources and commitment - These initiatives require a Product Priority label (P1/P2/P3) - They may also receive GTM tier labels (T1/T2/T3) for external communication - [ ] **Engineering-driven initiatives (E1/E2/E3)** - Internal technical improvements that may not have customer-facing components - These initiatives require an Engineering Priority label (E1/E2/E3) - They have internal visibility only and are not externally communicated - Examples include: technical debt reduction, infrastructure improvements, refactoring, dependency upgrades #### Sizing and Funding (Optional) - **Size**: \[L\] - **Funding Status**: \[Funded\]
epic