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:

  1. Atualize para PWA Kit v3.5 ou superior.
  2. Em seu ssr.js, defina a propriedade de opções useSLASPrivateClient passar para runtime.createHandler e para true:
  3. No seu _app-config/index.js, defina a propriedade enablePWAKitPrivateClient de <CommerceAPIProvider> para true.
  4. Em seu arquivo de configuração do PWA Kit, defina o clientId da commerceAPI como seu ID do cliente SLAS privado.
  5. Em seu ambiente, defina a variável de ambiente PWA_KIT_SLAS_CLIENT_SECRET como seu segredo de cliente SLAS privado.
  1. Em seu arquivo de configuração do PWA Kit, defina o clientId da commerceAPI como seu ID do cliente SLAS privado.
  2. 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 propriedade enablePWAKitPrivateClient dentro do CommerceAPIProvider como true.

  • Em um ambiente de desenvolvimento local, o servidor PWA Kit não será iniciado se a propriedade useSLASPrivateClient estiver habilitada em ssr.js e a variável de ambiente PWA_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.