SlideShare a Scribd company logo
1 of 24
Download to read offline
Python
Code Lab
Study Of Landvibe
made by 김건희
Django 프레임워크를
활용한 웹페이지 제작
Outline
• 1주차
• 프로그램 개요, 데모 시연
• 배경 지식 설명
• 환경 설정
• 2주차
• Django - Model, View ,Template, url
• 사진 조회, 삽입, 삭제, 수정
• 3주차
• 검증(form)
• 로그인, 회원가입, 로그아웃
• 유저와 사진 연결하기
Outline
• 3주차
• 검증(form)
• 로그인, 회원가입, 로그아웃
• 유저와 사진 연결하기
Form
Form : Data의 Value들을 Validation(검증)
서버클라이언트
Data
(title, contents, user, image)
Form
Form : Data의 Value들을 Validation(검증)
서버클라이언트
Data
(title, contents, user, image)
클라이언트가 보낸 Data들을
신뢰 할 수 있는가?
Form
Form : Data의 Value들을 Validation(검증)
서버클라이언트
Data
(title, contents, user, image)
Django의 Form 클래스를
이용해서 검증하자
Form
Validation != Security
검증 처리는 올바른 값의 검증입니다.
해커 들로부터의 공격을 방어해내는 과정이 아닙니다.
하지만, 검증 과정 자체가 보안에 일부 기여를 하기는 합니다.
Form
Form.py 파일 생성
적용해보자 (글 작성, 수정)
코드 작성
Form
아래 코드 수정
Import 추가
View.py 는 기존에 있던 코드 수정
Form
아래 코드 수정
View.py 는 기존에 있던 코드 수정
Login
클라이언트와 서버 간의 인증 정보를 주고받는 과정
서버클라이언트
1. User Data
(username, password)
Django에서는 csrftoken과 sessionid를 받습니다.
3. Authentication token
인증 토큰
2. DB 확인
4. 인증 토큰 캐싱
Cookie 방식
Login
클라이언트와 서버 간의 인증 정보를 주고받는 과정
서버클라이언트
1. /photos 요청
인증 토큰 같이 전송
3. Photo Data
2. DB 확인
Login
클라이언트와 서버 간의 인증 정보를 주고받는 과정
서버클라이언트
1. /photos 요청
인증 토큰 없으면?
3. 로그인 페이지
2. DB 확인
Login
Login
Session
• 현재 서버에 로그인한 클라이언트들을 관리하기 위해
서버내에 저장하는 유저 정보들
로그인 요청
유저1 유저2
유저3
Login
Session
• 유저마다 id를 발급해서 서버에 저장 후 유저에게 전
송한다
Sessionid : a123
유저1 유저2
유저3
Sessionid : b123
Sessionid : c123
Login
Session
• 로그아웃 혹은 타임아웃시 세션이 만료된다
1. 로그아웃 요청
유저1 유저2
유저3
2. a123, b123, c123 세션
DB에서삭제
Login
작성해보자
urls.py
Login
작성해보자
View.py
Settings.py
Login
테스트해보자
urls.py
/photos 에서
로그아웃 버튼을 눌러보자
/account/login 에
접속해서 로그인해보자
Signup
서버에 유저 정보를 저장
서버클라이언트
1. User Data
(username, password)
3. Redirect Page 응답
2. DB에 저장
Signup
작성해보자
urls.py
view.py
마무리
https://github.com/LandvibeDev/dstagram
지금까지 우리가 작성한 코드는 GitHub에 저장해 놨습니다.
마무리
스터디장 한마디

More Related Content

Similar to Python codelab3

Python codelab2
Python codelab2Python codelab2
Python codelab2건희 김
 
Python codelab1
Python codelab1Python codelab1
Python codelab1건희 김
 
Amazon Rekognition을 통한 이미지 인식 서비스 구축하기
Amazon Rekognition을 통한 이미지 인식 서비스 구축하기Amazon Rekognition을 통한 이미지 인식 서비스 구축하기
Amazon Rekognition을 통한 이미지 인식 서비스 구축하기Amazon Web Services Korea
 
테스트수행사례 W통합보안솔루션
테스트수행사례 W통합보안솔루션테스트수행사례 W통합보안솔루션
테스트수행사례 W통합보안솔루션SangIn Choung
 
