【问题标题】:NodeJS SAML LibNodeJS SAML 库
【发布时间】:2012-06-28 22:05:31
【问题描述】:

是否有任何适用于 NodeJS 的 SAML 库?似乎有大量可用于节点的代码,但没有 SAML 库。如果没有,有什么理由不这样做吗?

【问题讨论】:

    标签: node.js saml


    【解决方案1】:

    Node.js 仍然是一项新技术,主要用于实时创新的初创公司或企业。因此 SAML 在其中并不流行,您会在该领域发现更多的 OAuth。 SAML 不是一个简单的实现规范(与 SWT 或 JWT 之类的东西相反)。最难的部分是数字签名,它需要 XML 规范化等。

    几个月前,我写了一篇关于在 node.js 中使用 Windows Azure ACS(使用 WS-Federation 协议和 SimpleWebTokens)的文章

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

    如果您有兴趣为 node.js 编写 SAML 库,请告诉我。我对此很感兴趣。

    马蒂亚斯

    【讨论】:

    • 此时链接已断开
    【解决方案2】:

    还有这个npm包,我还没有使用或实现过,但是看起来很有希望……

    https://www.npmjs.com/package/saml2-js

    【讨论】:

      【解决方案3】:

      我还没有真正尝试过,但它似乎是您正在寻找的: https://npmjs.org/package/passport-saml

      这也是一种新的(它是在发布最后一个答案之后出现的)。

      【讨论】:

      • 我认为它不能充当身份提供者,只能充当服务(身份验证)提供者。
      • @wizonesolutions 是的,这是意料之中的。
      • 不太确定该协议是什么,用于标记只能在很晚的日期才能实现的答案,但无论如何都要标记这个答案。
      • 应该注意的是,passport-saml 自 2015 年 12 月起不再维护,并且存在已知的安全漏洞以及许多无法解决的突出问题。我不知道有什么好的选择——在寻找一个时发现了这个。但解决方案肯定不再是护照-saml
      • 这是一个可能的解决方案:github.com/auth0/passport-wsfed-saml2。它是 passport-saml 的一个分支,仍在 auth0 Github 组织下继续工作。
      【解决方案4】:

      给你一个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.
      });
      

      【讨论】:

      • HI - 我看到了这个包,但是rawAssertion 参数来自哪里?它是http请求的一部分吗?
      • rawAssertion 来自身份验证后来自 IDP 服务器的 samlResponse,基本上 samlresponse 由 Assertion 组成,对于这个 saml20,api 你必须通过 Assertion
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-08-08
      • 1970-01-01
      • 1970-01-01
      • 2019-04-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多