| 항목 | 내용 |
|---|---|
| 과정명 | 표준 인증 프로토콜 심화 — SAML과 OAuth 2.0/OIDC |
| 수준 | 중급 (일반 대학생, 컴퓨터 관련 교양 이상) |
| 선수 지식 | 초급과정 수료 또는 SSO 기본 개념, HTTP/웹 동작 기초 이해 |
| 총 시간 | 2시간 50분 (50분 × 3교시 + 휴식 10분 × 2회) |
| 강의 : 실습 비율 | 약 6 : 4 |
| 실습 환경 | 개인 노트북, Chrome 브라우저, 인터넷 연결 (서버 구축 없음 — 온라인 도구 활용) |
| 실습 자료 | https://edu.kafe.or.kr |
수료 후 학습자는 다음을 할 수 있다.
강의 30분 + 실습 15분 + 정리 5분
| 구분 | 세부 내용 |
|---|---|
| 도입 (5분) | "로그인 한 번에 숨어 있는 암호 기술" — 과정 로드맵 |
| 강의 (25분) | ① 암호화의 3가지 목적: 기밀성·무결성·부인봉쇄 ② 대칭키 vs 비대칭키 ③ 해시 — 무결성과 비밀번호 저장 ④ 전자서명 — 개인키로 서명, 공개키로 검증 ⑤ X.509 인증서와 신뢰사슬 ⑥ 메시지 포맷: XML(SAML) vs JSON(OIDC) |
| 실습 #1 (15분) | CyberChef로 SHA-256 해시·AES 암복호화 체험 → 브라우저 자물쇠 아이콘으로 TLS 인증서 체인(리프→중간→루트) 열람 |
| 정리 (5분) | "서명 = 해시 + 비대칭키" 한 줄 정리 |
lec-2024-2q p5~18 (암호화~XML vs JSON, MFA)강의 25분 + 실습 20분 + 정리 5분
| 구분 | 세부 내용 |
|---|---|
| 강의 (25분) | ① Web SSO profile과 기타 프로파일 ② Metadata 신뢰 모델 — 왜 교환하는가 (entityID, 인증서, endpoint) ③ AuthnRequest 필드 분석 (Issuer, ACS URL, NameIDPolicy) ④ Response/Assertion 구조와 서명 검증 절차 ⑤ 속성 기반 접근제어(ABAC)와 eduPerson 속성 ⑥ REFEDS R&S·MFA profile (소개 수준) |
| 실습 #2 (20분) | SAML DevTools로 캡처한 실제 메시지를 samltool.com 디코더로 분석 → 필드 해석 워크시트 작성 (Issuer는? 서명은 어디에? 속성은 몇 개?) → 서명 검증 확인 |
| 정리 (5분) | Metadata–Request–Response 관계도 복습 |
lec-2024-2q p19~33 (SAML 인증규약 전체), lec-2023-4q p19~28 (Metadata~속성 그림 자료)강의 30분 + 실습 15분 + 마무리 5분
| 구분 | 세부 내용 |
|---|---|
| 강의 (30분) | ① OAuth 2.0(인가)과 OIDC(인증)의 관계 ② 3가지 endpoint: authorization, token, userinfo ③ Authorization code flow 단계별 추적 ④ response_type과 grant_type ⑤ PKCE — code 가로채기 공격과 방어 ⑥ 토큰 3종: ID/Access/Refresh Token ⑦ scope와 claim ⑧ SAML vs OIDC 비교 |
| 실습 #3 (15분) | OpenID Connect Playground(또는 Google OAuth 데모)로 code flow 단계별 실행 → authorization code, token 응답 관찰 → jwt.io로 ID Token 디코딩, iss/aud/exp/acr claim 해석 |
| 마무리 (5분) | SAML vs OIDC 비교표 정리, 퀴즈 5문항 + Q&A |
lec-2024-2q p34~65 (OIDC/OAuth2 인증규약, Demo 포함)lec-2024-2q (배경지식·SAML 심화·OIDC 전체 — 이 과정의 뼈대), lec-2023-4q (SAML 그림 자료)lec-2024-2q의 OIDC flows based on response_type 연작(p46~53)은 대학생 수준에서 code flow 1개로 압축 — implicit/hybrid는 "왜 쓰지 않는가" 1장으로 처리