Repository navigation
feat(security): manage confidential advisory responder access - #34
Merged
Merged
Conversation
Signed-off-by: Vitor Mattos <1079143+vitormattos@users.noreply.github.com>
Signed-off-by: Vitor Mattos <1079143+vitormattos@users.noreply.github.com>
Signed-off-by: Vitor Mattos <1079143+vitormattos@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Repository
Maintaindoes not grant access to an unpublished repository security advisory. Granting the organization-wideSecurity Managerrole to maintainers would unnecessarily expand access and administrative powers.Architecture
security-responseorganization team. Advisory administrators grant this team write access on individual confidential advisories; no organization-wide security role or repository-level team permission is required.LibreSign/libresignonly. It does not change any advisory created before the adoption timestamp.Repository security advisories: writeon thelibresignrepository. Its key belongs in a protected, branch-restricted Actions environment, isolated from the existing ruleset-management App.Security boundaries
collaborating_teamsfield can be patched. Existing invited users, researchers, other teams, state, publication, CVE, forks, credits and vulnerability metadata are never changed by the automation.Verification
node --test tests/security-advisory-access.test.mjs: 10 tests passed (dry-run, idempotency, collaborator preservation, date/state cutoff, private triage, malformed data and denied access).security-advisory-access.config.jsonvalidated as JSON; no embargoed advisory data is committed.Operational prerequisite
A new dedicated GitHub App (repository security advisories write, installed on
LibreSign/libresignonly) and environment-scoped key are still required. They are deliberately not bundled into the broader ruleset administrator. Seedocs/security-advisory-access.mdfor setup and enabling the scheduled reconciliation.Risk and limitations
The GitHub API does not expose a narrower 'add advisory team' token scope:
Repository security advisories: writeis required and could publish advisories if compromised. Restrict the GitHub App to one repository, protect workflow edits via reviews and keep credentials only in the dedicated environment. No unpublished advisory details appear in this PR.