Skip to content

CircleCI access control & privilege security checks

Admin roles, standing privileges, permission scopes and policy enforcement — the settings that decide how much damage one compromised account can do.

On CircleCI, Black Cat runs 7 checks in this area on every scan. Each one below lists its severity, how to fix it, and the compliance controls it satisfies where a control applies. See what access the CircleCI connector needs.

Checks (7)

severity: medium No Groups Defined fix difficulty: medium #

Create organization groups in CircleCI to scope context access to specific teams

  1. Sign in to CircleCI and navigate to Organization Settings
  2. Select "Groups" from the left-hand navigation
  3. Click "Create Group" and provide a descriptive name for each team or role
  4. Add relevant organization members to each group
  5. Navigate to "Contexts" and apply group-based restrictions to sensitive contexts
  6. Verify that only members of the assigned group can trigger jobs using each restricted context

Vendor docs ↗

Satisfies: ISO 27001:2022 A.5.15 SOC 2 Type II CC6.1 CIS Controls v8 CIS-06.1 NIST CSF 2.0 PR.AA-05 GDPR (SaaS Security) GDPR-25.2 HIPAA (SaaS Security) HIPAA-312.a NIS2 Directive NIS2-21.i.1 DORA (SaaS Security) DORA-9.2

severity: high Unrestricted Context fix difficulty: easy #

Add project or group restrictions to CircleCI contexts to limit which pipelines can access secrets

  1. Sign in to CircleCI and navigate to Organization Settings
  2. Select "Contexts" from the left-hand navigation
  3. Click the name of the unrestricted context to open its detail page
  4. Click "Add Restriction" and select either a project or a group
  5. Choose the specific projects or groups that legitimately need this context
  6. Save the restrictions and verify that other pipelines no longer have access

Vendor docs ↗

Satisfies: ISO 27001:2022 A.5.15 SOC 2 Type II CC6.1 CIS Controls v8 CIS-06.1 NIST CSF 2.0 PR.AA-05 GDPR (SaaS Security) GDPR-25.2 HIPAA (SaaS Security) HIPAA-312.a NIS2 Directive NIS2-21.i.1 DORA (SaaS Security) DORA-9.2

severity: high User Checkout Key fix difficulty: medium #

Replace user checkout keys with project deploy keys to limit VCS repository access

  1. Sign in to CircleCI and navigate to the affected project's settings
  2. Select "SSH Keys" from the left-hand navigation
  3. Under "Checkout SSH Keys", identify any "User Key" entries
  4. Click "Add Deploy Key" to generate a new read-only deploy key scoped to this repository
  5. Update your VCS (GitHub/GitLab/Bitbucket) to trust the new deploy key
  6. Delete the existing user checkout key and confirm pipelines check out code successfully

Vendor docs ↗

Satisfies: ISO 27001:2022 A.5.15 SOC 2 Type II CC6.1 CIS Controls v8 CIS-06.1 NIST CSF 2.0 PR.AA-05 GDPR (SaaS Security) GDPR-25.2 HIPAA (SaaS Security) HIPAA-312.a NIS2 Directive NIS2-21.i.1 DORA (SaaS Security) DORA-9.2

severity: medium OIDC Not Configured fix difficulty: hard #

Configure OIDC token claims in CircleCI to enable keyless cloud authentication without stored credentials

  1. Sign in to CircleCI and navigate to Organization Settings
  2. Select "Security" from the left-hand navigation and review the OIDC token settings
  3. In your cloud provider (AWS, GCP, or Azure), create a new OIDC identity provider pointing to CircleCI's OIDC URL
  4. Define an IAM role or service account with a trust policy that validates CircleCI's OIDC token claims
  5. Update your pipeline config to use the OIDC token environment variable instead of stored access keys
  6. Remove any long-lived cloud credentials previously stored as environment variables or context secrets

Vendor docs ↗

Satisfies: ISO 27001:2022 A.5.15 SOC 2 Type II CC6.1 CIS Controls v8 CIS-06.1 NIST CSF 2.0 PR.AA-05 GDPR (SaaS Security) GDPR-25.2 HIPAA (SaaS Security) HIPAA-312.a NIS2 Directive NIS2-21.i.1 DORA (SaaS Security) DORA-9.2

severity: low Empty Group fix difficulty: easy #

Remove empty groups or add members to maintain accurate access control

  1. Sign in to CircleCI and navigate to Organization Settings
  2. Select "Groups" from the left-hand navigation
  3. Identify the flagged group with zero members
  4. If the group is no longer needed, delete it to reduce configuration clutter
  5. If the group is still needed, add the appropriate organization members
  6. Review any context restrictions that reference this group to ensure they are still valid

Vendor docs ↗

Satisfies: NIS2 Directive NIS2-21.i.1 DORA (SaaS Security) DORA-9.2

severity: medium Large Group fix difficulty: medium #

Review large groups and split them into smaller, role-based groups for tighter access control

  1. Sign in to CircleCI and navigate to Organization Settings
  2. Select "Groups" from the left-hand navigation
  3. Open the flagged group and review the full member list
  4. Identify members who do not need access to all contexts restricted to this group
  5. Create smaller groups based on team or role boundaries
  6. Update context restrictions to use the smaller groups and remove excess members from the original group

Vendor docs ↗

Satisfies: NIS2 Directive NIS2-21.i.1 DORA (SaaS Security) DORA-9.2

severity: medium OIDC Default Audience fix difficulty: medium #

Set a specific OIDC audience to restrict where CircleCI tokens are accepted

  1. Sign in to CircleCI and navigate to Organization Settings
  2. Select "Security" from the left-hand navigation
  3. Locate the OIDC configuration and find the audience field
  4. Set the audience to your organization's specific identifier or cloud provider audience URL
  5. Update your cloud provider's OIDC identity provider configuration to validate the new audience
  6. Test a pipeline that uses OIDC authentication to confirm tokens are accepted with the new audience

Vendor docs ↗

Satisfies: NIS2 Directive NIS2-21.i.1 DORA (SaaS Security) DORA-9.2

More CircleCI checks

The information on this page is provided for general informational purposes and is believed to be accurate as of its most recent update. Product names, logos, and trademarks are the property of their respective owners and are used for identification purposes only; their use does not imply any affiliation with or endorsement by those owners. Descriptions of third-party applications and of compliance frameworks are based on publicly available documentation and may change over time.

See these checks run on your stack

Start a free 14-day trial — no credit card required.

Start Free Trial