Por lo que he investigado aquí en la comunidad, agregar el código a continuación a manifest.json
al menos debería permitir excepciones para los scripts en la lista blanca, pero parece que ya no se permite el uso inyectado, excepto si los scripts son agregados por src
etiqueta. Alguien podría ayudarme a confirmar porque no encuentro nada en la documentación (o no lo busqué bien en la API)
manifiesto.json:
... ,"content_security_policy": { "extension_pages": "default-src 'self'; script-src 'self' https://example.com;", "sandbox": "sandbox default-src 'self';" } ...
Acabo de publicar y encontré la respuesta justo después... como no encontré nada en el foro, lo dejo ahí por si alguien tiene dudas:
... MV3 no permite ciertas modificaciones de CSP para extension_pages que estaban permitidas en MV2. Las directivas script-src, object-src y worker-src solo pueden tener los siguientes valores:
self none Cualquier fuente de host local (http://localhost, http://127.0.0.1 o cualquier puerto en esos dominios) Las modificaciones de CSP para sandbox no tienen nuevas restricciones. ...
https://developer.chrome.com/docs/extensions/mv3/intro/mv3-migration/#content-security-policy
Por lo tanto, solo por una inyección como:
const node = document.createElement('script'); node.src = chrome.runtime.getURL('./script.js'); node.onload = function(){ this.remove() }; (document.head || document.documentElement).appendChild(node);