*********************************************************************************************************************************
Che cos'è Lightning Web Security?
Lightning Web Security (LWS) è una nuova architettura di sicurezza lato client per i componenti Lightning. Questa nuova architettura presenta meno restrizioni e una maggiore funzionalità offrendo al contempo un ambiente Sandbox solido e un piano di sicurezza robusto per imporre l'isolamento dello spazio dei nomi. Il risultato è una sicurezza robusta, flessibile e fruibile per i propri componenti Lightning.
Lightning Locker è stata l'architettura di sicurezza predefinita per tutti i componenti Lightning. Lightning Web Security (LWS) sostituirà Lightning Locker inizialmente per i componenti Web Lightning e successivamente Salesforce aggiungerà il supporto dei componenti Aura nel corso di diversi rilasci.
Torna all'inizio
Quale problema viene risolto da Lightning Web Security?
Lightning Web Security impedisce ai componenti Lightning di interferire con i dati (o di accedere ai dati) dei componenti di altri spazi dei nomi senza l'esplicito consenso dello spazio dei nomi.
Una pagina Lightning può includere componenti creati da più aziende. I componenti creati dal team di sviluppatori di un'organizzazione coesistono con i componenti creati da Salesforce. Se l'utente crea e distribuisce app in pacchetti su AppExchange, i suoi componenti coesistono con i componenti creati da Salesforce e con i componenti del cliente che installa l'app dell'utente.
Senza misure preventive in atto, un componente può accedere agli oggetti globali window e ottenere risorse private o dati di altri componenti sulla pagina. Una soluzione prevede di isolare i componenti per spazio dei nomi in modo che un componente dannoso non sia in grado di accedere alle risorse dei componenti al di fuori del suo spazio dei nomi.
L'isolamento dello spazio dei nomi è trasparente e virtuale, il che fa sembrare che i componenti vengano importati da altri spazi dei nomi come se fossero tutti in esecuzione nello stesso ambiente.
Torna all'inizio
Come funziona Lightning Web Security?
Lightning Web Security isola i componenti in un Sandbox JavaScript dedicato allo spazio dei nomi dei componenti. Questo sandboxing ci consente di esporre direttamente gli oggetti globali document, window ed element, senza rischiare di far passare minacce alla sicurezza. LWS altera il codice in esecuzione nel Sandbox JavaScript per aiutare a impedire comportamenti non sicuri. Per maggiori informazioni, vedere Come funziona Lightning Web Security?.
Torna all'inizio
In che modo Lightning Web Security si differenzia da Lightning Locker?
Lightning Web Security si differenzia da Lightning Locker per questi aspetti:
Torna all'inizio
Lightning Web Security è più sicuro di Lightning Locker?
Lightning Web Security e Lightning Locker offrono attualmente livelli di sicurezza equivalenti. La differenza chiave è che Lightning Web Security consente una funzionalità JavaScript maggiore e un'esecuzione più rapida del codice.
LWS può abilitare in sicurezza funzioni che, invece, vengono impedite da Lightning Locker in quanto l'architettura consente un approccio più granulare al blocco di comportamenti non sicuri. Ad esempio, anziché impedire completamente l'uso di un'API, LWS riesce a impedire a un componente di impostare una proprietà dell'API.
Per maggiori informazioni, consultare How Lightning Web Security Compares to Lightning Locker (Differenze tra Lightning Web Security e Lightning Locker).
Torna all'inizio
Perché dovrei passare a LWS se Locker è altrettanto sicuro?
Dato che Lightning Web Security si integra nella piattaforma Lightning Experience, offre le stesse protezioni di sicurezza di Lightning Locker, per facilitare la transizione tra le due architetture. Vogliamo che l'esecuzione dei componenti Lightning degli utenti sia possibile inizialmente in entrambe le architetture. Tuttavia queste due architetture sono sostanzialmente diverse.
LWS sta adottando nuovi standard Web attualmente in fase di sviluppo attivo, mentre Lightning Locker è una soluzione univoca che Salesforce aveva implementato quando non esistevano ancora standard Web adeguati. Si pensi a LWS come al futuro della sicurezza dei componenti Lightning e a Lightning Locker come all'implementazione legacy della sicurezza di tali componenti. Salesforce è parte attiva nello sviluppo degli standard Web implementati da LWS. Al momento i nostri sforzi di sviluppo sono concentrati su LWS mentre abbiamo deciso di mantenere Lightning Locker senza prevedere, però, alcuna ottimizzazione.
L'adozione di LWS risulta più vantaggiosa perché offre prestazioni generali migliori rispetto a Lightning Locker. L'architettura di LWS utilizza concetti di virtualizzazione nei Sandbox anziché wrapper che avvolgono ogni API non sicura. Grazie a questo approccio le prestazioni, che vengono inevitabilmente ridotte per garantire la sicurezza dei dati, risultano meno penalizzate. Dopo il caricamento iniziale della pagina, i componenti vengono eseguiti più rapidamente se è abilitato LWS rispetto a quando è abilitato Lightning Locker.
Quando tutti i propri componenti possono essere eseguiti con LWS e non è necessario passare di nuovo a Lightning Locker, è possibile ottimizzare tali componenti in modo da usufruire di altri vantaggi, come descritto nella sezione How Lightning Web Security Compares to Lightning Locker (Differenze tra Lightning Web Security e Lightning Locker).
Stiamo lavorando per aggiungere il supporto per i componenti Aura in Lightning Web Security. L'iniziale restrizione della disponibilità generale solo LWC è stata un punto temporaneo nell'evoluzione di Lightning Web Security. Con il rilascio Summer ‘23, LWS per Aura è disponibile a livello generale (GA).
La decisione di spostare l'organizzazione e i componenti a LWS è una questione di quando effettuare questo passaggio, non se effettuarlo o meno. In ultima analisi, Lightning Locker non sarà una soluzione percorribile per la sicurezza dei componenti Lightning. Prima si passa a LWS e meglio è per la sicurezza e le prestazioni dei propri componenti.
Torna all'inizio
Quando Lightning Web Security sarà disponibile a livello generale (GA)?
Lightning Web Security è disponibile a livello generale per LWC e i componenti Aura nel rilascio Summer ‘23.
Salesforce prevede di sostituire interamente Lightning Locker con LWS nel corso del tempo.
Torna all'inizio
I clienti devono abilitare Lightning Web Security?
Si invitano a clienti ad abilitare LWS, inizialmente in un ambiente Sandbox di test e quindi in produzione. LWS ha ripercussioni su tutti i componenti Lightning, inclusi i componenti installati tramite i pacchetti. Per ulteriori informazioni, vedere When to Enable Lightning Web Security (Quando abilitare Lightning Web Security).
Salesforce abiliterà automaticamente LWS basandosi su un approccio a scaglioni. Per ulteriori informazioni, vedere la sezione "Abilitazione di LWS".
Torna all'inizio
Quali sono le implicazioni a livello di creazione dei pacchetti per i partner ISV?
Le strategie di creazione dei pacchetti per i partner ISV dipendono da diversi fattori, come il tipo di componenti utilizzati nella soluzione ISV e l'architettura di sicurezza abilitata nell'organizzazione del cliente.
Questa tabella riassume le implicazioni a livello di creazione dei pacchetti per i partner ISV.
| Componenti nel pacchetto ISV | Supportato da Lightning Locker | Supportato da Lightning Web Security | Pacchetti necessari | Impostazione LWS nell'organizzazione del cliente |
| Solo componenti Aura. | Sì | Sì | 1 | Abilitata o disabilitata |
| Componenti Aura e componenti Web Lightning che non utilizzano funzioni solo LWS*. | Sì | Sì | 1 | Abilitata o disabilitata |
| Nessun componente Aura. Componenti Web Lightning che non utilizzano funzioni solo LWS. | Sì | Sì | 1 | Abilitata o disabilitata |
| Nessun componente Aura. Componenti Web Lightning che utilizzano funzioni solo LWS. | No. Locker richiede un pacchetto separato con componenti che non utilizzano funzioni solo LWS. | Sì | 2 | Abilitata, per il pacchetto che utilizza funzioni solo LWS. Disabilitata, per il pacchetto che non utilizza funzioni solo LWS. |
*Le funzioni solo LWS includono manipolazione degli oggetti globali, importazione o estensione di componenti e moduli da altri spazi dei nomi e accesso ai contenuti in elementi iframe.
Per ulteriori informazioni, consultare il blog What ISV Partners Need to Know About Lightning Web Security (Cosa devono sapere i partner ISV su Lightning Web Security).
Il partner può testare il proprio prodotto in un Sandbox o in un'organizzazione di prova sull'ultimo rilascio con LWS abilitato per verificare che funzioni correttamente. Vedere Workflow to Try Your Components with Lightning Web Security (Flusso di lavoro per provare i componenti con Lightning Web Security).
Dopo aver verificato che il prodotto si comporta come previsto con Lightning Web Security, il partner può collaborare con i propri clienti per stabilire se le organizzazioni di questi possono abilitare Lightning Web Security. Vedere When to Enable Lightning Web Security (Quando abilitare Lightning Web Security), che indica le condizioni in cui è appropriato abilitare LWS in produzione.
Se un partner non usufruisce delle nuove funzioni Lightning Web Security, non è necessario gestire due versioni dei pacchetti. Un pacchetto che ha funzionato con Lightning Locker funzionerà anche con LWS.
Se un partner desidera rilasciare nuovi pacchetti per usufruire delle funzioni abilitate da LWS, ad esempio l'importazione di componenti da un altro spazio dei nomi:
Se il partner desidera supportare anche i clienti che non possono abilitare Lightning Web Security, dovrà fornire pacchetti separati che funzionino con Lightning Locker finché Salesforce non avrà abilitato Lightning Web Security al 100% in tutte le organizzazioni.
Il supporto dei clienti per entrambe le architetture richiede pacchetti separati specifici per Lightning Locker e Lightning Web Security solo se il partner desidera utilizzare funzioni che vengono bloccate da Lightning Locker.
Torna all'inizio
Come fa un partner ISV a sapere se un cliente utilizza oggi LWS?
Chiedere al cliente di controllare l'impostazione LWS in Imposta, oppure controllare in modo programmatico il valore dell'impostazione lockerServiceNext utilizzando l'API dei metadati. Se il valore è true significa che LWS è abilitato. Vedere la sezione SessionSettings della Metadata API Developer Guide.
Per i siti Generatore di esperienze, LWS e Locker sono impostati indipendentemente dall'impostazione LWS dell'organizzazione. Chiedere al cliente di verificare l'impostazione di Lightning Locker nel Generatore di esperienze, oppure controllare in modo programmatico il valore dell'impostazione isLockerServiceEnabled usando l'API dei metadati. Se il valore è true significa che LWS è abilitato. Vedere la sezione ExperienceBundle della Metadata API Developer Guide.
Torna all'inizio
In che modo LWS influisce sui siti Experience Cloud?
Experience Cloud offre diversi tipi di siti. Per la descrizione di ciascuno di essi, vedere il glossario Experience Cloud.
I siti Aura possono includere componenti LWC e componenti Aura. In Summer ‘23, se l'impostazione LWS è abilitata nell'organizzazione, LWS protegge entrambi i tipi di componenti nei siti Aura. Se LWS non è abilitato nell'organizzazione, Lightning Locker protegge i componenti di un sito Aura. Se si disabilita Lightning Locker nelle impostazioni di un sito Aura, si disabilita l'architettura di sicurezza attualmente presente. Se LWS è abilitato a livello di organizzazione, la disabilitazione di Lightning Locker nel sito Aura disabilita effettivamente LWS per il sito Aura.
I siti LWR sono eseguiti utilizzando Lightning Web Runtime (LWR), che mette a disposizione la propria istanza di LWS per proteggere i componenti LWC nei siti. Poiché esiste un'istanza LWS separata, l'impostazione dell'organizzazione per LWS non ha effetto sui siti LWR. Se si disabilita Lightning Locker nel sito LWR, l'istanza di LWS del sito viene disabilitata, anche se LWS è abilitato nell'organizzazione. Si usa il nome "Lightning Locker" perché la nuova architettura di sicurezza è stata aggiunta a LWR prima che venisse scelto il nome Lightning Web Security. Prevediamo di aggiornare il nome in Generatore di esperienze. Per ulteriori informazioni, vedere LWR Template Limitations (Limitazioni dei modelli LWR) nella Guida di Salesforce.
I siti Schede Salesforce + Visualforce non sono protetti da LWS né da Lightning Locker. Utilizzano un'architettura di sicurezza diversa. L'impostazione LWS dell'organizzazione non ha alcun effetto.
Per ulteriori informazioni, vedere Develop Secure Sites: CSP, LWS, and Lightning Locker nella Experience Cloud Developer Guide.
Torna all'inizio
Field Service utilizza LWS?
Field Service utilizza Lightning Web Runtime, che mette a disposizione la propria istanza di LWS. L'impostazione LWS dell'organizzazione non influisce sull'istanza utilizzata in Field Service. I componenti Web Lightning personalizzati creati dagli sviluppatori per estendere Field Service sono protetti dall'istanza LWS in LWR. La maggior parte della documentazione LWS interessa gli sviluppatori che lavorano con i componenti per Field Service, tranne le informazioni sull'abilitazione e la disabilitazione di LWS nell'organizzazione.
Salesforce attiverà Lightning Web Security per i clienti?
Sì, nel tempo. Man mano che LWS si evolve e noi riusciamo ad assicurare una transizione fluida alle organizzazioni che passano da Lightning Locker a LWS, Salesforce prevede di continuare ad abilitare gradualmente LWS nel corso dei prossimi rilasci. Prevediamo di riprendere l'abilitazione automatica a partire dal rilascio Winter ‘24 (safe harbor).
Torna all'inizio
Salesforce abiliterà automaticamente LWS nel rilascio Summer ‘23?
No. In Summer ‘23, non abiliteremo automaticamente le organizzazioni esistenti per LWS. Invitiamo caldamente i clienti a testare i propri componenti LWC e Aura con LWS in un'organizzazione Sandbox e ad abilitare LWS nella propria organizzazione di produzione dopo aver verificato che i componenti funzionino come previsto.
Se i test in un'organizzazione Sandbox rivelano problemi con i componenti LWC o Aura, non abilitare LWS nella propria organizzazione di produzione. Aprire un caso con l'Assistenza.
Torna all'inizio
Quale potrebbe essere il potenziale impatto quando LWS viene abilitato per impostazione predefinita nelle nuove organizzazioni?
Abbiamo annunciato nelle note di rilascio di Winter ‘23 che LWS per i componenti Web Lightning è abilitato per impostazione predefinita nelle nuove organizzazioni Salesforce. A partire dal rilascio Spring ‘23, anche LWS per i componenti Aura (beta) è stato abilitato per impostazione predefinita nelle nuove organizzazioni Salesforce. LWS per i componenti Aura è disponibile a livello generale nel rilascio Summer ‘23 e continua a essere abilitato per impostazione predefinita nelle nuove organizzazioni.
Nelle organizzazioni personalizzate che si prevede di unire o ripartire in una nuova organizzazione, determinare se sono utilizzati componenti Lightning nelle organizzazioni esistenti. Analogamente, i clienti multi-organizzazione devono determinare se i componenti Lightning sono utilizzati nei modelli di metadati e nei repository del codice utilizzati per eseguire il bootstrap delle nuove organizzazioni. Se si popola una nuova organizzazione con i propri componenti Lightning o con componenti Lightning in pacchetti in uso in organizzazioni senza che LWS sia abilitato, tenere presente che tali componenti sono in esecuzione con LWS abilitato nella nuova organizzazione. Assicurarsi di eseguire in un ambiente Sandbox dei test dei propri componenti Lightning o dei pacchetti gestiti contenenti componenti Lightning, con l'impostazione Utilizza Lightning Web Security per i componenti Web Lightning e i componenti Aura abilitata.
Chiedere ai fornitori dei pacchetti gestiti se tali pacchetti sono compatibili con LWS. È possibile disabilitare LWS se necessario, ma consigliamo di aprire prima un caso di assistenza per risolvere eventuali problemi con LWS.
Torna all'inizio
Dove è abilitato LWS per impostazione predefinita?
LWS ora ha ripercussioni sui componenti Web Lightning e Aura ed è abilitato in questi tipi di organizzazioni:
Summer ‘22
Winter ‘23
Spring ‘23
Summer ‘23
Dove si possono trovare altre informazioni su LWS?
I clienti e i partner possono utilizzare le seguenti risorse per saperne di più su LWS:
Trailhead:
Lightning Web Components Developer Guide:
Note di rilascio:
Use Lightning Web Security for Lightning Web Components and Aura Components (Generally Available) (Utilizzo di Lightning Web Security per i componenti Web Lightning e i componenti Aura (disponibile a livello generale) (Summer ‘23)
Blog:
Partner Learning Camp:
Torna all'inizio
A chi ci si può rivolgere in caso di domande o problemi relativi a LWS?
Per ricevere supporto o segnalare un problema, aprire un caso di assistenza con l'argomento #Developer Support to determine whether there is a bug in your code or in the framework (Assistenza sviluppatore per determinare se è presente un bug nel codice o nel framework).
Registrare un'idea se il proprio caso d'uso al momento non è supportato.
In caso di domande, visitare il gruppo Lightning Components Development nella Trailblazer Community.
000392327

We use three kinds of cookies on our websites: required, functional, and advertising. You can choose whether functional and advertising cookies apply. Click on the different cookie categories to find out more about each category and to change the default settings.
Privacy Statement
Required cookies are necessary for basic website functionality. Some examples include: session cookies needed to transmit the website, authentication cookies, and security cookies.
Functional cookies enhance functions, performance, and services on the website. Some examples include: cookies used to analyze site traffic, cookies used for market research, and cookies used to display advertising that is not directed to a particular individual.
Advertising cookies track activity across websites in order to understand a viewer’s interests, and direct them specific marketing. Some examples include: cookies used for remarketing, or interest-based advertising.