Skip to content

Comments

HBASE-29893 Add zizmor for GitHub Actions workflows security analysis#7742

Open
ndimiduk wants to merge 2 commits intoapache:masterfrom
ndimiduk:29893-zizmor-master
Open

HBASE-29893 Add zizmor for GitHub Actions workflows security analysis#7742
ndimiduk wants to merge 2 commits intoapache:masterfrom
ndimiduk:29893-zizmor-master

Conversation

@ndimiduk
Copy link
Member

ASF Infrastructure recommends running zizmor static analysis on GitHub Actions workflows to detect security issues (see https://cwiki.apache.org/confluence/display/BUILDS/GitHub+Actions+Security).

@ndimiduk
Copy link
Member Author

Heya @gmcdonald should we add zizmor to the list of authorized actions? Seems kinda silly that this is the prescribed tool.

The action zizmorcore/zizmor-action@0dce2577a4760a2749d8cfb7a84b7d5585ebcb7d is not allowed in apache/hbase because all actions must be from a repository owned by your enterprise, created by GitHub, verified in the GitHub Marketplace, or match one of the patterns: ...

@ndimiduk ndimiduk force-pushed the 29893-zizmor-master branch 4 times, most recently from 5371b93 to e42dbee Compare February 12, 2026 14:01
@ndimiduk ndimiduk marked this pull request as ready for review February 12, 2026 14:02
@ndimiduk ndimiduk requested a review from Apache9 February 12, 2026 14:02
@ndimiduk ndimiduk force-pushed the 29893-zizmor-master branch from e42dbee to 4b8819f Compare February 12, 2026 14:14
@ndimiduk ndimiduk force-pushed the 29893-zizmor-master branch from 4b8819f to 31fa0b0 Compare February 12, 2026 15:37
@gmcdonald
Copy link
Contributor

Heya @gmcdonald should we add zizmor to the list of authorized actions? Seems kinda silly that this is the prescribed tool.

The action zizmorcore/zizmor-action@0dce2577a4760a2749d8cfb7a84b7d5585ebcb7d is not allowed in apache/hbase because all actions must be from a repository owned by your enterprise, created by GitHub, verified in the GitHub Marketplace, or match one of the patterns: ...

I'll take a look

@potiuk
Copy link
Member

potiuk commented Feb 13, 2026

Heya @gmcdonald should we add zizmor to the list of authorized actions? Seems kinda silly that this is the prescribed tool.

The action zizmorcore/zizmor-action@0dce2577a4760a2749d8cfb7a84b7d5585ebcb7d is not allowed in apache/hbase because all actions must be from a repository owned by your enterprise, created by GitHub, verified in the GitHub Marketplace, or match one of the patterns: ...

I think we should indeed.

But It's not silly, because you can use zizmor in multiple ways in GH Actions - for example in Airflow we use it in prek hooks that are even better because they catch any issues locally for developers and then they are run in GH in static code checks via prek run --all-files - rather than via actions.

https://github.com/apache/airflow/blob/main/.pre-commit-config.yaml#L329

I guess it was waiting here for the first person who will want to use it via actions to add it to allowlist - which is not silly, rather expected (and just happened)

@potiuk
Copy link
Member

potiuk commented Feb 13, 2026

And BTW @ndimiduk -> you are absolutely free to make PR to request adding it to allowlist, which is how the whole workflow is designed someone wants to use actions -> make PR -> infra accepts it.

@potiuk
Copy link
Member

potiuk commented Feb 13, 2026

steps:
- name: Checkout HBase
uses: actions/checkout@v4
uses: actions/checkout@v4 # zizmor: ignore[unpinned-uses]
Copy link
Contributor

Choose a reason for hiding this comment

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

Pity that we need to add this everywhere...

This is the suggested way for github actions usage but not recommanded in zizmor rules?

Copy link
Member

@potiuk potiuk Feb 13, 2026

Choose a reason for hiding this comment

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

BTW. we are using octopin prek hook from eclipse that is keeping actions updated to have hash-commits https://github.com/apache/airflow/blob/a9df1220b8a62aff9e6c0004de0624051a937a91/.pre-commit-config.yaml#L33 - this is nice because it keeps the "tag" version in comment and will propose an update when we run it and then we can review the changes coming and commit it.

Also zizmor can be configured to ignore certain actions or relax their rules https://docs.zizmor.sh/audits/#rulesunpinned-usesconfigpolicies - they even have example how to configure it to skip pinning for github-owned "/actions/" - which is fine according to ASF rules, but we opted not to do it as octopin makes it super easy to keep hash-commit for all actions.

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.

4 participants