• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Evaluaciones
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

119
Vistas
¿Cuál es el equivalente de asegurarLoggedIn cuando se usa la estrategia de contraseña JWT?

Tengo un proyecto en el que quiero poder usar OpenIDConnect para la administración de sesiones y también poder llamar a servicios usando un encabezado de Autorización. Mi código actual se ve así...

 import expressSession from "express-session"; import oidc from "passport-auth0-openidconnect"; import {ensureLoggedIn} from "connect-ensure-login"; getOpenIdMiddleware(){ const verify = (issuer, audience, profile, cb)=> cb(null, profile._json); const oidcAuth0Config = { domain: process.env.AUTH0_DOMAIN, clientID: process.env.CLIENT_ID, clientSecret: process.env.SECRET, callbackURL: process.env.AUTH0_CALLBACK_URL, }; console.log(oidcAuth0Config); passport.use(new oidc.Strategy( oidcAuth0Config, verify, )); this.type = "auth0-oidc"; } this.app.get("/user", ensureLoggedIn(), function(req, res) { console.log(`User is ${JSON.stringify(req.user)}`); res.json(req.user || {}); });

Esto funciona muy bien, pero ahora me gustaría algo que funcione para ambos. Intenté usar simplemente passport.authenticate . Autenticar como...

 this.app.get("/user", passport.authenticate(this.type, { scope: "openid email profile", }), function(req, res) { console.log(`User is ${JSON.stringify(req.user)}`); res.json(req.user || {}); });

Pero eso provoca un bucle indefinido entre /user y /login.

También probé...

 const checkAuthentication = (req, res, next)=>{ if(req.isAuthenticated || req.isAuthenticated()){ next(); } else { res.redirect("/login"); } } this.app.get("/user", checkAuthentication, function(req, res) { console.log(`User is ${JSON.stringify(req.user)}`); res.json(req.user || {}); });

pero cuando hago esto req.user no está definido.

¿Cuál sería un equivalente que funcionaría tanto para la passport-auth0-openidconnect como para la passport-jwt ?

over 3 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda