Utilización de MobileFirst Server para autenticar recursos externos

improve this page | report issue

Visión general

Los recursos protegidos pueden ejecutarse en MobileFirst Server (por ejemplo Adaptadores), o en servidores externos. Puede proteger recursos en servidores externos utilizando los módulos de validación proporcionados con Mobile Foundation.

En este tutorial, aprenderá a proteger un servidor de recursos externo implementando un filtro que valida una MobileFirst señal de acceso.
Puede implementar la protección con un código personalizado, o utilizando una de las bibliotecas de ayuda de Mobile Foundation que encapsula parte del flujo.

Requisito previos:

  • Comprensión de la infraestructura de seguridad de MobileFirst.

Flujo

Protección de diagramas de recursos externos

MobileFirst Server tiene un componente denominado punto final de introspección ** que tiene la capacidad de validar y extraer datos de la señal de acceso de MobileFirst **. Este punto final de introspección está disponible mediante una API REST.

  1. Una aplicación con el SDK de cliente de Mobile Foundation realiza una llamada de solicitud de recurso (o cualquier solicitud HTTP) a un recurso protegido con o sin cabecera de Autorización (señal de acceso de cliente).
  2. Para comunicarse con el punto final de introspección, el filtro del servidor de recurso debe obtener una señal separada (consulte la sección cliente confidencial).
  3. El filtro del servidor de recurso extrae la señal de acceso de cliente del paso 1 y la envía al punto final de introspección para validarla.
  4. Si el servidor de autorización de MobileFirst determina que la señal es inválida (o no existe), el servidor de recurso redirige el cliente para obtener una señal nueva para los ámbitos necesarios. Esta parte ocurre de manera interna cuando se utiliza el SDK de cliente de MobileFirst.

Cliente confidencial

Como el punto final de introspección es un recurso interno protegido por el ámbito authorization.introspect, el recurso necesita obtener una señal separada para poder enviarle datos. Si intenta realizar una solicitud al punto final de introspección sin una cabecera de autorización, se devuelve una respuesta 401.

Para que el servidor de recurso externo pueda solicitar una señal para el ámbito authorization.introspect, el servidor necesita registrarse como cliente confidencial mediante MobileFirst Operations Console.

Obtenga más información en la guía de aprendizaje Clientes confidenciales.

En MobileFirst Operations Console, en Configuración → Clientes confidenciales, añada una entrada nueva. Seleccione un secreto de cliente ** y el valor **secreto de API. Asegúrese de establecer authorization.introspect como el ámbito permitido.

Configuración de un cliente confidencial

Implementaciones

Este flujo puede implementarse de forma manual realizando solicitudes HTTP directamente a las diferentes API REST (consulte la documentación).
Mobile Foundation también proporciona bibliotecas para ayudar a lograrlo en los servidores WebSphere utilizando el interceptor de asociación de confianza proporcionado, o cualquier filtro basado en Java mediante el validador de señal Java proporcionado:

Inclusive terminology note: The Mobile First Platform team is making changes to support the IBM® initiative to replace racially biased and other discriminatory language in our code and content with more inclusive language. While IBM values the use of inclusive language, terms that are outside of IBM's direct influence are sometimes required for the sake of maintaining user understanding. As other industry leaders join IBM in embracing the use of inclusive language, IBM will continue to update the documentation to reflect those changes.
Last modified on February 27, 2020