Best Practices for Secure Applications

Voltar para o início

Na HP levamos a privacidade de nossos membros muito a sério. Quando concedemos aos desenvolvedores acesso a API, esperamos que eles levem a privacidade dos membros tão a sério quanto nós. Usando o protocolo de autenticação  OAuth 2.0 , permitimos que um aplicativo acesse dados do Analytics enquanto protege as credenciais do membro. O uso deste protocolo permite que os aplicativos em nossa plataforma sejam seguros e fáceis de usar para nossos membros; no entanto, há certas etapas de segurança que você, como desenvolvedor, terá que adotar para uma experiência segura. 

Leia o guia a seguir e certifique-se de que seu aplicativo siga tais boas práticas.

 

 

Redefinir o segredo do cliente associado ao seu ID de cliente

 

A HP recomenda que o valor do segredo de cliente associado ao seu ID do cliente seja redefinido a cada 90 dias. Registre as datas inicial e final para que você esteja ciente do período de existência do cliente. Se o valor de segredo de cliente for próximo a 90 dias de duração, redefina-o e atualize o seu aplicativo. Atualize seu valor de segredo do cliente nas seguintes situações:
● O segredo de cliente já tem quase 90 dias.
● A segurança do valor de segredo de cliente foi abalada.

 

Para atualizar os segredos de cliente:

  • Clique em Login para fazer login no Portal de desenvolvedores da HP usando seu nome de usuário/senha de Gestão proativa. Se você ainda não tem uma conta no Portal de desenvolvedores da HP, clique no link Registrar para criar uma conta.
  • Abra o menu suspenso sob seu endereço de e-mail e clique em Meus aplicativos.
  • Abra seu aplicativo.
  • Clique em Redefinir segredo.

 

 

Tokens de acesso

 

Os tokens de acesso permitem que um desenvolvedor acesse dados de análise através de nossa API. Para mantê-los seguros, não armazene-os em locais inseguros ou locais que sejam facilmente acessíveis.
Arquivos laterais do cliente, como arquivos JavaScript ou HTML, nunca devem ser usados para armazenar informações confidenciais, pois podem ser facilmente acessados. Você também não deve armazenar tokens de acesso em arquivos de código que podem ser descompilados como arquivos de código nativo de iOS, Android ou Windows. Ao fazer chamadas para a API HP Analytics, os tokens de acesso devem ser sempre passados sobre uma conexão segura (HTTPS).
Um desenvolvedor deve sempre solicitar os escopos mínimos necessários e apenas solicitar permissões necessárias para a funcionalidade do aplicativo.

 

 

Chave de API & chave de segredo

 

Ao fazer chamadas para as APIs Analytics, você usa duas informações identificáveis: a chave de API (às vezes chamada de ID do cliente) e a chave de segredo (ou segredo do cliente).
A chave de API é um identificador público do seu aplicativo e a chave de segredo é confidencial e só deve ser usada para autenticar seu aplicativo nas APIs Analytics.
Uma vez que tanto a chave de API quanto a chave de segredo são necessárias em conjunto para confirmar a identidade do seu aplicativo, é fundamental que você nunca exponha sua chave de segredo.  Lembre-se que ao trocar um código de autorização OAuth 2.0 por um token de acesso, a chave de segredo é aprovada como parte do pedido. Não exponha esse pedido publicamente.

 

 

Proteger endpoints

 

Para evitar que outros leiam suas solicitações e ataques de homem no meio, todas as solicitações aos nossos servidores de autenticação devem ser feitas por HTTPS. Também é recomendável que seu aplicativo seja hospedado em um servidor seguro, especialmente para quaisquer páginas onde um membro insira informações privadas (como sua senha para o seu site) e para quaisquer URLs onde você peça ao HP DaaS para redirecionar o membro como parte do fluxo de autorização oAuth.
O uso do HTTPS é necessário para solicitações oAuth 2.0.

 

 

Prevenção de phishing

 

Os criminosos cibernéticos geralmente criam sites que parecem autênticos, mas são réplicas com a intenção de roubar credenciais dos usuários. Oriente seus usuários para procurar esses sinais para garantir que eles estão entrando em credenciais para um aplicativo HP DaaS de verdade. Observe que os navegadores podem ter visuais diferentes e, às vezes, isso pode não ser suficiente para diferenciar dos sites de phishing. Na dúvida, alerte os usuários a não inserir credenciais e entrar em contato quando suspeitarem de atividade suspeita.
 
 

Falsificação de solicitação entre sites

 

Para proteger contra CSRF durante a autorização, você precisa passar por um parâmetro de consulta de estado. Este deve ser um valor de string único (para cada solicitação) que é difícil de adivinhar e não deve conter nenhuma informação privada ou sensível.
Valor de estado de amostra

state=760iz0bjh9gy71asfFqa

 

Após uma autorização bem sucedida, o URL de redirecionamento deve se parecer com esse:
URL de callback de amostra

https://OAUTH2_REDIRECT_URI/?code=AUTH_CODE&state=760iz0bjh9gy71asfFqa

 

Certifique-se de que o parâmetro de estado nesta resposta corresponda ao que você passou em seu pedido de autorização. Se o estado não corresponder, isso significa que a solicitação pode ser resultado de CSRF e deve ser rejeitada.

 

 

Bibliotecas Third-Party

 

Ao usar uma biblioteca de terceiros para interagir com o HP DaaS, faça uma avaliação para garantir que a biblioteca seja de uma fonte confiável. Leia suas análises, confira o código e faça algumas pesquisas de histórico para ter certeza de que não é malicioso ou tem algum comportamento inesperado. O HP DaaS não oferece suporte oficial nenhuma biblioteca de terceiros, portanto, se você tiver dúvidas técnicas ou considerações, entre em contato diretamente com a equipe de desenvolvimento da biblioteca.

 

 

Gerenciamento de erros

 

Devido à natureza das APIs na nuvem, os serviços podem estar temporariamente indisponíveis devido a razões fora do seu controle ou da HP DaaS. Você deve presumir que qualquer chamada que você fizer para o HP DaaS ou qualquer API de terceiros pode não funcionar e sempre incluir lógica de processamento de erros em suas solicitações. Isso pode incluir qualquer solicitação como:
 
GET https://daas.api.hp.com/oauth/v1/authorize

 

POST https://daas.api.hp.com/oauth/v1/token