grafana/pkg
Giuseppe Guerra 0db65d229e
Plugins: Add Subresource Integrity checks (#93024)
* Plugins: Pass hashes for SRI to frontend

* Add SRI hashes to frontendsettings DTOs

* Add docstring

* TestSriHashes

* Fix typo

* Changed SriHashes to ModuleHash

* update loader_test compareOpts

* update ModuleHash error message

* Add TestModuleHash/no_module.js

* Add omitEmpty to moduleHash

* Add ModuleHash to api/plugins/${pluginId}/settings

* moved ModuleHash field

* feat(plugins): add moduleHash to bootData and plugin types

* feat(plugins): if moduleHash is available apply it to systemjs importmap

* Calculate ModuleHash for CDN provisioned plugins

* Add ModuleHash tests for TestCalculate

* adjust test case name

* removed .envrc

* Fix signature verification failing for internal plugins

* fix tests

* Add pluginsFilesystemSriChecks feature togglemk

* renamed FilesystemSriChecksEnabled

* refactor(plugin_loader): prefer extending type declaration over ts-error

* added a couple more tests

* Removed unused features

* Removed unused argument from signature.DefaultCalculator call

* Removed unused argument from bootstrap.DefaultConstructFunc

* Moved ModuleHash to pluginassets service

* update docstring

* lint

* Removed cdn dependency from manifest.Signature

* add tests

* fix extra parameters in tests

* "fix" tests

* removed outdated test

* removed unused cdn dependency in signature.DefaultCalculator

* reduce diff

* Cache returned values

* Add support for deeply nested plugins (more than 1 hierarchy level)

* simplify cache usage

* refactor TestService_ModuleHash_Cache

* removed unused testdata

* re-generate feature toggles

* use version for module hash cache

* Renamed feature toggle to pluginsSriChecks and use it for both cdn and filesystem

* Removed app/types/system-integrity.d.ts

* re-generate feature toggles

* re-generate feature toggles

* feat(plugins): put systemjs integrity hash behind feature flag

---------

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2024-10-04 14:55:09 +02:00
..
aggregator Chore: Update k8s.io dependencies to v0.31.1 (#93696) 2024-10-03 15:50:15 -04:00
api Plugins: Add Subresource Integrity checks (#93024) 2024-10-04 14:55:09 +02:00
apimachinery Chore: Update k8s.io dependencies to v0.31.1 (#93696) 2024-10-03 15:50:15 -04:00
apis RBAC: Add legacy authorization checks to service accounts (#93753) 2024-09-27 15:53:11 +02:00
apiserver Chore: Update k8s.io dependencies to v0.31.1 (#93696) 2024-10-03 15:50:15 -04:00
build Alerting: Fix panics when attempting to create an Alertmanager after failing (#94023) 2024-09-30 13:50:35 -03:00
bus Tracing: Standardize on otel tracing (#75528) 2023-10-03 14:54:20 +02:00
cmd Chore: Restore permissions used to create plugins dir (#94139) 2024-10-03 09:09:54 +02:00
codegen chore(deps): Upgrade openapi dep, remove replace directive (#90609) 2024-07-18 14:42:18 -04:00
components Chore: Bump google.golang.org/grpc to 1.64.0 (#88219) 2024-05-27 12:44:39 +02:00
events Alerting: update rule versions on folder move (#88376) 2024-08-13 12:26:26 +02:00
expr InfluxDB: Add Influx to check if series need to be fixed labels (#93299) 2024-09-13 14:05:15 -05:00
extensions K8s: Move standalone apiserver CLI to enterprise (#93799) 2024-09-27 09:04:35 +03:00
generated Alerting: Notifications Templates API (#91349) 2024-09-25 09:31:57 -04:00
ifaces/gcsifaces
infra Chore: fix initialization data race in infra usagestats (#94070) 2024-10-02 07:30:44 -03:00
kinds Dashboard Scene: Fix snapshots not displaying variables values (#88967) 2024-08-20 17:05:12 +02:00
login/social Cfg: Deduplicate DefaultOrgID code (#93588) 2024-09-23 16:50:11 +02:00
middleware Auth: Use sessionStorage instead of cookie for automatic redirection (#92759) 2024-09-24 18:38:09 +02:00
mocks/mock_gcsifaces Chore: use any rather than interface{} (#74066) 2023-08-30 18:46:47 +03:00
models Chore: Move identity and errutil to apimachinery module (#89116) 2024-06-13 07:11:35 +03:00
modules Zanzana: Initial work to run openFGA as embedded or standalone service (#89211) 2024-06-18 10:04:18 +02:00
plugins Plugins: Add Subresource Integrity checks (#93024) 2024-10-04 14:55:09 +02:00
promlib Chore: Update k8s.io dependencies to v0.31.1 (#93696) 2024-10-03 15:50:15 -04:00
registry K8s/Folders: Fix tests for creating folders (#94192) 2024-10-03 12:11:40 +02:00
semconv Alerting: Fix panics when attempting to create an Alertmanager after failing (#94023) 2024-09-30 13:50:35 -03:00
server Folders: Export folder store implementation (#93897) 2024-09-30 10:28:47 +02:00
services Plugins: Add Subresource Integrity checks (#93024) 2024-10-04 14:55:09 +02:00
setting Zanzana: Initial dashboard search (#93093) 2024-10-04 12:27:10 +02:00
storage Unistore: Reuse MySQL and Postgres Grafana core config instead of the object (#94223) 2024-10-04 12:07:20 +00:00
tests Plugin Extensions: Require meta-data to be defined in plugin.json during development mode (#93429) 2024-10-04 08:41:26 +02:00
tsdb ElasticSearch: Fix errorsource in newInstanceSettings (#93859) 2024-09-27 15:40:35 -04:00
util Auth: Replace jmespath/go-jmespath with jmespath-community/go-jmespath (#94203) 2024-10-03 15:43:15 +02:00
web feat: add QueryIntWithDefault to web context (#93130) 2024-09-10 09:04:49 -05:00
README.md Chore: Move all backend contribution documents to a single directory (#61140) 2023-01-11 11:16:52 +01:00
ruleguard.rules.go

This directory contains the code for the Grafana backend.

The contributor documentation for Grafana's backend is in /contribute/backend/README.md.