FAQ para App ID

Estas preguntas más frecuentes proporcionan respuestas a preguntas comunes sobre el servicio IBM Cloud® App ID.

¿Por qué tengo que incluir mi URI de redirección en una lista de elementos permitidos?

Un URI de redirección es el punto final de devolución de llamada de la aplicación. Cuando incluye su URI en una lista de elementos permitidos, está dando a App ID el OK para enviar a sus usuarios a esa ubicación. En tiempo de ejecución, App ID valida el URI con respecto a la lista de elementos permitidos antes de redirigir al usuario. Este proceso puede ayudar a prevenir ataques de phishing y reduce la posibilidad de que un atacante pueda obtener acceso a las señales de su usuario. Para obtener más información acerca de los URI de redirección, consulte Adición de URI de redirección.

No incluya ningún parámetro de consulta en el URL. Se omitirán en el proceso de validación. URL de ejemplo: http://host:[port]/path

¿Cómo funciona el cifrado en App ID?

Consulte la tabla siguiente para obtener respuestas a las preguntas más frecuentes sobre el cifrado.

Preguntas frecuentes sobre cómo App ID gestiona el cifrado
Pregunta Respuesta
¿Por qué se utiliza el cifrado? Una forma de proteger la información de nuestros usuarios es cifrar los datos del cliente en reposo y en tránsito. El servicio cifra los datos del cliente en reposo con claves por arrendatario e impone TLS 1.2+ en todos los segmentos de red.
¿Qué algoritmos se utilizan en App ID? El servicio utiliza AES y SHA-256 con salting.
¿Se utilizan módulos o proveedores de cifrado de código abierto o público? ¿Se exponen las funciones de cifrado en algún momento? El servicio utiliza bibliotecas Java avax.crypto, pero nunca expone una función de cifrado.
¿Cómo se almacenan las claves? Las claves se generan y cifran con una clave maestra que es específica de cada región y que después se almacena localmente. Las claves maestras se almacenan en Key Protect. Cada región tiene su propia clave de confianza que se almacena en Key Protect, del que HSM hace copia de seguridad. Cada instancia de servicio (arrendatario) tiene sus propias claves de cifrado de datos y de firma de señales, que se cifran con la clave de confianza de la región.
¿Qué fortaleza de clave se utiliza? El servicio utiliza 16 bytes.
¿Invoca las API remotas que exponen prestaciones de cifrado? No, no se hace.

¿Qué sincronización de reloj utiliza App ID?

App ID se ejecuta en IBM Cloud, que utiliza un servidor NTP interno: servertime.service.softlayer.com.

La sincronización de la aplicación con el origen de hora de App ID depende del entorno que esté utilizando para ejecutar la aplicación.

  • Si la aplicación se ejecuta en IBM Cloud Classic Infrastructure, establezca los servidores NTP en servertime.service.softlayer.com.
  • Si la aplicación se ejecuta en IBM Cloud VPC Infrastructure, establezca los servidores NTP en time.adn.networklayer.com.
  • Si la aplicación no se está ejecutando en IBM Cloud, no tiene acceso a estos servidores de hora. En este caso, establezca los servidores NTP en time-a.nist.gov o time-b.nist.gov.

¿Qué diferencia hay entre App ID y Keycloak?

Tanto App ID como Keycloak se pueden utilizar para añadir autenticación a las aplicaciones y a los servicios seguros. La principal diferencia entre las dos ofertas es la forma en que están empaquetadas.

Keycloak se empaqueta como software, lo que significa que usted, como desarrollador, es el responsable de mantener la funcionalidad del producto después de descargarlo. Usted es responsable del alojamiento, la alta disponibilidad, la conformidad, las copias de seguridad, la protección de DDoS, el equilibrio de carga, los cortafuegos web, las bases de datos y demás.

App ID es una oferta totalmente gestionada que se ofrece "como servicio". Esto significa que IBM se encarga de la operación del servicio, maneja la conformidad, disponibilidad en varias zonas, SLA y más. App ID también tiene una experiencia integrada con IBM Cloud Platform que incluye tiempos de ejecución y servicios nativos como Kubernetes Service, Cloud Functions y Activity Tracker.

¿Puedo utilizar el mismo ID de cliente en más de una aplicación?

