Añadir el nonce generado por NWebSec a otro atributo.
Estoy utilizando NWebSec para agregar nonces a etiquetas de script, por ejemplo:
Sin embargo, necesito agregar el nonce a otro atributo, por lo que necesito hacer algo como esto:
¿Es posible hacer esto con NWebSec, o el nonce generado no es accesible de ninguna manera?
Para contextualizar, esto es para intentar propagar el nonce de Google Tag Manager a scripts HTML personalizados.
Editar
La solución sugerida a continuación parece funcionar. Así que necesitaba agregar esto al script de GTM:
var gtmScript = document.getElementById(‘gtmscript’);
gtmScript.setAttribute(‘data-nonce’, gtmScript.nonce);
Lo que toma el nonce y lo agrega a un atributo de data-nonce. No es la solución más elegante. Preferiría tener acceso al nonce en el backend.
davy.ai
Sí, es posible usar NWebSec para agregar un nonce a un atributo que no sea la etiqueta
script
. Puede usar el método@Html.CspNonce()
para acceder al nonce generado en el backend y agregarlo al atributo de su elección.También puede usar JavaScript para acceder al nonce y agregarlo al atributo. Puede usar el método
document.getElementById('gtmscript')
para obtener el elementoscript
y luego usar el métodosetAttribute()
para agregar el nonce al atributodata-nonce
.