Problem/Motivation
As part of the major initiatives to support Automatic Updates and the Project Browser, the Drupal.org infrastructure team has prioritized a major security enhancement - securely signing packages using Rugged, an implementation of TUF, theupdateframework.io.
Proposed resolution
An RFP for implementing a secure server side signing method according to the tough specification was released in June of 2021.
Consensus Enterprises was selected as the implementation partner for this system, working together with the Drupal Association on the implementation details. The Drupal Association is working with infrastructure management partners Tag1 Consulting to stand up this infrastructure in the cloud, so it can be integrated into the packaging pipeline.
Remaining tasks
RFP releasedPartner selected: Consensus EnterprisesRequirements definedInitial technical architecture proposedPHP-TUF client side framework developed with the help of Acquia's Drupal Acceleration team, among othersPrimary DevelopmentContainers deployedInitial deployment evaluation- started- Current work in rugged:
#120 Add a new "monitor" workeris fixed!#114 Revert to upstream Composer pluginis fixed!- #99 Implement support for hashed bins will be necessary for the scale of Drupal.org packages; so data transfer is limited to a reasonable amount, and that JSON can be reliably parsed. In progress
- #74 Build images in CI
- Plan for signing core components
- Templates like
drupal/core-recommendedare hosted on Packagist.org, so they can be installed with one step after getting Composer. Core component subtree splits are hosted in the same way to simplify core packaging - https://packagist.org/packages.json changes frequently, so signing on behalf of Packagist.org will need some way to either always have the current version signed, or proxy that's able to serve what we have signed
- Templates like
- Next deployment evaluation
- Integration testing with AutoUpdates/Project Browser teams
- Security audit/penetration testing (as resources are available)
Comments
Comment #5
hestenetComment #6
hestenetComment #7
drummReviewing the known issues in Rugged:
Comment #8
drummAdding to the issue summary:
Plan for signing core components
drupal/core-recommendedare hosted on Packagist.org, so they can be installed with one step after getting Composer. Core component subtree splits are hosted in the same way to simplify core packagingComment #9
wim leersDo we have any idea about an ETA?
I'm asking because in #3349368: [policy, no patch] How much of The Update Framework integration is needed for alpha-level review/commit of Package Manager? it was just revealed that this is hard-blocking
package_manager,automatic_updatesandproject_browsergetting added to Drupal core.Comment #10
markdorisonComment #11
drummAdding link to https://gitlab.com/rugged/rugged/-/issues/74
Comment #12
ergonlogicComment #13
ergonlogicI've revised the summary with updates for the Rugged tickets.
Comment #14
catchLooks like hashed bins is also done https://gitlab.com/rugged/rugged/-/issues/99
Comment #15
drummThis is now ready: https://packages.drupal.org/8/metadata/
Before calling it done, we need:
Comment #16
drummAdded 2 more child issues:
Comment #17
gábor hojtsyDoes this mean that package signing is practically all rolled out?
Comment #18
drummYes, I think we can call this done.
I hope there’s more testing with #3477553: [PP-1] Manually test TUF-enabled Composer projects before this is made generally available out of the box with Drupal core. But that and the rugged followups are all being tracked in their own issues.