Prevent release edit #51588
-
Select Topic AreaProduct Feedback BodyIs there any way how to prevent edit of releases for those with write permissions to the repository? I can't find that permission even on Enterprise plan. Protected tags are great, but once the release exists there is no way to prevent marking the release as Latest or changing files? Would be really great if there is some possibility to require four eyes for that. |
Beta Was this translation helpful? Give feedback.
Replies: 7 comments 21 replies
-
|
In addition, I would like to also restrict the capability of even creating a release. Granting a person the permissions to contribute on a repository does not automatically mean that I trust that same person to make releases. |
Beta Was this translation helpful? Give feedback.
-
|
I'm glad to see that implementing restrictions on Releases is being considered by GitHub in this discussion. Branch protection → Require a pull request before merging → Require approvals works well to protect the git repository contents, but does not protect other areas of the GitHub repository. For supply chain security, I would like to enforce that all published artifacts (Packages and Releases) are generated by Actions, and are not manually uploaded by users. I am otherwise fine with users having "write" permissions to the repository, they may edit unprotected branches, tags, issues, etc. In addition to restricting Release write permissions, I would also request a way to restrict Packages similarly. This is technically possible today, but requires disabling "Inherit access from source repository (recommended)" which breaks all users' read access to the repository (instead of just breaking their write access which is my intent). To do this today you would have to disable this setting and manually add back all users' read access, and do this separately on each package. Also, the |
Beta Was this translation helpful? Give feedback.
-
|
🕒 Discussion Activity Reminder 🕒 This Discussion has been labeled as dormant by an automated system for having no activity in the last 60 days. Please consider one the following actions: 1️⃣ Close as Out of Date: If the topic is no longer relevant, close the Discussion as 2️⃣ Provide More Information: Share additional details or context — or let the community know if you've found a solution on your own. 3️⃣ Mark a Reply as Answer: If your question has been answered by a reply, mark the most helpful reply as the solution. Note: This dormant notification will only apply to Discussions with the Thank you for helping bring this Discussion to a resolution! 💬 |
Beta Was this translation helpful? Give feedback.
-
|
Without the ability to restrict editing releases and packages, the CODEOWNERs feature provides questionable security:
Similarly, branch protection (or rulesets) can be required for all branches with required approval steps. These features are designed to apply additional restrictions to users with "write" permissions. But release assets have no restrictions. There also a few other repository roles that require "write" permissions. Users end up needing "write" permissions to review and approve PRs to repos. But granting users "write" permissions without the ability to restrict package and releases, means that it is not possible to enforce that all published artifacts went through code review. Perhaps could the new "rulesets" feature be extended to packages and releases please? |
Beta Was this translation helpful? Give feedback.
-
|
I concur that an ability to freeze releases, and proof that release artifacts were really generated by a workflow, would be quite a valuabe security improvement for any projects that depend on external release binaries. Unfortunately, I'm maintainer of such a project, and wondering what to do about this. From what I can gather, unlinke comments, releases don't even show edits, which makes this issue even more problematic. |
Beta Was this translation helpful? Give feedback.
-
|
Hi there, Thanks for posting this feedback! You've hit on a really important point regarding release management. You are absolutely right currently, the ability to edit a release (including marking as latest or changing assets) is tied to having write permissions on the repository. Unlike protected branches or tags, there isn't a built-in, granular permission or a mandatory review process specifically for editing an already created release. This is a valid need! Having a "four eyes" principle or a dedicated permission for release edits would provide much greater control and ensure the integrity of published releases, preventing accidental or unauthorized changes after they've been created. While process and automation can help, they don't offer the same level of enforcement as a platform-level permission. I fully support this as a product feedback request. Hopefully, this is something the GitHub team can consider for future development to give repository maintainers more fine-grained control over their release workflows. Thanks again for raising this! |
Beta Was this translation helpful? Give feedback.
-
|
Releases now support immutability in public preview https://github.blog/changelog/2025-08-26-releases-now-support-immutability-in-public-preview/ |
Beta Was this translation helpful? Give feedback.
I wrote to Github support about this. Here is my message:
They responded: