Skip to main content
Drupal is a registered trademark of Dries Buytaert
Release: OpenID Connect / OAuth client 3.0.0-alpha9 New alpha version released for module openid_connect (3.0.0-alpha9). Usage Milestone: Google Analytics Module google_analytics crossed 1,000 active installs. Release: GraphQL Compose Codegen 1.1.2 Minor update available for module graphql_compose_codegen (1.1.2). Release: Mapy.com 1.1.3 Minor update available for module mapycom (1.1.3). Release: Ckeditor5 entity browser 3.0.3 Minor update available for module ckeditor5_entity_browser (3.0.3). Release: Ckeditor5 entity browser 3.0.1 Minor update available for module ckeditor5_entity_browser (3.0.1). Release: Ckeditor5 entity browser 3.0.2 Minor update available for module ckeditor5_entity_browser (3.0.2). Release: Teamleader Integration 4.0.2 Minor update available for module teamleader (4.0.2). Release: Change Requests 2.1.9 Minor update available for module change_requests (2.1.9). Module Revived: Entityqueue Buttons 1.1.2 Module entityqueue_buttons updated after 8 months of inactivity (1.1.2).

PCI SRI

43 sites No security coverage Drupal 10–11
View on drupal.org

This module helps Drupal sites meet PCI DSS requirements by implementing Subresource Integrity (SRI) for JavaScript files in modules and themes. It generates custom SRI configurations and adds integrity attributes to script elements, preventing the execution of tampered JavaScript.

The purpose of this module is to help Drupal sites meet PCI DSS requirements 6.4.3 (March 31, 2025) and 11.6.1 (March 31, 2025) by implementing SRI for modules and themes (contrib and custom).

Features

This module does the following:

  • Generates custom SRI configuration for each Javascript file in the module and theme libraries.
  • Adds an integrity attribute to <script> elements with a Base64 encoded hash code.

Post-Installation

The module provides a Drush command to generate the SRI configuration ("drush sri-gen"). After generating SRI configuration go to /admin/structure/sri and review the configuration.

Clear cache ("drush cr"), and view the source code for a page on the site. Observe <script> elements have an integrity attribute.

Look at the browser console and verify there are no Javascript files being blocked due to the integrity attribute hash code not matching the browser computed hash code. Simulate a malicious actor and modify one of the non-aggregated Javascript files in an installed module or theme. Refresh the page and the browser console will show that the modified Javascript has been blocked.

If a legitimate modification is made to a Javascript file, run "drush sri-gen" to update the SRI configuration with a new hash code so the browser won't block the Javascript.

Note: This module does not currently add an integrity attribute to <script> elements for Drupal core Javascript files, aggregated Javascript files, or cloud-based Javascript.

Additional Requirements

None

Similar projects

There is a Drupal core issue with a patch which reportedly adds an integrity attribute to aggregated Javascript files. The external_script_sri contrib module provides a method to add an integrity attribute to cloud-based Javascript.

Depends on

Dependencies of the latest stable release

No dependencies recorded for this project.

Required by

Tracked projects that depend on this one

No tracked projects depend on this one yet.

Activity

Tracked releases
3
Tracked since
Mar 2025
Latest release
11 months ago
Releases (12 mo)
2 ▲ from 1
Maintenance
Slowing

Release Timeline

Releases

Version Type Core Release date
1.1.0 Stable 10–11 Sep 12, 2025
1.1.x-dev Dev 10–11 Sep 12, 2025
1.0.0 Stable 10–11 Mar 19, 2025