모바일 앱의 성공방정식 - Amplify로 극대화하기 – 정창호 :: AWS Builders Online Series
모바일 앱의 성공방정식 - Amplify로 극대화하기 – 정창호 :: AWS Builders Online Series모바일 앱의 성공방정식 - Amplify로 극대화하기 – 정창호 :: AWS Builders Online Series
모바일 앱의 성공방정식 - Amplify로 극대화하기 – 정창호 :: AWS Builders Online SeriesAmazon Web Services Korea
 
Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브
Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브
Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브Atlassian 대한민국
 
역삼역, 이마트 AI_v최종.pdf
역삼역, 이마트 AI_v최종.pdf역삼역, 이마트 AI_v최종.pdf
역삼역, 이마트 AI_v최종.pdfDeukJin Jeon
 
(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)
(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)
(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)SangIn Choung
 
더 나은 SW프로젝트를 위해
 더 나은 SW프로젝트를 위해 더 나은 SW프로젝트를 위해
더 나은 SW프로젝트를 위해지수 윤
 
Amazon Rekognition을 이용하여 인공지능 안면 인식 키오스크 만들기 - 강정희 (AWS 솔루션즈 아키텍트)
Amazon Rekognition을 이용하여 인공지능 안면 인식 키오스크 만들기 - 강정희 (AWS 솔루션즈 아키텍트)Amazon Rekognition을 이용하여 인공지능 안면 인식 키오스크 만들기 - 강정희 (AWS 솔루션즈 아키텍트)
Amazon Rekognition을 이용하여 인공지능 안면 인식 키오스크 만들기 - 강정희 (AWS 솔루션즈 아키텍트)Amazon Web Services Korea
 
우리 제품의 검증 프로세스 소개 자료
우리 제품의 검증 프로세스 소개 자료 우리 제품의 검증 프로세스 소개 자료
우리 제품의 검증 프로세스 소개 자료 SangIn Choung
 
장고로 웹서비스 만들기 기초
장고로 웹서비스 만들기   기초장고로 웹서비스 만들기   기초
장고로 웹서비스 만들기 기초Kwangyoun Jung
 
