1
00:00:00,330 --> 00:00:06,050
Welkom terug in dit je weet dat we gericht op authenticatie van de gebruiker, waar je beginnen te kort.

2
00:00:06,120 --> 00:00:14,710
In mijn ervaring auteurs iets dat de studenten zijn erg enthousiast om te leren over, omdat ze het gevoel dat het maakt haar apps legitiem en geeft hen het gevoel echt en bruikbaar.

3
00:00:14,760 --> 00:00:18,210
Als u zich kunt aanmelden kunt u inloggen en je kunt afmelden.

4
00:00:18,690 --> 00:00:21,030
Dus dat maakt het een leuke en spannende dingen te leren.

5
00:00:21,270 --> 00:00:27,140
Maar de waarheid is dat het ook echt een moeilijk ding om te leren, omdat authenticatie is behoorlijk ingewikkeld.

6
00:00:27,180 --> 00:00:31,130
Er is veel van het verplaatsen van stukken die moeten bij elkaar passen in precies de juiste manier om het te laten werken.

7
00:00:31,140 --> 00:00:32,490
Veel van de grote concepten.

8
00:00:32,670 --> 00:00:34,850
En eerlijk gezegd is het een stuk van de code om het te laten werken.

9
00:00:35,130 --> 00:00:41,530
Gelukkig voor ons zijn er een heleboel goede tools die er zijn die ons helpen om snel en veilig te implementeren authenticatie.

10
00:00:41,550 --> 00:00:45,060
Nu uitleggen wat ik bedoel met veilig later in deze video.

11
00:00:45,060 --> 00:00:53,540
Voordat ik een duik nemen in het uitleggen van de instrumenten en de workflow van authenticatie wil ik wat tijd door te brengen geeft u enig inzicht in mijn gedachte proces achter het onderwijzen van art.

12
00:00:53,640 --> 00:00:59,120
Het is een van die onderwerpen die ik veel tijd doorgebracht onderwijzen, maar ook het onderwijs in meerdere verschillende manieren.

13
00:00:59,520 --> 00:01:02,960
Als je het onderwijzen van authenticatie van de gebruiker is er een keuze die je moet maken.

14
00:01:03,210 --> 00:01:15,660
En voor mij die keuze zou gaan om verificatie van de grond af te leren niet het gebruik van gereedschap bij allen en ervoor te zorgen dat de studenten zich richten op de ins en outs van elk belangrijk concept en het zou kunnen nemen vijf zes uur.

15
00:01:15,660 --> 00:01:17,790
Het lijkt misschien veel van de lessen veel video's zijn.

16
00:01:17,910 --> 00:01:23,960
We kunnen uiteindelijk verliezen sommige studenten maar we zullen ervoor zorgen dat iedereen begrijpt hoe verificatie werkt.

17
00:01:24,120 --> 00:01:38,650
Of gebruiken we een aantal van de bestaande instrumenten die er zijn instrumenten die ons helpen authenticatie van de gebruiker toe te voegen sneller eenvoudiger en met een manier om minder regels code en het komt allemaal neer op deze editie van is het belangrijker voor studenten om een ​​diep begrip van hoe de dingen hebben werk.

18
00:01:38,760 --> 00:01:43,650
Is dat de prioriteit of is het een prioriteit om studenten dingen snel.

19
00:01:43,650 --> 00:01:49,350
Dus is het over conceptueel begrip en diepte van de kennis of is het over het maken van dingen.

20
00:01:49,350 --> 00:01:52,230
Het is duidelijk dat in een ideale wereld zouden we willen allebei.

21
00:01:52,230 --> 00:02:00,830
We willen dat iedereen om de ins en outs van alles wat we leren begrijpen en we willen de studenten om tonnen van praktische kennis te hebben en in staat zijn om dingen snel te maken.

22
00:02:01,350 --> 00:02:12,900
In het verleden heb ik beide benaderingen geprobeerd om het onderwijs waar ik begon door te proberen om studenten een diep begrip van elk begrip en hoe het allemaal werkte en in elkaar passen voordat we zelfs iets uitgevoerd.

23
00:02:13,290 --> 00:02:19,350
En dan heb ik ook het tegenovergestelde waar we gewoon proberen om een ​​of ander ding werk eerst en dan terug te komen en te praten over hoe het werkt gedaan.

24
00:02:19,530 --> 00:02:28,260
En ik heb nog meer tijd doorgebracht na te denken over hoe we willen om het te benaderen in deze video Natuurlijk heb ik deze lezing veel te veel keren heb ik herwerkt herschreven alle code opgenomen.

25
00:02:28,260 --> 00:02:33,120
Het is er een die ik wil goed te krijgen, want het is echt belangrijk en een die veel studenten uit te kijken.

