Keycloak 과 기업 인증 · 애플리케이션 연동(리다이렉트·PKCE) · 퀴즈
퀴즈: PKCE 와 앱 연동
문항 6개. 정답과 해설은 풀어 본 뒤에 보여 드립니다.
PKCE 가 막는 공격은?
- 서명 키 없이 하는 토큰 위조
- 가로챈 인가 코드로 토큰을 받는 것
- 요청을 위조하는 CSRF
- 같은 코드를 다시 쓰는 재생 공격
`code_challenge_method` 로 `plain` 대신 `S256` 을 쓰는 이유는?
- 해시를 계산하지 않아 더 빨라서
- 규격이 S256 만 허용하기 때문에
- challenge 문자열이 짧아져서
- plain 은 verifier 를 그대로 노출하기 때문
리다이렉트 URI 에 넓은 와일드카드를 등록하면?
- 환경마다 URI 를 등록하지 않아도 되어 편리하다
- 그 도메인의 열린 리다이렉터 하나만 있어도 토큰이 공격자에게 전달될 수 있다
- 그 클라이언트의 PKCE 검사가 꺼진다
- 콜백을 구별할 수 없어 state 가 무의미해진다
리프레시 토큰 회전에서 옛 리프레시 토큰이 다시 쓰이면?
- 정상으로 보고 그대로 갱신해 준다
- 조용히 무시하고 아무 응답도 안 준다
- 새 리프레시 토큰을 다시 발급한다
- 탈취를 의심해 그 세션 전체를 무효화한다
토큰은 유효한데 롤이 부족할 때의 올바른 상태 코드는?
- 403 Forbidden
- 401 Unauthorized
- 404 Not Found
- 422 Unprocessable Content
JWKS 캐시를 무한정 유지하면 생기는 문제는?
- 캐시가 계속 자라 메모리가 샌다
- 키 회전 직후 새 kid 로 서명된 토큰의 검증이 전부 실패한다
- 매 요청마다 조회가 늘어 성능이 떨어진다
- aud 검사에 필요한 값이 낡아 검사가 꺼진다