winjs-plugin-security
Un plugin che fornisce funzionalità di sicurezza avanzate per progetti WinJS, principalmente per la generazione dell’attributo SRI (Subresource Integrity).
Caratteristiche
- Generazione automatica dell’attributo SRI per i tag
enei file HTML - Supporto per algoritmi hash SHA-256, SHA-384, SHA-512 (configurabili)
- Aggiunta automatica dell’attributo
crossorigin="anonymous"per garantire il corretto funzionamento di SRI - Attivo solo in ambiente di produzione, viene ignorato automaticamente in sviluppo
Installazione
pnpm add @winner-fed/plugin-security
Metodo di utilizzo
Aggiungi la configurazione del plugin nel tuo file di configurazione .winrc.ts:
import { defineConfig } from '@winner-fed/winjs';export default defineConfig({
plugins: ['@winner-fed/plugin-security'],
security: {
sri: true // 启用 SRI 功能
},
});
Opzioni di configurazione
sri
- Tipo:
boolean | { algorithm: 'sha256' | 'sha384' | 'sha512' } - Valore predefinito: deve essere impostato manualmente
- Descrizione: indica se abilitare la funzionalità SRI (Subresource Integrity) e permette di configurare opzionalmente l’algoritmo di hash
true o {}, il plugin esegue le seguenti operazioni:- Scansiona i file HTML generati dopo la build
- Aggiunge l’attributo
integritya tutti i tagcon attributosrc - Aggiunge l’attributo
integritya tutti i tagcon attributohref - Aggiunge automaticamente l’attributo
crossorigin="anonymous"(se non già presente)
security: {
sri: {
algorithm: 'sha512' // 可选 'sha256' | 'sha384' | 'sha512',默认 'sha512'
}
}示例
输入 HTML
Output HTML (dopo aver abilitato SRI)
Avvertenze di sicurezza
SRI (Subresource Integrity) è una funzionalità di sicurezza che consente al browser di verificare che le risorse ottenute (ad esempio, quelle prelevate da un CDN) non siano state modificate in modo dannoso. Quando il browser carica una risorsa, calcola il valore hash della risorsa e lo confronta con quello specificato nell'attributo integrity. Se gli hash non corrispondono, il browser rifiuta di caricare la risorsa.
Per i tag , il risultato è il rifiuto di eseguire il codice al suo interno; per i link CSS, il risultato è che gli stili non verranno caricati.
Per ulteriori informazioni su SRI, è possibile consultare Subresource Integrity - MDN.
Avvertenze
- Questo plugin è efficace solo durante la build di produzione, l'ambiente di sviluppo verrà automaticamente ignorato
- È necessario assicurarsi che i file delle risorse siano accessibili nella directory di output della build
- L'attributo
integritydeve essere utilizzato insieme all'attributocrossoriginper funzionare correttamente
Licenza
MIT
--- Tranlated By Open Ai Tx | Last indexed: 2025-08-06 ---