26
00:02:33,480 --> 00:02:39,660
Dus wat ik heb besloten om te doen is om twee eenheden in dit eerste eenheid op verificatie die u momenteel bekijken van de film.

27
00:02:39,660 --> 00:02:43,040
Ik ga om te beginnen door het geven u een zeer snel overzicht.

28
00:02:43,260 --> 00:02:46,740
Helemaal niet in de diepte, maar gewoon een snel overzicht van hoe authenticatie werkt.

29
00:02:46,860 --> 00:02:52,300
En dan gaan we deze tools die ik sprak over die gebruik maken van ons leven gemakkelijker en maken de code korter.

30
00:02:52,320 --> 00:02:53,730
We gaan ze meteen gebruiken.

31
00:02:53,970 --> 00:02:59,450
En ligt de focus op alleen het maken van iets dat zowel een gelegenheid en vervolgens een van de optionele eenheden.

32
00:02:59,460 --> 00:03:15,620
Helemaal aan het einde van deze cursus gaat om een ​​echt diepe duik in authenticatie, waar we eigenlijk onze eigen authenticatie van de gebruiker van de grond zullen implementeren zijn waar we geen van de instrumenten zal gebruiken en ik ga je nu de doelstelling is om het beste van beide werelden gaan om te beginnen door gewoon het maken van iets.

33
00:03:15,750 --> 00:03:21,970
En ik ben niet van plan om meer dan wind alle van de concepten, maar ik ben niet van plan om te besteden u een uur weet plus praten over hoe dingen werken.

34
00:03:22,170 --> 00:03:31,470
Oke dus nu dat we hebben gekregen dat uit de weg dit grote ideologische discussie hier wil ik nu in te voeren van de tools die we gaan gebruiken dus we gaan iets genaamd paspoort te gebruiken.

35
00:03:31,500 --> 00:03:32,320
Ja.

36
00:03:32,610 --> 00:03:39,430
En we zijn niet alleen gebruikt omdat het iets is dat ons leven makkelijker te maken onze code korter maken deze implementatie sneller.

37
00:03:39,720 --> 00:03:42,620
Maar het is ook iets dat veel gebruikt in de echte wereld.

38
00:03:42,750 --> 00:03:47,410
Veel en veel toepassingen paspoort J.S. hun authenticatie voeren.

39
00:03:47,700 --> 00:03:49,320
Dus laat ik je de home page hier.

40
00:03:49,560 --> 00:04:05,200
Dit is Passport Chaiya stotterde en zie de kleine tagline zegt eenvoudige onopvallend authenticatie voor geen J Amerikaans paspoort is authenticatie middleware voor knooppunt uiterst flexibel en modulair paspoort kan onopvallend worden gedropt in een uitdrukkelijke gebaseerde webapplicatie.

41
00:04:05,280 --> 00:04:12,210
Een uitgebreide set van strategieën ondersteuning authenticatie met behulp van een gebruikersnaam en wachtwoord Facebook Twitter en nog veel meer.

42
00:04:12,210 --> 00:04:16,280
En dan kun je naar beneden zien hier dat er eigenlijk meer dan 300 verschillende strategieën.

43
00:04:16,440 --> 00:04:36,300
Dus strategie is bedoeld om verschillende soorten authenticatie verschillende manieren van authenticatie van personen of het nu door middel van het hebben van de gebruiker een e-mailadres en een wachtwoord traditionele authenticatie typen of als het door middel van een dienst als Facebook of Twitter, die je waarschijnlijk eerder gezien op een site of een toepassing waarin het vraagt ​​u om in te loggen via Google of Twitter of Facebook.

44
00:04:36,390 --> 00:04:45,220
En er zijn vele meer dat we eigenlijk kunnen zien ze allemaal en we kunnen zoeken via hen, dus er is dingen zoals Fitbit u zich kunt aanmelden door middel van Fitbit.

45
00:04:45,440 --> 00:04:49,450
We hebben Spotify Reddit tumblr Google plus.

46
00:04:49,700 --> 00:04:53,630
Maar veruit de meest populaire zullen worden Facebook Twitter en Google.

47
00:04:53,620 --> 00:05:00,620
En dan ook wat bekend staat als de lokale authenticatie en dat is wat we beginnen hier met die net is gebruikersnaam of e-mailadres en wachtwoord.

48
00:05:00,620 --> 00:05:01,170
OK.

49
00:05:01,370 --> 00:05:03,900
Dus dat is de basis tool die we gaan paspoort gebruiken.

50
00:05:03,940 --> 00:05:07,660
Ja, het zal een enorme hulp in onze implementatie van de gebruiker.

