Skip to main content

Node and Auth0 - Integration

 so now we have completed all the steps for integration 

since we have the node and auth0 as two separate things

the integration happens in the app.js 

we need to modify the app.js with some auth0 code 

app.js /

const http = require('http');
const express = require('express');

var router = require('express').Router();
const { auth } = require('express-openid-connect');
const app = express();
app.use('/', router);


const hostname = '127.0.0.1';
const port = 3000;

http.createServer(app)
  .listen(port, () => {
    console.log(`Listening on `);
  });



const config = {
  authRequired: false,
  auth0Logout: true,
  secret: 'a long, randomly-generated string stored in env',
  baseURL: 'http://localhost:3000',
  clientID: 'QxpAXsXkzy0Vm2VdT6dFFS0VOKdrah67',
  issuerBaseURL: 'https://dev-bnga041p.us.auth0.com'
};
console.log(config)

// auth router attaches /login, /logout, and /callback routes to the baseURL
app.use(auth(config));

// req.isAuthenticated is provided from the auth router
app.get('/', (req, res) => {
console.log('entering au')
  res.send(req.oidc.isAuthenticated() ? 'Logged in your App' : 'Logged out from App');
});

//add this to validate routes for authentication it used the same express-openid-connect as ///above for auth
const { requiresAuth } = require('express-openid-connect');

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

  res.send(JSON.stringify(req.oidc.user));
});



two things to add

var router = require('express').Router();
const { auth } = require('express-openid-connect');
 

the express openid is used for authentication 

so we need to install ' express-openid-connect ' in node to add the dependency


alright now once the code is added restart node app 

now u can see the app behaviour as


when u use the URL - 

http://localhost:3000/login

 a new login page for authentication will be popped up 



enter ur username and password if u don't have one

u can signup using the same screen

the authentication will be done through auth0 and u will land onto page


Logged in your App  is from the code once it is authenticated which u can see from the code 

to verify some user details 

use the URL - http://localhost:3000/profile


 

 to logout from use http://localhost:3000/logout


 
so now if you again try to login u will land in the auth page for credentials

a quick look on the code

const config = {
  authRequired: false,
  auth0Logout: true,
  secret: 'a long, randomly-generated string stored in env',
  baseURL: 'http://localhost:3000',
  clientID: 'QxpAXsXkzy0Vm2VdT6dFFS0VOKdrah67',
  issuerBaseURL: 'https://dev-bnga041p.us.auth0.com'
};

 

u can see the clientid is the one from our auth signup  

alright then u can get the code frm the git too 

see u for now .

git -

https://github.com/naveez-alagarsamy/nodeAuth0.git

Comments

Popular posts from this blog

SHA-256 initial values

The simple workout to arrive at the initial values for sha-256 The first 32 bit of the fractional part of the sqroot (first 8 prime number 2-19) Alright what does it say  Sqrroot(prime)- Let’s say the first prime is 2 Sqroot(2)  = 1.414213562373095 Convert to hexadecimal- Since we are worried about the fractional part alone Converting the fractional part would be easy Fractional part- 0.414213562373095 Multiply the fractional part with 16 to arrive at hex 0.414213562373095*16= 6.62741699796952 0.62741699796952*16= 10.03867196751232 0.03867196751232*16=0.61875148019712 0.61875148019712*16=9.90002368315392 0.90002368315392*16=14.40037893046272 0.40037893046272*16=6.40606288740352 0.40606288740352*16=6.49700619845632 0.49700619845632*16=7.95209917530112 Resulting hexadecimal would be 6a09e667 which is  h0 := 0x6a09e667 Iam going to stop at the 8th iteration , why is that ? Since we are interested in 32 bit (8*4=32) Alright to make it clear  Convert hexade...

Linear Regression with one variable - Introduction

 It is not but making a some how clear relationship among variables the dependent and independent variables. talking in terms of maths the equation can be used meaningfully for something may be to determine /predict values from data. if y = m * x + b  the values for m , b can be anything but has to appropriate to predict y  so the loss which is  difference from existing to prediction is close to zero ~0 to start with we can say the one variable as -x  in some scenario m , b are called variables    the equation stated about is a line equation we have any equation  y = 2*x  y = x*x y = 2x +2x*x  so why the need of all these equations , it is all about playing data now a days in machine learning problems we create a data sets , lets consider as x  y to be a value of x the datas . y = datas  when we express the data as a function and plot in the graph we get the curves  take some random data x and plot x and y  x =1 , 2, ...