SlideShare a Scribd company logo
Laravel Authentication
구준호
XE3를 지탱하는 기술
할 일
1. Laravel Authentication?
2. 가입, 로그인
3. 패스워드 리셋
4. 남은 이야기
1. 테이블 필드 추가
2. Socialite
1. Laravel Authentication?
Laravel Authentication
1. Laravel Authentication?
• 장점 :
• 환상적인 기능들을 별다른 설치 없이도 사용 가능합니다.
• 쉽게쉽게(!) 바로 쓸 수 있습니다.
• 오늘 해볼 기능들
1. 가입, 로그인
2. 패스워드 리셋
• 실습
• 개발자 구인구직 사이트의 인증 기능을 살펴봅니다.
2. 가입, 로그인
Laravel Authentication
2. 가입, 로그인 – 로그인 화면
2. 가입, 로그인 – AuthController
AuthenticatesUsers RegistersUsers
AuthenticatesAndRegistersUsers
trait trait
trait
AuthController
routes.php
AuthController
2. 가입, 로그인 – trait, use
2. 가입, 로그인 – AuthController
AuthenticatesUsers RegistersUsers
AuthenticatesAndRegistersUsers
AuthController
routes.php
AuthController
AuthenticatesUsers RegistersUsers
AuthenticatesAndRegistersUsers
2. 가입, 로그인 – AuthController
AuthController
routes.php
AuthController
2. 가입, 로그인 – AuthController
AuthenticatesUsers RegistersUsers
AuthenticatesAndRegistersUsers
AuthController
routes.php
AuthController
AuthController
2. 가입, 로그인 – AuthController
AuthenticatesUsers RegistersUsers
AuthenticatesAndRegistersUsers
routes.php
AuthController
2. 가입, 로그인 – routes.php
AuthenticatesUsers RegistersUsers
AuthenticatesAndRegistersUsers
AuthController
AuthController::
postLogin()
AuthenticatesUsers RegistersUsers
AuthenticatesAndRegistersUsers
AuthController
AuthController::getLogout()
AuthenticatesUsers RegistersUsers
AuthenticatesAndRegistersUsers
AuthController
AuthController::postRegister()
AuthenticatesUsers RegistersUsers
AuthenticatesAndRegistersUsers
AuthController
2. 가입, 로그인 – Auth 의 다른 기능들
• Auth::viaRemember();
• Auth::login($user);
• Auth::loginUsingId(1);
• Auth::once($credentials);
2. 가입, 로그인 – 구직 사이트 개발
• 가입, 로그인
• 패스워드 변경
2. 가입, 로그인 – routes.phpproject/app/Http/routes.php
2. 가입, 로그인 – 가입 화면project/resources/views/auth/register.blade.php
2. 가입, 로그인 – 로그인 화면project/resources/views/auth/login.blade.php
2. 가입, 로그인 – 로그인 시도 후 redirectproject/app/Http/Controllers/Auth/AuthController.php
3. 패스워드 리셋
Laravel Authentication
3. 패스워드 리셋
3. 패스워드 리셋 – PasswordController
ResetsPasswords
trait
• 패스워드 초기화
routes.php
Password
Controller
PasswordController
3. 패스워드 리셋 – PasswordController
• 패스워드 초기화
routes.php
Password
Controller
ResetsPasswords
PasswordController
3. 패스워드 리셋 – PasswordController
• 패스워드 초기화
routes.php
Password
Controller
ResetsPasswords
PasswordController
3. 패스워드 리셋 – routes.php
ResetsPasswords
PasswordController
3. 패스워드 리셋 – 구직 사이트 개발
• 가입, 로그인
• 패스워드 변경
3. 패스워드 리셋 – routes.phpproject/app/Http/routes.php
3. 패스워드 리셋 – 메일 설정project/.env
3. 패스워드 리셋 – 메일 설정project/config/mail.php
3. 패스워드 리셋 – 리셋 요구 폼project/resources/views/auth/password.blade.php
3. 패스워드 리셋 – 이메일 내용project/resources/views/emails/password.blade.php
3. 패스워드 리셋 – 리셋 확인 폼project/resources/views/auth/reset.blade.php
4. 남은 이야기
Laravel Authentication
4. 사용자 테이블 필드 추가
• 가입, 로그인
• 패스워드 변경
• 사용자 테이블 필드 추가
• 소셜 로그인
4. 사용자 테이블 필드 추가 – 코멘트 팁
//*
content1()
/*/
content2()
//*/
/*
content1()
/*/
content2()
//*/
project/app/Http/routes.php
화면(O)
4. 사용자 테이블 필드 추가 – Migrationproject/database/migrations/add_resume_field_on_users_table.php
4. 사용자 테이블 필드 추가 – Userproject/app/User.php
4. 사용자 테이블 필드 추가 – Controllerproject/app/Http/Controllers/Auth/AuthController2.php
4. 소셜 로그인
• 가입, 로그인
• 패스워드 변경
• 사용자 테이블 필드 추가
• 소셜 로그인
4. 소셜 로그인 – Socialite
• Laravel 에서 제공
• 폼 기반 인증이 아닌 OAuth 기반 인증 방식
• composer를 통해서 설치 필요
• http://xpressengine.github.io/laravel-korean-docs/docs/5.0/authentication/#social-authentication
composer require laravel/socialite
콘솔창에서 다음처럼 입력
4. 소셜 로그인 – 등록
Socilite 사용하기 위해서 Github App 등록
4. 소셜 로그인 – ServiceProviderproject/config/app.php
4. 소셜 로그인 – 설정project/config/services.php
4. 소셜 로그인 – routes.phpproject/app/Http/routes.php
4. 소셜 로그인 – 소셜 인증과 콜백project/app/Http/Controllers/Auth/AuthController3.php
오늘 한 일
1. 가입, 로그인
2. 패스워드 리셋
3. 테이블 필드 추가
4. Socialite
Q&A
감사합니다

More Related Content

PDF
Storytelling For The Web: Integrate Storytelling in your Design Process
PDF
Artificial Intelligence, Data and Competition – SCHREPEL – June 2024 OECD dis...
PDF
How to Leverage AI to Boost Employee Wellness - Lydia Di Francesco - SocialHR...
PDF
2024 Trend Updates: What Really Works In SEO & Content Marketing
PPTX
Site mesh
PDF
Ubuntu에서 Flask개발 맛보기 - 1
PPTX
xecon-phpfest2014composer
PDF
2024 State of Marketing Report – by Hubspot
Storytelling For The Web: Integrate Storytelling in your Design Process
Artificial Intelligence, Data and Competition – SCHREPEL – June 2024 OECD dis...
How to Leverage AI to Boost Employee Wellness - Lydia Di Francesco - SocialHR...
2024 Trend Updates: What Really Works In SEO & Content Marketing
Site mesh
Ubuntu에서 Flask개발 맛보기 - 1
xecon-phpfest2014composer
2024 State of Marketing Report – by Hubspot
Ad

Laravel Authentication

Editor's Notes

  • #7: 가입, 로그인 로그인 상태 유지 사용자 입력 검증 에러 메세지 스로틀 로그인
  • #10: 각 traits 들을 설명해야 함 (그래야 뒤에서 선택 질문 가능)
  • #25: 패스워드 리셋 메일 전송
  • #49: AuthController2를 상속 callback 설명