[ 
https://issues.apache.org/jira/browse/IGNITE-23820?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17904185#comment-17904185
 ] 

Sergey Korotkov commented on IGNITE-23820:
------------------------------------------

{quote}The changes are needed to make sure an attacker cannot circumvent the 
workflow approval by updating their PR just after it was approved.
{quote}
As I see, the update to PR from the non-maintener user just asks for another 
workflow approval.
{quote}workflow will not run when the workflow is entirely absent from the 
default branch
{quote}
Are you 100% sure? As I remember my tests show the opposite. Such workflows not 
just not run if absent but *execute* only code from the master brunch.
 

As I understand the *workflow_run* is exactly designed to support cases like 
this.  Build in not priviledged workflow and anylyze and post comments to PR in 
the priviledged one.

[https://github.blog/news-insights/product-news/github-actions-improvements-for-fork-and-pull-request-workflows/]
{quote}The new workflow_run event enables you to trigger a new workflow when 
one or more workflows are requested or completed. Runs triggered by the 
workflow_run event {*}always use the default branch for the repository{*}, and 
have access to a read/write token as well as secrets. As an example, as a 
maintainer you could set up a workflow that takes the artifacts generated by 
the pull request workflow, do some analysis, and post comments back to the pull 
request. This event is also available as a web hook and works all repos.
{quote}
 

 

> run privileged workflow against approved commit
> -----------------------------------------------
>
>                 Key: IGNITE-23820
>                 URL: https://issues.apache.org/jira/browse/IGNITE-23820
>             Project: Ignite
>          Issue Type: Improvement
>          Components: build
>            Reporter: Arnout Engelen
>            Assignee: Pavel Tupitsyn
>            Priority: Minor
>             Fix For: 2.17
>
>         Attachments: image-2024-12-09-18-53-12-359.png
>
>          Time Spent: 50m
>  Remaining Estimate: 0h
>
> `sonar-pr-from-fork-build.yml` and `sonar-pr-from-fork-scan.yml` analyze PRs. 
> `sonar-pr-from-fork-scan.yml` needs privileges to access the 
> `SONARCLOUD_TOKEN` and to update the status of the PR check.
> To avoid a malicious PR from accessing those privileges, Ignite requires 
> approval for GitHub Actions, and reviews the PR to catch any malicious code 
> before approving the workflow.
> Some changes to the workflow are needed to make sure the privileged workflow 
> is ran against the commit that was approved, and does not pull in any changes 
> that may have been added to the PR after approval.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to