我想构建示例应用程序,该应用程序将使用我尝试使用的 SAML 进行保护passport-saml
。
我在网上找到了很多示例程序。但忍不住完成了我的示例程序。
是否有一个示例可以提供分步说明,我可以直接跟进。
我使用 SSOCircle 作为 IDP,它将我重定向到 SSOCircle 的 SSO 登录页面,但登录后它显示错误消息
发生错误原因:无法进行单点登录或联合。
以下是我在节点中的代码。
passport.use(new SamlStrategy(
{
path: '/login/callback',
entryPoint: 'https://idp.ssocircle.com:443/sso/SSORedirect/metaAlias/publicidp',
issuer: 'comuteAWS',
cert: ''
},
function (profile, done) {
return done(null,
{
id: profile.uid,
email: profile.email,
displayName: profile.cn,
firstName: profile.givenName,
lastName: profile.sn
});
})
);
我的 SP 元数据如下
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><EntityDescriptor entityID="comuteAWS" xmlns="urn:oasis:names:tc:SAML:2.0:metadata"><SPSSODescriptor AuthnRequestsSigned="false" WantAssertionsSigned="true" protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol"><NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified</NameIDFormat><AssertionConsumerService index="0" isDefault="true" Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="http://192.168.254.38:3000/vehicles"/></SPSSODescriptor></EntityDescriptor>