Pular para o conteúdo principal

Proteger as chaves de parceiro

As chaves de parceiro autorizam operações em todo o projeto. Armazene-as em um gerenciador de segredos do lado do servidor ou em uma variável de ambiente criptografada e injete-as somente em processos de backend confiáveis.
Nunca envie uma chave de parceiro ao seu frontend como configuração, resposta de API, parâmetro de consulta ou variável de ambiente renderizada. O seu backend deve expor endpoints restritos que autorizem o cliente conectado antes de chamar o Social media studio.
Use chaves pk_test_ durante o desenvolvimento e chaves pk_live_ somente em produção. Mantenha os projetos de teste e de produção separados, faça a rotação das chaves periodicamente e revogue uma chave imediatamente se ela puder ter sido exposta.

Autorizar cada operação de cliente

O SDK autentica o seu aplicativo, não o cliente que usa o seu produto. Antes de cada chamada ao SDK:
  1. Autentique o cliente no seu aplicativo.
  2. Resolva, no seu servidor, o endUserId do Social media studio armazenado para o cliente.
  3. Verifique se os IDs de conexão e de post solicitados pertencem a esse cliente.
  4. Chame o SDK usando esses IDs resolvidos pelo servidor.
Nunca aceite um endUserId arbitrário vindo de um navegador e o repasse sem verificar a propriedade no seu banco de dados.

Escopos de chave

As chaves de parceiro podem ser restritas às capacidades de que um serviço precisa: Use chaves separadas e com o mínimo de privilégios para serviços independentes sempre que possível.

Tratar erros do SDK

Toda requisição de API malsucedida lança SoMePlatformError:
Na criação de posts, as novas tentativas só são seguras quando você reutiliza a mesma chave de idempotência. Não repita cegamente outras operações de escrita, a menos que o seu aplicativo consiga confirmar o resultado delas.

Logs

Registre o contexto da requisição, como o ID do seu cliente, o ID do usuário final, a operação, o status HTTP e a chave de idempotência. Não registre chaves de parceiro completas, segredos de webhook, tokens OAuth, URLs de envio pré-assinadas nem metadados sensíveis de clientes.