Uso di un client privato SLAS
I client SLAS (Shopper Login and API Access) API consentono all'applicazione di autenticare e autorizzare gli acquirenti. I client SLAS sono di due tipi: pubblici e privati.
I clienti privati SLAS offrono diversi vantaggi rispetto a un cliente pubblico, tra cui:
- Pre-autorizzano gli acquirenti ospiti (non registrati) a richiedere l'accesso a un negozio, il che si traduce in tempi di caricamento delle pagine più rapidi.
- Abilitano l'utilizzo di funzionalità non disponibili ai client pubblici SLAS, tra cui l'accesso senza password e la reimpostazione della password. Vedere Casi d'uso di client SLAS privato.
Per sfruttare i vantaggi di un client SLAS privato, il progetto deve essere in grado di archiviare in modo sicuro un segreto client.
Prendere in considerazione l'utilizzo di un client pubblico se il progetto viene eseguito sul lato client e deve comunicare con SLAS direttamente.
PWA Kit 3.5 e versioni successive supportano l'utilizzo di client SLAS pubblici e privati.
Tutte le versioni di PWA precedenti a PWA Kit 3.5 supportano solo client SLAS pubblici.
Se si dispone di un sito PWA Kit esistente che utilizza un client pubblico SLAS, si consiglia di continuare a leggere e prendere in considerazione il passaggio a un client privato.
Prima di eseguire i comandi di questa guida, sostituire tutti i segnaposto con valori effettivi. I segnaposto sono formattati nel seguente modo: $PLACEHOLDER.
Quando si lavora con client privati, è necessario prestare attenzione a non esporre il segreto client agli acquirenti e ai browser di lato client.
Per proteggere il segreto client, il PWA Kit Retail React App archivia il segreto lato server tramite l'uso di variabili di ambiente. Per informazioni su come archiviare il segreto client, vedere Impostazione delle variabili di ambiente.
A livello generale, per configurare un client privato SLAS con il sito PWA Kit si procederà come segue.
- Creare il client privato SLAS
- Configurare il PWA Kit
- Impostare le variabili di ambiente
Per creare il client privato SLAS, iniziare completando le istruzioni riportate in Autorizzazione per le Shopper API e Impostazione dell'accesso API.
Dopo aver creato il client privato SLAS, procedere nel seguente modo per utilizzarlo con il proprio sito PWA Kit:
- Eseguire l'aggiornamento a PWA Kit v3.5 o versioni successive.
- Nel proprio
ssr.js
, impostare la proprietàuseSLASPrivateClient
delle opzioni di passaggio aruntime.createHandler
sutrue
: - Nel proprio
_app-config/index.js
, impostare la propenablePWAKitPrivateClient
di<CommerceAPIProvider>
sutrue
. - Nel proprio file di configurazione di PWA Kit, impostare il proprio commerceAPI clientId sull'ID di client privato SLAS.
- Nel proprio ambiente, impostare la variabile di ambiente
PWA_KIT_SLAS_CLIENT_SECRET
sul segreto del client privato SLAS.
- Nel proprio file di configurazione di PWA Kit, impostare commerceAPI clientId sull'ID di client privato SLAS.
- Nel proprio ambiente, impostare la variabile di ambiente
PWA_KIT_SLAS_CLIENT_SECRET
sul segreto del client privato SLAS.
Eseguire il comando seguente per impostare la variabile di ambiente PWA_KIT_SLAS_CLIENT_SECRET
localmente in un prompt di comando attivo:
- Su Mac / Unix, eseguire
export PWA_KIT_SLAS_CLIENT_SECRET=$YOUR_CLIENT_SECRET
- Su Windows, eseguire
set PWA_KIT_SLAS_CLIENT_SECRET=$YOUR_CLIENT_SECRET
In un ambiente di sviluppo locale, è consigliabile impostare il PWA_KIT_SLAS_CLIENT_SECRET
in modo più permanente in modo che venga incluso automaticamente quando si apre un nuovo prompt di comando.
Su Mac / Unix, eseguire questa operazione impostando la variabile di ambiente PWA_KIT_SLAS_CLIENT_SECRET
nel file .bashrc
del proprio computer.
In Windows è possibile eseguire questa operazione impostando la variabile di ambiente PWA_KIT_SLAS_CLIENT_SECRET
tramite Pannello di controllo -> Sistema -> Impostazioni di sistema avanzate -> Variabili di ambiente.
Se si esegue il sito PWA Kit in remoto su Managed Runtime, è possibile impostare la variabile di ambiente PWA_KIT_SLAS_CLIENT_SECRET
eseguendo il comando seguente nel terminale dopo aver sostituito le variabili in modo che corrispondano all'ambiente.
Per informazioni dettagliate su come ottenere una chiave Managed Runtime API e altre proprietà dell'ambiente remoto, consultare la nostra guida Push e distribuzione dei bundle.
Per ulteriori informazioni, vedere Variabili di ambiente.
Oltre ai passaggi di configurazione del PWA Kit descritti in precedenza, per uno storefront con lancio in fasi che utilizza sia PWA Kit che SFRA è necessario anche aggiornare il plug-in SLAS per l'utilizzo del proprio client privato SLAS. Per istruzioni su come configurare un client privato SLAS per l'utilizzo con SFRA, vedere il file Leggimi del plug-in SLAS.
Se si sta estendendo l'implementazione di PWA Kit all'utilizzo di altri endpoint SLAS che richiedono client privati come Accesso senza password, è possibile estendere il set di endpoint disponibili utilizzando l'opzione applySLASPrivateClientToEndpoints
per runtime.createHandler
:
-
Se appaiono chiamate HTTP 400 a SLAS /authorize, il sito PWA Kit utilizza i flussi di client pubblico SLAS con l'ID del proprio client privato. Nel file
_app-config/index.js
, impostare la propenablePWAKitPrivateClient
all'interno di CommerceAPIProvider sutrue
. -
In un ambiente di sviluppo locale, il server PWA Kit non verrà avviato se in
ssr.js
risulta abilitata la proprietàuseSLASPrivateClient
e non è stata impostata la variabile di ambientePWA_KIT_SLAS_CLIENT_SECRET
. Impostare la variabile di ambiente sul segreto client SLAS per continuare. -
Dopo aver distribuito il sito PWA Kit in Managed Runtime, se appare un errore HTTP 501 quando si effettua una chiamata a SLAS, è possibile che la variabile di ambiente
PWA_KIT_SLAS_CLIENT_SECRET
non sia stata impostata. Dopo averla impostata, attendere qualche minuto affinché la modifica venga applicata.