En este post vamos a enseñar como utilizar AUTH0 un proveedor de autenticación a REACT

Lo primero es registrarse en AUTH0

image001

Elegimos other y pinchamos en el checkbox para cambiar de región nuestra cuenta

image003

Elegimos el nombre del dominio que queramos y la regio EU

image005

Pulsamos en el botón de crear aplicación

image007

Pinchamos en single page applications ya que es para una aplicación de React y pulsamos crear

image009

Le decimos que es para una aplicación de REACT

image011

Pulsamos en el enlace de para conseguir la application keys

image013

Pinchamos en My App que es la que acabamos de crear

image015

Vamos para abajo de la aplicación e introducimos nuestra url en local para que nos deje hacerlo

image017

También nos quedaremos con el domain y el Client ID para más tarde

image019
image020

Ya vamos al cmd y creamos una aplicación REACT

image022

E instalamos el sdk de auth0

image023

Abrimos la aplicación y vamos aprobarlo importando Auth0Provider

image025

Copiamos auth0 a la app y auth0 tiene varios props el domain y el clientid que hemos guardado antes de nuestra aplicación y un redirectionUri, el proveedor de auth0 nos va almacenar el estado de autenticación de los usuarios y métodos para logear y deslogear a los usuarios.

image026

iniciamos la aplicación con npm start y vemos que no tenemos ningún error

image028

Vamos a crear un componente llamado Login.js

image030

Importamos useAuth0.

Creamos el método login y devolvemos un botón que devuelva la función login

image032

Vamos a App.js y importamos el componente y lo indicamos aquí

image034
image035

Vamos a la aplicación y vemos que nos aparece el botón pulsamos y ya nos redirige a el login

image036
image057

Creamos el component logout.js y vamos a crear el botón de logout e importamos de nuevo useAuth0 y creamos el método logout y que devuelva el botón con la función logout, creamos también la propiedad returnTo para que vuelve a la página de  origen al hacer click

image040
image041

Ahora vamos a crear el perfil para guardar los datos de los usuarios, creamos otro componente llamado Profile.js

image046

Importamos useAuth0

image047

Creamos las variables para saber si el usuario este logeado o está cargando

image048

Creamos un if y decimos que si esta cargando salte el mensaje y si esta autenticado que nos devuelva la imagen, el nombre y el email

image051

Volvemos a App.js e importamos el logout y profile

image052

Probamos la aplicación le damos el botón de login y seleccionamos la cuenta de google

image053

Y nos aparece la imagen el nombre y el email

image055

Y si le damos a logout se nos sale

image056

Y si le damos al botón de sing up nos registramos

image059

Continuamos y lo aceptamos

image061
image063

Autor/a: Raúl García Moratinos

Curso: Desarrollo Web Full Stack + MultiCloud con Azure y AWS 

Centro: Tajamar 

Año académico: 2022-2023 

Enlace Github:https://github.com/Raulgm111/auth0login.git

Leave a Comment

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.