Best Practices for Secure Applications

Volver al principio

En HP nos tomamos muy en serio la privacidad de nuestros miembros. Cuando concedemos acceso de API a desarrolladores, esperamos que se tomen la privacidad del miembro con la misma seriedad que nosotros. Al usar el protocolo de autenticación OAuth 2.0 , permitimos que una aplicación acceda a datos de análisis mientras se protegen las credenciales del miembro. Usar este protocolo permite que las aplicaciones en nuestra plataforma sean seguras y fáciles de usar para nuestros miembros; sin embargo, hay algunos pasos de seguridad que como desarrollador deberá dar para tener una experiencia segura. 

Lea la siguiente guía y asegúrese de que sus aplicaciones siguen estas mejores prácticas.

 

 

Restablecer el secreto de cliente asociado con su ID de cliente

 

HP recomienda que el valor de secreto de cliente asociado con su ID de cliente se restablezca cada 90 días. Registre las fechas de inicio y finalización, de forma que esté consciente del periodo de existencia del secreto de cliente. Si el valor del secreto de cliente está cercano a los 90 días de existencia, restablézcalo y actualice su aplicación. Actualice su valor de secreto de cliente en las siguientes situaciones:
● La antiguedad de su secreto de cliente se acerca a los 90 días.
● La seguridad del valor de su secreto de cliente está comprometida.

 

Para actualizar los secretos de cliente:

  • Haga clic en Iniciar sesión para iniciar sesión en el portal de HP Developers usando su nombre de usuario y contraseña de Proactive Management. Si aún no tiene una cuenta en el portal de HP Developers, haga clic en el enlace Registrarse para crear una.
  • Expanda el menú desplegable que hay debajo de su dirección de correo electrónico y haga clic en Mis aplicaciones.
  • Abra su aplicación.
  • Haga clic en Restablecer secreto.

 

 

Tokens de acceso

 

Los tokens de acceso le permiten a un desarrollador acceder a datos de análisis a través de nuestra API. Para mantenerlos seguros, no los almacene en ubicaciones inseguras o en ubicaciones a las que se puedan acceder con facilidad.
Los archivos del lado del cliente, tales como archivos JavaScript o HTML, nunca deben usarse para almacenar información confidencial, ya que se puede acceder a ellos con facilidad. Tampoco debe almacenar tokens de acceso en archivos de código que puedan ser descompilados, como archivos de código de aplicaciones nativas de iOS, Android o Windows. Al hacer llamadas para la API de HP Analytics, los tokens de acceso siempre deben pasar por una conexión segura (HTTPS).
El desarrollador siempre debe solicitar los ámbitos mínimos necesarios y únicamente solicitar permisos que sean necesarios para la funcionalidad de la aplicación.

 

 

Clave de API & Clave secreta

 

Al hacer llamadas a las API de análisis, usted usa dos piezas de información identificable: la clave de API (en ocasiones llamada ID de cliente) y la clave secreta (o secreto de cliente).
La clave de API es un identificador público de su aplicación y la clave secreta es confidencial y únicamente debe usarse para autenticar su aplicación en las API de análisis.
Ya que tanto la clave de API como la clave secreta son necesarias juntas para confirmar la identidad de su aplicación, es crítico que nunca exponga su clave secreta.  Recuerde que al intercambiar un código de autorización de OAuth 2.0 para un token de acceso, la clave secreta es pasada como parte de la solicitud. No exponga esta solicitud públicamente.

 

 

Puntos finales seguros

 

Para evitar que otros lean sus solicitudes y los ataques de intermediario, todas las solicitudes para nuestros servidores de autenticación deben hacerse a través de HTTPS. También es muy recomendable que su aplicación esté alojada en un servidor seguro, particularmente para cualquier página en la cual un miembro introduzca información privada (como su contraseña para su sitio) y para cualquier URL en la que solicite que HP DaaS redirija al miembro como parte del flujo de autorización de OAuth.
El uso de HTTPS es necesario para las solicitudes de OAuth 2.0.

 

 

Prevención del phishing

 

Los criminales cibernéticos con frecuencia crean sitios web que parecen y se sienten auténticos, pero que en realidad son réplicas falsas con la intención de robar credenciales de usuario. Eduque a sus usuarios para que identifiquen estos signos para que estén seguros de introducir sus credenciales en una aplicación real de HP DaaS. Tenga en cuenta que los navegadores pueden tener una apariencia diferente y en ocasiones esto no puede ser suficiente para diferenciarlos de los sitios de phishing. Si tiene dudas, alerte a los usuarios para que no introduzcan sus credenciales y se pongan en contacto con usted si identifican alguna actividad sospechosa.
 
 

Falsificación de solicitudes en varios sitios

 

Para protegerse de CSRF durante la autorización, necesita pasar un parámetro de consulta de estado. Este debe ser un valor de cadena único (para cada solicitud) que sea difícil de adivinar y no debe contener ninguna información privada o confidencial.
Valor de estado de muestra

state=760iz0bjh9gy71asfFqa

 

Tras la autorización exitosa, el URL redirigido debe verse de la siguiente forma:
URL de devolución de llamada de muestra

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

 

Asegúrese de que el parámetro de estado en esta respuesta coincida con el que pasó en su solicitud de autorización. Si el estado no coincide, significa que la solicitud puede ser un resultado de CSRF y debe rechazarse.

 

 

Bibliotecas de terceros

 

Al usar una biblioteca de terceros para interactuar con HP DaaS, use su buen juicio para asegurarse de que la biblioteca provenga de una fuente fiable. Lea sus revisiones, eche un vistazo al código y haga un poco de investigación de antecedentes para asegurarse de que no es maliciosa y que no tiene comportamientos inesperados. HP DaaS no admite oficialmente ninguna biblioteca de terceros, así que si tiene alguna pregunta técnica o inquietud, debe contactar al equipo de desarrollo de la biblioteca directamente.

 

 

Gestión de errores

 

Debido a la naturaleza de las API de nube, los servicios pueden dejar de estar disponibles temporalmente por razones más allá del control de HP DaaS. Debe asumir que cualquier llamada que haga a HP DaaS o a cualquier API de terceros puede no funcionar y siempre debe incluir la lógica de gestión de errores en sus solicitudes. Esto puede incluir cualquier solicitud, como por ejemplo:
 
GET https://daas.api.hp.com/oauth/v1/authorize

 

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