Skip to content

Conversation

trumant
Copy link
Contributor

@trumant trumant commented Sep 28, 2025

This closes #395

Copy link
Member

@puerco puerco left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch!! Small nit below, but I'm fine with the change. Thanks @trumant!

project's version control system MUST default to the lowest available
permissions for all activities in the pipeline.
CI/CD system MUST default the task's permissions to the lowest
permissions granted in the pipeline.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Non blocking nit:

Suggested change
permissions granted in the pipeline.
permissions required by the task.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like your suggestion but I think it does change the focus of the requirement from one in which the task's permissions are not configured/unspecified and therefore the task runs in the presumably more well defined and least privilege permission context of it's (the task's) enclosing pipeline to one in which the enclosing pipeline should more proactively try to understand the permission requirements of the task and assign only those.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are there CI/CD systems that use the highest permissions as a default? Or is the intent here to say "tasks should have read-only permissions unless explicitly granted more permissions at the task level"?

For example, if I have a github workflow that grants write at the top level of the workflow, would a job in that workflow that inherits write permission violate this control? Does the answer to that question depend on whether or not the job needs write permission?

If the answer is yes (or at least a conditional yes), maybe we're better off being more direct and saying "CI/CD tasks that require permissions beyond read must have permissions explicitly granted at every step" (except with better wording)

@trumant
Copy link
Contributor Author

trumant commented Sep 30, 2025

a65bd5d provides some historical context around prior intent

@trumant trumant merged commit 7e48bf3 into ossf:main Oct 8, 2025
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

AC-04.01 - rewrite the control text for clarity
3 participants