서버리스(Serverless)를 위한 Zombie Microservices Workshop 실습 가이드 :: 윤석찬 (AWS 테크에반젤...
서버리스(Serverless)를 위한 Zombie Microservices Workshop 실습  가이드 ::  윤석찬 (AWS 테크에반젤...서버리스(Serverless)를 위한 Zombie Microservices Workshop 실습  가이드 ::  윤석찬 (AWS 테크에반젤...
서버리스(Serverless)를 위한 Zombie Microservices Workshop 실습 가이드 :: 윤석찬 (AWS 테크에반젤...Amazon Web Services Korea
 
혼자서 커뮤니티 귀동냥하며 만든 Next.js & Amplify & serverless framework 웹 플랫폼 서비스 구현(삽질) 후...
혼자서 커뮤니티 귀동냥하며 만든 Next.js & Amplify & serverless framework 웹 플랫폼 서비스 구현(삽질) 후...혼자서 커뮤니티 귀동냥하며 만든 Next.js & Amplify & serverless framework 웹 플랫폼 서비스 구현(삽질) 후...
혼자서 커뮤니티 귀동냥하며 만든 Next.js & Amplify & serverless framework 웹 플랫폼 서비스 구현(삽질) 후...Tae-Seong Park
 
Tks프로젝트v2
Tks프로젝트v2Tks프로젝트v2
Tks프로젝트v2jrlim80
 
Executable model en
Executable model enExecutable model en
Executable model enMin Seok Kim
 
웹스트리밍동영상보안자료
웹스트리밍동영상보안자료웹스트리밍동영상보안자료
웹스트리밍동영상보안자료시온시큐리티
 
모카 기술발표자료
모카 기술발표자료모카 기술발표자료
모카 기술발표자료Seokyou (Kevin) Hong
 

Similar to Python codelab3 (20)

Cygnus unit test
Cygnus unit testCygnus unit test
Cygnus unit test
 
Python codelab2
Python codelab2Python codelab2
Python codelab2
 
딥러닝이 바꾸는 애자일 테스팅
딥러닝이 바꾸는 애자일 테스팅딥러닝이 바꾸는 애자일 테스팅
딥러닝이 바꾸는 애자일 테스팅
 
Python codelab1
Python codelab1Python codelab1
Python codelab1
 
Amazon Rekognition을 통한 이미지 인식 서비스 구축하기
Amazon Rekognition을 통한 이미지 인식 서비스 구축하기Amazon Rekognition을 통한 이미지 인식 서비스 구축하기
Amazon Rekognition을 통한 이미지 인식 서비스 구축하기
 
테스트수행사례 W통합보안솔루션
테스트수행사례 W통합보안솔루션테스트수행사례 W통합보안솔루션
테스트수행사례 W통합보안솔루션
 
모바일 앱의 성공방정식 - Amplify로 극대화하기 – 정창호 :: AWS Builders Online Series
모바일 앱의 성공방정식 - Amplify로 극대화하기 – 정창호 :: AWS Builders Online Series모바일 앱의 성공방정식 - Amplify로 극대화하기 – 정창호 :: AWS Builders Online Series
모바일 앱의 성공방정식 - Amplify로 극대화하기 – 정창호 :: AWS Builders Online Series
 
Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브
Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브
Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브
 
역삼역, 이마트 AI_v최종.pdf
역삼역, 이마트 AI_v최종.pdf역삼역, 이마트 AI_v최종.pdf
역삼역, 이마트 AI_v최종.pdf
 
(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)
(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)
(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)
 
더 나은 SW프로젝트를 위해
 더 나은 SW프로젝트를 위해 더 나은 SW프로젝트를 위해
더 나은 SW프로젝트를 위해
 
Amazon Rekognition을 이용하여 인공지능 안면 인식 키오스크 만들기 - 강정희 (AWS 솔루션즈 아키텍트)
Amazon Rekognition을 이용하여 인공지능 안면 인식 키오스크 만들기 - 강정희 (AWS 솔루션즈 아키텍트)Amazon Rekognition을 이용하여 인공지능 안면 인식 키오스크 만들기 - 강정희 (AWS 솔루션즈 아키텍트)
Amazon Rekognition을 이용하여 인공지능 안면 인식 키오스크 만들기 - 강정희 (AWS 솔루션즈 아키텍트)
 
우리 제품의 검증 프로세스 소개 자료
우리 제품의 검증 프로세스 소개 자료 우리 제품의 검증 프로세스 소개 자료
우리 제품의 검증 프로세스 소개 자료
 
장고로 웹서비스 만들기 기초
장고로 웹서비스 만들기   기초장고로 웹서비스 만들기   기초
장고로 웹서비스 만들기 기초
 
서버리스(Serverless)를 위한 Zombie Microservices Workshop 실습 가이드 :: 윤석찬 (AWS 테크에반젤...
서버리스(Serverless)를 위한 Zombie Microservices Workshop 실습  가이드 ::  윤석찬 (AWS 테크에반젤...서버리스(Serverless)를 위한 Zombie Microservices Workshop 실습  가이드 ::  윤석찬 (AWS 테크에반젤...
서버리스(Serverless)를 위한 Zombie Microservices Workshop 실습 가이드 :: 윤석찬 (AWS 테크에반젤...
 
혼자서 커뮤니티 귀동냥하며 만든 Next.js & Amplify & serverless framework 웹 플랫폼 서비스 구현(삽질) 후...
혼자서 커뮤니티 귀동냥하며 만든 Next.js & Amplify & serverless framework 웹 플랫폼 서비스 구현(삽질) 후...혼자서 커뮤니티 귀동냥하며 만든 Next.js & Amplify & serverless framework 웹 플랫폼 서비스 구현(삽질) 후...
혼자서 커뮤니티 귀동냥하며 만든 Next.js & Amplify & serverless framework 웹 플랫폼 서비스 구현(삽질) 후...
 
Tks프로젝트v2
Tks프로젝트v2Tks프로젝트v2
Tks프로젝트v2
 
Executable model en
Executable model enExecutable model en
Executable model en
 
웹스트리밍동영상보안자료
웹스트리밍동영상보안자료웹스트리밍동영상보안자료
웹스트리밍동영상보안자료
 
모카 기술발표자료
모카 기술발표자료모카 기술발표자료
모카 기술발표자료
 

Python codelab3