Usar um cliente SLAS privado
Os clientes da Shopper Login and API Access (SLAS) API permitem que seu aplicativo autentique e autorize os compradores. Os clientes SLAS vêm em dois tipos: público e privado.
Os clientes SLAS privados oferecem várias vantagens sobre um cliente público, incluindo:
- Pré-autorizar os compradores visitantes a solicitar acesso a uma loja, o que resulta em tempos de carregamento de página mais rápidos.
- Habilitar o uso de recursos não disponíveis para clientes SLAS públicos, incluindo logon sem senha e redefinição de senha. Consulte Casos de uso de cliente SLAS privado.
Para tirar proveito de um cliente SLAS privado, seu projeto deve ser capaz de armazenar com segurança um segredo do cliente.
Considere o uso de um cliente público se seu projeto for executado no lado do cliente e precisar se comunicar diretamente com SLAS.
O PWA Kit 3.5 e superior aceita o uso de clientes SLAS públicos e privados.
Todas as versões de PWA anteriores a PWA Kit 3.5 oferecem suporte apenas a clientes SLAS públicos.
Se você já tem um site PWA Kit usando um cliente SLAS público, recomendamos que continue lendo e considere mudar para um cliente privado.
Antes de executar os comandos neste guia, substitua os espaços reservados por valores reais. Os espaços reservados são formatados da seguinte maneira: $PLACEHOLDER.
Ao trabalhar com clientes privados, deve-se tomar cuidado para não expor o segredo do cliente aos compradores e navegadores no lado do cliente.
Para ajudar a proteger o segredo do cliente, o Retail React App no PWA Kit armazena o lado do servidor secreto por meio do uso de variáveis de ambiente. Consulte Definir variáveis de ambiente para obter informações sobre como armazenar o segredo do cliente.
Em um nível alto, você fará o seguinte para configurar um cliente SLAS privado com seu site PWA Kit.
- Criar o cliente SLAS privado
- Configurar o PWA Kit
- Definir variáveis de ambiente
Comece completando as instruções em Autorização para Shopper APIs e Configurar o acesso à API para criar seu cliente SLAS privado.
Depois de criar seu cliente SLAS privado, siga as etapas abaixo para usá-lo com seu site PWA Kit:
- Atualize para PWA Kit v3.5 ou superior.
- Em seu
ssr.js
, defina a propriedade de opçõesuseSLASPrivateClient
passar pararuntime.createHandler
e paratrue
: - No seu
_app-config/index.js
, defina a propriedadeenablePWAKitPrivateClient
de<CommerceAPIProvider>
paratrue
. - Em seu arquivo de configuração do PWA Kit, defina o clientId da commerceAPI como seu ID do cliente SLAS privado.
- Em seu ambiente, defina a variável de ambiente
PWA_KIT_SLAS_CLIENT_SECRET
como seu segredo de cliente SLAS privado.
- Em seu arquivo de configuração do PWA Kit, defina o clientId da commerceAPI como seu ID do cliente SLAS privado.
- Em seu ambiente, defina a variável de ambiente
PWA_KIT_SLAS_CLIENT_SECRET
como seu segredo de cliente SLAS privado.
Execute o seguinte comando para definir a variável de ambiente PWA_KIT_SLAS_CLIENT_SECRET
localmente em um prompt de comando ativo:
- No Mac/Unix, execute
export PWA_KIT_SLAS_CLIENT_SECRET=$YOUR_CLIENT_SECRET
- No Windows, execute
set PWA_KIT_SLAS_CLIENT_SECRET=$YOUR_CLIENT_SECRET
Em um ambiente de desenvolvimento local, convém definir o PWA_KIT_SLAS_CLIENT_SECRET
mais permanentemente para que ele seja incluído automaticamente quando você abrir um novo prompt de comando.
No Mac/Unix, você pode fazer isso definindo a variável de ambiente PWA_KIT_SLAS_CLIENT_SECRET
no arquivo .bashrc
da sua máquina.
No Windows, você pode fazer isso configurando a variável de ambiente PWA_KIT_SLAS_CLIENT_SECRET
via Painel de Controle -> Sistema -> Avançado -> Variáveis de ambiente.
Se você estiver executando seu site PWA Kit remotamente no Managed Runtime, poderá definir a variável de ambiente PWA_KIT_SLAS_CLIENT_SECRET
ao executar o seguinte comando no terminal depois de substituir as variáveis para corresponder ao seu ambiente.
Para obter detalhes sobre como obter uma chave da Managed Runtime API e outras propriedades do seu ambiente remoto, consulte nosso guia Enviar por push e implantar pacotesde pacotes por push e implantação.
Para obter mais informações, consulte Variáveis de ambiente.
Além das etapas de configuração do PWA Kit descritas acima, em uma loja (virtual) para lançamento em fases que esteja usando o PWA Kit e o SFRA, você também desejará atualizar o Plugin SLAS para usar seu cliente SLAS privado. Consulte o Leia-me do Plugin SLAS para obter instruções sobre como configurar um cliente SLAS privado para funcionar com SFRA.
Se estiver estendendo sua implementação do PWA Kit para usar outros endpoints SLAS que exijam clientes privados, como Logon sem senha, você poderá estender o conjunto de endpoints disponíveis usando a opção applySLASPrivateClientToEndpoints
para runtime.createHandler
:
-
Se você vir chamadas HTTP 400 para SLAS /authorize, o site PWA Kit está usando os fluxos de cliente SLAS público com seu ID de cliente privado. Em seu arquivo
_app-config/index.js
, defina a propriedadeenablePWAKitPrivateClient
dentro do CommerceAPIProvider comotrue
. -
Em um ambiente de desenvolvimento local, o servidor PWA Kit não será iniciado se a propriedade
useSLASPrivateClient
estiver habilitada emssr.js
e a variável de ambientePWA_KIT_SLAS_CLIENT_SECRET
não tiver sido definida. Defina a variável de ambiente para o segredo do cliente SLAS continuar. -
Depois de implantar seu site PWA Kit no Managed Runtime, se você vir um erro HTTP 501 ao fazer uma chamada para SLAS, isso pode significar que a variável de ambiente
PWA_KIT_SLAS_CLIENT_SECRET
não foi definida. Depois de configurá-la, aguarde alguns minutos para que a alteração seja aplicada.