Validador de Node.js

improve this page | report issue

Visión general

IBM Mobile Foundation proporciona una infraestructura Node.js para imponer funciones de seguridad en recursos externos.
La infraestructura Node.js se proporciona como un módulo npm (passport-mfp-token-validation).

Este tutorial muestra cómo proteger un recurso de Node.js simple, GetBalance, utilizando un ámbito (accessRestricted).

Requisitos previos:

El módulo passport-mfp-token-validation

El módulo passport-mfp-token-validation proporciona un mecanismo de autenticación para verificar las señales de acceso emitidas por MobileFirst Server.

Para instalar el módulo, ejecute:

npm install passport-mfp-token-validation@8.0.X

Utilización

  • El ejemplo utiliza los módulos express y passport-mfp-token-validation:

    var express = require('express');
    var passport = require('passport-mfp-token-validation').Passport;
    var mfpStrategy = require('passport-mfp-token-validation').Strategy;
    
  • Configure Strategy de la siguiente manera:

    passport.use(new mfpStrategy({
      authServerUrl: 'http://localhost:9080/mfp/api',
      confClientID: 'testclient',
      confClientPass: 'testclient',
      analytics: {
          onpremise: {
              url: 'http://localhost:9080/analytics-service/rest/v3',
              username: 'admin',
              password: 'admin'
          }
      }
    }));
    
  • authServerUrl: Sustituya localhost:9080 con la dirección IP y el número de puerto de MobileFirst Server.
  • confClientID, confClientPass: Sustituya el ID de cliente y la contraseña confidenciales por los que ha definido en MobileFirst Operations Console.
  • analytics: El elemento de análisis es opcional, y solo es necesario si desea registrarse en sucesos analíticos en Mobile Foundation.
    Reemplace localhost:9080, username, and password con la dirección IP del servidor de análisis, el número de puerto, el nombre de usuario y la contraseña.

  • Autentique las solicitudes llamando a passport.authenticate:

    var app = express();
    app.use(passport.initialize());
    
    app.get('/getBalance', passport.authenticate('mobilefirst-strategy', {
        session: false,
        scope: 'accessRestricted'
    }),
    function(req, res) {
        res.send('17364.9');
    });
    
    var server = app.listen(3000, function() {
        var port = server.address().port
        console.log("Sample app listening at http://localhost:%s", port)
    });
    
  • En Strategy debería usar mobilefirst-strategy.
  • Establezca session en false.
  • Especifique el nombre scope.

Aplicación de ejemplo

Descargue el ejemplo Node.js.

Uso de ejemplo

  1. Navegue a la carpeta raíz del ejemplo y ejecute el mandato: npm install seguido de: npm start.
  2. Asegúrese de actualizar el cliente confidencial y los valores secretos en MobileFirst Operations Console.
  3. Despliegue alguna de las comprobaciones de seguridad: UserLogin o PinCodeAttempts.
  4. Registre la aplicación coincidente.
  5. Correlacione el ámbito accessRestricted en la comprobación de seguridad.
  6. Actualice la aplicación de cliente para crear WLResourceRequest en su URL de servlet.
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