【发布时间】:2019-03-03 12:42:29
【问题描述】:
我正在向我的 IDP 发送一个 saml 请求,并在此过程中收到以下错误消息:
请求 GET /ssoauth 的未处理错误:错误:缺少元素 samlp:AuthnRequest 的属性目的地的属性值
其中 /ssoauth 是我的服务器上客户端用来发起请求的路径。
这是我的 passport.js 文件:
var 护照 = 要求('护照'); var config = require('./samlConfig'); var SamlStrategy = require('passport-saml').Strategy; var samlOptions = { 入口点:config.entryPoint, 发行者:config.callbackUrl, callbackUrl: config.callbackUrl, 证书:config.cert, 标识符格式:空 }; passport.serializeUser(功能(用户,完成){ 完成(空,user.id); }); passport.deserializeUser(功能(ID,完成){ 完成(错误,用户); }); 护照.使用(新的SamlStrategy( saml选项, 功能(配置文件,完成){ findByEmail(profile.email, function(err, user) { 如果(错误){ 返回完成(错误); } 返回完成(空,用户); }); } )); module.exports = 护照;Samlconfig.js:
var entryPoint = 'https://sso.jumpcloud.com/saml2/myapp'; var issuer = 'passport-saml'; var callbackUrl = 'https://localhost:5000/login/callback'; var identifierFormat = 'identifierFormat: null'; var 证书 = '......';【问题讨论】:
-
我的服务器和客户端都使用本地主机,但只是在不同的端口上,而不是我的服务器有自己的域,这可能是一个问题吗?
标签: node.js single-sign-on passport.js saml