Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

143
Views
¿Cómo mantener idToken en el lado del servidor?

Ayer descubrí cómo dar a un usuario reclamos personalizados. Entonces, ahora, al iniciar sesión, busco la publicación '/ getMyClaims' y obtiene qué tipo de reclamos tienen.

Y cuando inicio sesión como administrador, puedo ir a las rutas que son solo de administrador, pero a veces al azar, el bloqueo vuelve a ser falso, por lo que no permite incluso al administrador. ¿Cómo mantengo el idToken reconocido cada vez? Me ha costado mucho tratar de averiguar cómo hacer que esto funcione, incluso cuando los documentos proporcionados y la mayoría de los recursos son para reaccionar o vue. Estoy usando nodejs y javascript y html simples.

Pensé en almacenar el bloque, pero supongo que es refrescante y luego el bloque variable vuelve a estar indefinido.

Aquí está mi server.js:

 var block; var blockware = (req,res,next) => { if(block == true || block == undefined){ return res.sendStatus(401); } next(); } app.post('/getMyClaims', async(req,res) => { let {uid,idToken} = req.body; console.log(idToken.token) if(idToken.claims.type === 'customer'){ block = true; console.log('deny') } else if(idToken.claims.type === 'admin'){ block = false; } else { block = true; } }) // admin only pages app.get(['/seller','/add-product', '/add-product/:id'], blockware, (req,res) => { res.sendFile(path.join(staticPath, '')) })
about 4 years ago · Santiago Gelvez
1 answers
Answer question

0

Por lo general, nunca desea almacenar idTokens o el lado del servidor de jwt. El propósito es que el cliente los envíe junto con cada solicitud como se menciona en uno de los comentarios.

Hay otro problema con su código, es que confía ciegamente en el token que ingresa. Dondequiera que se cree ese token (su código no muestra dónde está), debe validar que el token no haya expirado y no haya no ha sido manipulado comunicándose con el servicio o verificándose con su secreto del lado del servidor. Una vez que pasa, solo entonces puede confiar en el contenido del token y determinar si el usuario es un cliente/administrador/otra persona.

Consulte aquí para obtener más información: https://medium.com/@mmoshikoo/simple-jwt-authentication-explanation-81e930a1a01f

about 4 years ago · Santiago Gelvez Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!