2012-06-28 9 views
10

¿Hay alguna biblioteca SAML para NodeJS? Parece que hay un montón de código disponible para el nodo pero no para las bibliotecas SAML. Si no, ¿hay alguna razón por la que no?NodeJS SAML Lib

Respuesta

1

realmente no probado aún, pero parece que es lo que busca: https://npmjs.org/package/passport-saml

es también especie de nuevo (que salió después de la última respuesta fue publicada)

+1

Creo que no puede actuar como un proveedor de identidad, solo un proveedor de servicio (autenticación). – wizonesolutions

+0

@wizonesolutions, sí, eso se espera. – cstamas

+0

No estoy seguro de qué es el protocolo para marcar una respuesta que solo es posible en una fecha posterior, pero marcando esta respuesta en cualquier caso. – oliakaoil

8

Node.js sigue siendo una tecnología nueva y se está utilizando principalmente en startups o empresas que están innovando en tiempo real. Por lo tanto SAML no es popular entre ellos, encontrará más OAuth en ese espacio. SAML no es una simple especificación para implementar (a diferencia de algo como SWT o JWT). La pieza más importante es la Firma digital, que requiere canonización XML, entre otras cosas.

par de meses escribí un artículo sobre el uso de Windows Azure ACS (que utiliza el protocolo WS-Federation y SimpleWebTokens) con Node.js

http://nodeblog.cloudapp.net/using-windows-azure-access-control-service-acs-from-a-node-app

Si usted está interesado en escribir una biblioteca de SAML node.js házmelo saber. Estoy interesado en eso.

Matias

+0

El enlace está roto en este momento – Houseman

2

Aquí tienes una http://github.com/leandrob/saml20

var saml = require('saml20'); 

var options = { 
    publicKey: 'MIICDzCCAXygAwIBAgIQVWXAvbbQyI5Bc...', 
    audince: 'http://myservice.com/' 
} 

saml.validate(rawAssertion, options, function(err, profile) { 
    // err 

    var claims = profile.claims; // Array of user attributes; 
    var issuer = profile.issuer: // String Issuer name. 
}); 
+0

HI - Vi este paquete, pero ¿de dónde viene el parámetro 'rawAssertion'? ¿Es parte de la solicitud http? –

+0

rawAssertion viene de samlResponse procedente de un servidor IDP después de la autenticación, básicamente samlresponse consiste en Assertion, para este saml20, api uye pasar Assertion –