IMPORTANTE: esta documentação foi descontinuada. Leia a documentação Pipelines: checklist de construção atualizada no nosso novo portal de documentação.
SEGURANÇA
Itens de segurança que devem ser considerados para todos os projetos desenvolvidos na nossa Plataforma.
a) Trigger/API Keys
Ao utilizar os triggers HTTP, API REST e HTTP File, serviços serão expostos na Internet. Por configuração nativa (e não opcional) da nossa Plataforma, esses triggers podem ser utilizados, publicados e acessados somente com a utilização de API Keys.
API Keys são credenciais de acesso fornecidas para consultas em pipelines que utilizam os triggers mencionados acima. Essa é a garantia mínima de segurança exigida. Recomendamos que você utilize uma API Key sempre que possível e que reforce a segurança com o uso de JWT (JSON Web Token).
Para gerar uma chave (API Key) na nossa Plataforma Digibee, acesse "Configurações > API Keys", escolha o ambiente e clique em CRIAR:
RECOMENDAÇÃO: gere uma API Key diferente para cada sistema consumidor da sua API, restringindo o acesso somente aos pipelines desejados. Essa chave deverá ser enviada no header, com o parâmetro "apikey" e seu respectivo valor. Informe também o Content-Type esperado pelo pipeline (ex.: application/json).
IMPORTANTE: não recomendamos a utilização de pipelines sem API Key. Manter um endpoint aberto enfraquece a segurança e pode tornar seu ambiente vulnerável a ataques e vazamento de dados. A nossa Plataforma, por padrão, não permite a publicação de pipelines que utilizem triggers HTTP, API REST e HTTP Files sem API Key. Clientes que estejam dispostos a assumir esse risco devem enviar uma solicitação via Intercom utilizando o modelo abaixo:
Solicito a inclusão do/s pipeline/s abaixo descritos em whitelist para a não utilização de API Key.
Nome do realm:
Nome do(s) pipeline(s) que deve(m) ser incluído(s) em whitelist dentro deste realm:
Motivo da solicitação:
b) Armazenamento de credenciais
Sempre armazene as credenciais de autenticação dos serviços acessados no cofre de senhas da Plataforma (contas). Você é responsável pela criação da conta.
Ao menos um dos headers utilizados para autenticação deve o account.
c) Campos sensíveis
Defina campos sensíveis nas configurações do pipeline para mascarar essas informações em mensagens e logs.
d) Protocolo HTTPS
SEMPRE utilize o protocolo HTTPS nas chamadas aos serviços acessados via pipeline; chamadas HTTP aos pipelines são permitidas somente via VPN.
e) Object Store
Todo e qualquer dado é armazenado com o máximo de segurança na nossa Plataforma. Ainda assim, recomendamos que dados sensíveis armazenados no Object Store sejam criptografados. Para isso, utilize nossos conectores de criptografia.
Object Store é uma base de dados auxiliar para integração.
Os dados inseridos no fluxo de integração não devem crescer infinitamente. Dados antigos devem ser apagados e exceções devem ser avaliadas particularmente.
O campo indexado na collection é o "_oId", ao realizar buscas/atualizações/exclusões, utilize sempre este campo, mesmo que seja complementares com outros. Caso não seja possível, um novo index deverá ser criado para a collection.
f) Script
O Objetivo do Javascript é resolver problemas quando não existirem conectores ou funções existentes dentro da Digibee.
Caso seja necessário utilizá-lo, informe à nossa equipe para que possamos encontrar alternativas e trabalhar na melhoria da Plataforma.
TRATAMENTO DE ERROS
Após se conectar a qualquer serviço (API/Banco de dados/Storages), valide se o retorno foi conforme o esperado antes de seguir com o fluxo normal de integração. Em casos de erros, garanta que um evento será disparado e que o mesmo irá gerar algum tipo de alerta.
Defina regras de reprocessamento para erros gerados.
Defina regras de notificação para erros gerados (abertura de tickets em ferramentas de ITSM, envio de e-mails, gravação de logs, etc.).
Para mais detalhes sobre construção de fluxos de tratamento de erros, clique aqui para acessar o documento de Padrões de Integração.