51
00:05:08,060 --> 00:05:12,960
Maar we gaan ook naar een ander pakket genaamd Passport plaatselijke die ik hier gebruik.

52
00:05:13,190 --> 00:05:17,280
En dit is een van die programma's of strategieën voor authenticatie.

53
00:05:17,360 --> 00:05:30,700
Dus er is een paspoort Facebook een paspoort Twitter paspoort Google en paspoort lokale en 300 plus verschillende strategieën paspoort lokaal is voor de gebruikersnaam en het wachtwoord dat is wat we moeten doen om te beginnen.

54
00:05:30,890 --> 00:05:42,290
Maar wat is echt geweldig over paspoort is dat later in deze cursus kunnen we gaan en voeg Facebook of Twitter en we kunnen lokale en te houden en kunnen we drie 5 10 verschillende manieren om in te loggen op onze app.

55
00:05:42,320 --> 00:05:48,500
Meestal wilt u het vrij beperkt te houden, maar we kunnen zo veel als we willen dat door het gebruik van Passport en de naam paspoort.

56
00:05:48,530 --> 00:05:52,490
Het gaat over het verstrekken van deze entry point in allerlei bestemmingen.

57
00:05:52,870 --> 00:05:58,240
OK en er is nog een pakket dat we gaan gebruiken die Passport lokale mangoest wordt genoemd.

58
00:05:58,520 --> 00:06:09,660
Dus ik heb de get hub geopend voor dat en paspoort lokale Mongoose is een ander pakket dat ons alleen maar zal helpen bij de uitvoering authenticatie met paspoort en is speciaal gemaakt om te werken met mangoest.

59
00:06:09,830 --> 00:06:11,450
Dus we hoeven niet om het te gebruiken.

60
00:06:11,540 --> 00:06:19,430
We konden wegkomen met alleen met behulp van Passport lokale het paspoort lokale Mongoose gaat om ons te helpen maken het nog sneller en eenvoudiger te maken voor ons.

61
00:06:19,520 --> 00:06:25,760
En dan natuurlijk in de optionele off from scratch sectie zullen we in het maken van kunst uit het niets zonder dat een van deze tools.

62
00:06:25,980 --> 00:06:26,470
OK.

63
00:06:26,570 --> 00:06:28,290
Dus dat zijn de drie belangrijkste instrumenten.

64
00:06:28,340 --> 00:06:34,420
Nu ga ik u een snelle demo van wat we gaan voorin, die ik je waarschuwen dat het niet erg spannend visueel te maken.

65
00:06:34,520 --> 00:06:36,020
Ik heb het niet stylen helemaal.

66
00:06:36,020 --> 00:06:39,840
Maar we zullen het toevoegen van je Seraph yo kamp en we zullen dat styling.

67
00:06:40,000 --> 00:06:42,940
Maar voor nu is dit een barebones implementatie die ik wil je laten zien.

68
00:06:43,220 --> 00:06:45,870
Dus begonnen we op deze homepage en we hebben drie knoppen.

69
00:06:46,120 --> 00:06:53,930
Log in register en log uit en er is een geheime pagina slash geheim dat je alleen kunt bekijken als u ingelogd bent.

70
00:06:53,960 --> 00:07:06,510
Dus als ik probeer en gaan er nu ben ik niet ingelogd en het duurt me terug naar een log slash in en het toont me de log-in vorm, zodat ik schrijf en ik zal je laten zien dat we dan kunnen gaan naar de geheime pagina.

71
00:07:06,830 --> 00:07:17,410
Dus gebruikersnaam ik roestige vier of vijf zes en wachtwoord zal gewoon vergeten zijn te doen en dan zal ik me aanmelden.

72
00:07:18,350 --> 00:07:21,030
En het brengt me naar geheim dat ik nu kan bezoeken slash.

73
00:07:21,290 --> 00:07:28,040
En op de geheime pagina Ik heb een vreselijk gênante foto van mijn cel uit mijn zevende of achtste klas toen ik mijn eerste laptop.

74
00:07:28,040 --> 00:07:28,900
Gewoon verschrikkelijk.

75
00:07:29,090 --> 00:07:33,180
Dus dat is slash geheim geheim voor een reden natuurlijk.

76
00:07:33,200 --> 00:07:42,670
En nu als ik naar uit te loggen Ik kan niet meer naar geheime slash het automatisch mij logon slash en ik kan ook hier inloggen.

77
00:07:42,710 --> 00:08:00,620
Dus ik zal Rusti vier vijf zes te gebruiken met het juiste wachtwoord dat is gewoon vergeten en ik meld je aan of log in en het duurt me terug naar zulke geheime en ik kan gaan naar de homepage en terug naar geheime slash, want ik blijf ingelogd.

