проблемы с паспортом-saml с auth0 - PullRequest
0 голосов
/ 28 февраля 2019

Я пытаюсь реализовать процесс аутентификации SAML в нашем приложении.

Пожалуйста, исправьте меня, если я ошибаюсь.у поставщика услуг нет приложения, мы будем использовать IDP, который в нашем случае Auth0.

код - это код nodejs, который выглядит следующим образом

const SamlStrategy = require('passport-saml').Strategy;
const passport = require('passport')
const express = require('express')
const bodyParser = require('body-parser')
const fs = require('fs')

passport.use(new SamlStrategy(
    {
        path: '/login/callback',
        entryPoint: 'Identity Provider Login URL:',
        issuer: 'passport-saml',
        cert: fs.readFileSync("./cert.pem", "utf8"),
    },
    function (profile, done) {
        console.log(profile)
        return done();
    })
);


const app = express()
const port = 3000;
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended: false}));
app.use(passport.initialize())


app.post('/login/callback',
    passport.authenticate('saml', {failureFlash: true}), (req, res) => {
        console.log("test2")

    }
);

app.post('/login/callback', (req, res) => {

    console.log("test1")
    console.log(req.body)
})

app.get('/test', (req, res) => {

    res.status(200).send(here)
})

app.get('/login',
    passport.authenticate('saml', {successRedirect: '/test', failureFlash: true})
    , (req, res) => {
        console.log("logged in")
    }
);


app.get('/', (req, res) => {
    console.log(req.account)
    res.status(200).send("hello")
})

app.listen(port, () => {
    console.log(`Server is listening on port ${port}`)
})

что происходит здесьзаключается в следующем: 1. я перенаправлен на страницу входа в Auth0 2. вход в систему с моим пользователем 3. перенаправления на URL обратного вызова, НО я не авторизован, я понятия не имею, почему я не перенаправлен на successRedirect

Пожалуйста, помогите мне, ребята, трудно найти информацию об онлайн.

Спасибо

...