Skip to content

Spike: Explore Changing Security Policy Limits Application

Time-window: 5 days

Background

Currently, security policy limits are applied per security policy project, allowing a maximum of 5 policies for each type regardless of policy scope. With the introduction of policy scopes in Security Policies, we need to adapt our approach to better accommodate user needs while maintaining system performance.

Spike Goals

  1. Investigate changing the limit application from per-policy-project to per-target-project.
  2. Explore allowing users to define more than 5 policies while still limiting the number of policies applied to a given project to 5.
  3. Consider UI changes to effectively present policies that may not be currently applied to a given project.

Tasks

  1. Develop a Proof of Concept (PoC):
    • Update GraphQL APIs to return information on whether a policy can be currently applied.
    • Implement the PoC behind a feature flag for initial testing.
    • After internal testing, implement an experimental policy feature flag as described in #519310 (closed).
  2. Explore increasing the policy limit:
    • Investigate allowing users to set the limit up to a maximum of 20 policies.
    • Implement this as an experiment config option initially.
  3. Create an implementation plan:
    • Develop a detailed plan for the full feature implementation.
    • Create an Epic with all acceptance criteria for the finalized feature.
  4. UI Considerations:
    • Propose UI changes to clearly display which policies are currently applied and which are available but not applied due to the limit.
  5. Performance Impact:
    • Assess the potential performance impact of allowing more policies to be defined.
    • Propose optimizations if necessary.
  6. Migration Strategy:
    • Outline a plan for migrating existing policy configurations to the new system.

Deliverables

  1. Working PoC with updated GraphQL APIs
  2. Feature flag implementation plan
  3. Experiment config option for increased policy limit
  4. Detailed implementation plan
  5. Migration strategy plan