78
00:08:00,620 --> 00:08:06,880
Dus de manier waarop dit werkt het sleutelbegrip dat alles scharniert rond is iets genaamd sessies.

79
00:08:07,030 --> 00:08:09,680
Ik zal een korte samenvatting van wat sessies geven.

80
00:08:09,830 --> 00:08:22,660
Eigenlijk is het GTP wordt verondersteld een stateless protocol, wat betekent dat wanneer u verzoeken te sturen die verzoeken zijn één keer dingen en ze hebben geen informatie over uw verhaal of de eerdere verzoeken die je hebt gemaakt te bevatten.

81
00:08:22,730 --> 00:08:24,020
Ze zijn niet met elkaar verbonden.

82
00:08:24,050 --> 00:08:32,690
Een verzoek heeft geen staat is het gewoon een eenmalige transactie die zou het erg moeilijk om de gebruiker uit te voeren af, want ik wil in staat zijn dat je blijft ingelogd.

83
00:08:32,930 --> 00:08:41,280
Ik wil dat de server om te weten dat Rustie 4 of 5 6 is nog steeds ingelogd, en de manier waarop we dat te doen is door het gebruik van sessies en wat sessies zal doen.

84
00:08:41,360 --> 00:08:44,750
Ze zijn gewoon een manier om HTP niet staatloos te maken.

85
00:08:44,750 --> 00:09:00,480
Er zijn een manier om de toestand dus bieden bij elk verzoek dat ik op deze app als ik ingelogd wanneer iemand is ingelogd is er een klein beetje informatie over die gebruiker die is opgeslagen in het verzoek dat naar de server wordt gestuurd en het is eigenlijk niet de gebruiker het wachtwoord van de hele gebruikersnaam.

86
00:09:00,620 --> 00:09:05,320
Maar het is een beetje van informatie en het is gecodeerd en het is eigenlijk gedaan om een ​​geheim.

87
00:09:05,450 --> 00:09:18,250
En dan wordt het naar mijn server en vervolgens paspoort zult zien dat en het zal vertaald in iets dat het in principe begrijpt kraken van de code of onversleuteld en het zal die informatie gebruiken om te vertellen als iemand is ingelogd of niet.

88
00:09:18,470 --> 00:09:21,350
Dus dit zal meer zin maken zodra we de uitvoering toe te voegen.

89
00:09:21,350 --> 00:09:26,460
Maar het belangrijkste concept is dat Sessions ons in staat tot staat in onze HTP verzoeken.

90
00:09:26,620 --> 00:09:27,730
Dus ik kan gegevens te verzenden.

91
00:09:27,770 --> 00:09:36,260
Ik kan terug naar de homepage te gaan is het nog steeds weet dat ik aangemeld als Rustie 4 5 6 en ik kan terug naar het geheim te gaan zonder enige problemen.

92
00:09:36,590 --> 00:09:44,210
En dat komt omdat elke keer als ik een verzoek stuur ik een hele kleine stukje informatie dat zegt dat dit Rustie vier vijf zes wie ingelogd.

93
00:09:44,210 --> 00:09:48,620
En dan zodra ik meld dat stukje informatie is verdwenen.

94
00:09:49,120 --> 00:09:57,540
Dus nu als ik naar geheime slash Ik heb een aantal logica die zegt dat als er geen gebruiker in de sessie dan niet laten die persoon naar zo'n geheim.

95
00:09:57,620 --> 00:09:59,370
Redirect hen om in te loggen slash.

96
00:09:59,670 --> 00:09:59,940
OK.

97
00:09:59,960 --> 00:10:09,440
Dus we zullen gaan over dat alles in meer detail in de volgende video als we eigenlijk deze eenvoudige applicatie te maken en uit te voeren sessies om te helpen met onze sessies krijgen.

98
00:10:09,430 --> 00:10:14,220
We gaan een pakket met de naam Express sessie die zult zien in de volgende video ook gebruiken.

99
00:10:14,750 --> 00:10:16,870
OK dus dat is alles wat ik wil in te voeren voor nu.

100
00:10:16,880 --> 00:10:32,970
Dus we gaan worden met behulp van Passport J als de lokale regeling, samen met het paspoort lokale mangoest module of pakket dat zal ons helpen om de uitvoering van authenticatie van de gebruiker vrij snel en relatief pijnloos en we gaan om het te gaan krijgen in de volgende video in een eenvoudige app.

101
00:10:33,080 --> 00:10:38,530
En toen we eenmaal hebben deze manier van werken we dan gaan terug naar het kamp te gaan en uit te voeren gebruiker auth daar.
