1
00:00:04,340 --> 00:00:09,890
When it comes to brand new instruction, and that is authentication.

2
00:00:10,400 --> 00:00:19,670
Well, for us to take control about our applications, we need to implement security authentication

3
00:00:19,670 --> 00:00:21,770
and authorization.

4
00:00:22,250 --> 00:00:26,780
There is differences between authentication and authorization.

5
00:00:27,140 --> 00:00:34,220
When we say authentication is simply means that allowing a user to login into your application with

6
00:00:34,220 --> 00:00:36,560
the right login credentials.

7
00:00:36,920 --> 00:00:45,440
And when we say authorization is a process of allowing a user after logging in to take any action in

8
00:00:45,440 --> 00:00:46,730
your application.

9
00:00:47,330 --> 00:00:54,320
But guys, authentication is really, really, really hard.

10
00:00:55,440 --> 00:01:03,360
But the good news is that I'm going to break it down for you to understand the process involved when

11
00:01:03,360 --> 00:01:07,890
implementing authentication and authorization.

12
00:01:08,580 --> 00:01:14,880
Because of that, I have break down authentication section into eight parts.

13
00:01:15,270 --> 00:01:16,890
So let's get started.

14
00:01:17,790 --> 00:01:18,690
Let's see.

15
00:01:18,720 --> 00:01:22,650
Types of authentication that we are going to learn.

16
00:01:23,220 --> 00:01:30,030
The first one is we will implement what is called low level authentication.

17
00:01:30,330 --> 00:01:36,840
And this is the basic way of implementing authentication without a hassle.

18
00:01:37,170 --> 00:01:43,980
So if you understand the first level, that is low level authentication, where we are going to allow

19
00:01:43,980 --> 00:01:50,070
a user to login into application with plain username and password.

20
00:01:50,220 --> 00:01:57,240
And after that, we will go ahead and implement what is called low level authentication.

21
00:01:57,240 --> 00:02:02,610
But instead we are going to add one thing in the mix called encrypted.

22
00:02:02,760 --> 00:02:10,650
So for this one, we are going to improve the first type of authentication by implementing what is called

23
00:02:10,650 --> 00:02:13,170
encrypting the user password.

24
00:02:13,470 --> 00:02:19,950
Then after that, we go ahead and implement what is called cookie based authentication.

25
00:02:20,190 --> 00:02:26,310
So you can see that we are moving from top to bottom whilst we are increasing the security level.

26
00:02:26,760 --> 00:02:35,300
So after cookie based authentication, then we go ahead and implement what is called session based authentication.

27
00:02:35,310 --> 00:02:43,050
So among these for from top to bottom, you can see how we are increasing the security level when it

28
00:02:43,050 --> 00:02:44,850
comes to authentication.

29
00:02:45,210 --> 00:02:51,840
And after learning what is called session based authentication, then we will go ahead and learn with

30
00:02:51,840 --> 00:02:59,490
session based authentication, with database meaning that when a user logs in, we are going to keep

31
00:02:59,490 --> 00:03:05,550
the session inside our MongoDB inside of the memory of our application.

32
00:03:05,940 --> 00:03:13,620
Then the next authentication type that we are going to implement is called token based authentication

33
00:03:13,620 --> 00:03:20,400
by using what is called JSON web token, that is JWT for short.

34
00:03:20,490 --> 00:03:25,350
And this is the kind of authentication we use nowadays.

35
00:03:25,500 --> 00:03:30,630
For my Fullstack applications, I used to keybase authentication.

36
00:03:31,200 --> 00:03:37,310
Then we are going to create application where we can log in from the client side.

37
00:03:37,320 --> 00:03:42,810
And finally, we are going to build a complete authentication system.

38
00:03:43,110 --> 00:03:43,650
All right.

39
00:03:43,650 --> 00:03:49,140
With that being said in this video, let's see how authentication works.