Aunque técnicamente _can_ utiliza las mismas credenciales en más de una aplicación, es muy recomendable que no lo haga por varias razones. Ante todo, porque cuando comparte su ID a través de aplicaciones, cualquier tipo de ataque o compromiso entonces afecta a todo su entorno en lugar de a una sola aplicación. Por ejemplo, si utiliza su ID en tres aplicaciones y una de ellas se ve comprometida, las tres se ven comprometidas. Un atacante es capaz de hacerse pasar por cualquiera de sus aplicaciones. La segunda razón es que cuando usa el mismo ID de cliente en múltiples aplicaciones, no hay manera de diferenciar entre aplicaciones. Por ejemplo, no puede saber qué app se ha utilizado para generar una señal.

Cómo puedo actualizar mi aplicación para utilizar una nueva instancia de servicio sin perder ningún dato

Puede migrar la información de una instancia de App ID a otra.

  1. Cree una instancia del servicio.
  2. Duplicar la configuración del proveedor de identidad utilizando la GUI.
  3. Migre sus perfiles de usuario. Los usuarios conocidos se exportan como un objeto JSON. Los usuarios anónimos no se pueden migrar. Puede elegir importar el objeto completo en la nueva instancia o dividirlo y dividir los usuarios como le parezca más adecuado si tiene más de una instancia. Para Cloud Directory, consulte Migración de usuarios. Para proveedores de identidad federados, siga los pasos siguientes.
  4. Cree credenciales de aplicación para invocar a la nueva instancia de servicio.
    1. En el panel de control de servicio, vaya a la pestaña Aplicaciones.
    2. Pulse Añadir aplicación y asigne un nombre a la aplicación. A continuación, pulse Guardar.
    3. Pulse Ver credenciales en la tabla y copie la salida.
    4. Pegue las nuevas credenciales en la aplicación.
  5. Actualice la aplicación para que utilice las nuevas credenciales, incluyendo los URL, si los hay.
  6. Según cuál sea su configuración, es posible que tenga que volver a desplegar o desenlazar y volver a enlazar la aplicación.

¿Puede App ID ayudar a configurar el cierre de sesión?

En función de cómo configure la aplicación, App ID puede ayudar a facilitar una funcionalidad de cierre de sesión para los usuarios. Consulte la tabla siguiente para ver dónde está disponible la funcionalidad de cierre de sesión.

Opciones de cierre de sesión
Descripción
SDK de App ID Los SDK de App ID tienen una funcionalidad de cierre de sesión incorporada.
SSO Cloud Directory[1] App ID proporciona una funcionalidad de cierre de sesión incorporada para la característica de SSO de Cloud Directory.
Ingress Ingress proporciona una funcionalidad de cierre de sesión incorporada.
Istio El adaptador de Istio se ha configurado para proporcionar funcionalidad de cierre de sesión a través de OIDC.

Configuración del cierre de sesión

Para configurar el cierre de sesión, debe configurar la aplicación para que envíe una solicitud al proveedor de identidades. A continuación, para redirigir el usuario a un área de la aplicación que no requiere autenticación. En la mayoría de los casos de uso, la sesión del servidor de aplicaciones puede establecerse mediante App ID SDK, Ingress o Istio que trabaja en asociación con un proveedor de identidades federado como, por ejemplo, SAML o Cloud Directory para habilitar la autenticación y la autorización.

En el siguiente ejemplo de HTML, se utiliza un SDK de App ID para configurar el cierre de sesión. Pero, si está trabajando con otra opción, puede utilizar este fragmento de código como guía y actualizarlo para ajustarlo a sus necesidades.

<script>
  var ticker = setInterval(tick, 1000);
  var counter = 5;
  function tick() {
    var timerDiv = document.getElementById("timer");
    if (counter > 0) {
      timerDiv.innerText = "Logged out. Redirecting back in " + (counter--) + " seconds.";
    } else {
      document.location = "./appid_logout";
    }
  } </script>
<iframe height="0" width="0" src="https://login.microsoftonline.com/common/wsfederation?wa=wsignout1.0"></iframe>

  1. Todas las URL de redireccionamiento que se utilicen con la función SSO del Directorio en la nube deben añadirse a la lista de permisos de cierre de sesión URL en la interfaz de usuario de App ID. ↩︎