LabHub

프로덕션 백엔드 API 캡스톤 · HTTP와 리소스 보안 · 퀴즈

퀴즈: HTTP와 리소스 인가

LabHub 에서 이어서 보기

문항 6개. 정답과 해설은 풀어 본 뒤에 보여 드립니다.

  1. 인증된 다른 조직의 admin이 주문을 읽으려 할 때 먼저 적용할 규칙은?

    1. admin이므로 모든 조직 주문을 허용
    2. 조직 경계가 다르므로 역할과 무관하게 거부
    3. 소유자 이름이 같으면 조직을 무시
    4. 응답 본문만 비우고 상태는 200
  2. 라우팅과 상태 코드 계약까지 검증하는 테스트 방식은?

    1. create_order 함수를 직접 호출하고 딕셔너리만 비교
    2. 라우트 이름이 소스에 있는지 정규식으로 검색
    3. 서버를 임의 포트에 기동하고 실제 HTTP 요청을 전송
    4. 모든 네트워크 호출을 정적 모킹으로 교체
  3. 같은 조직 writer가 다른 사용자의 주문을 취소하려 할 때 필요한 판단은?

    1. writer 역할이 있으므로 항상 허용
    2. owner_id가 다르므로 리소스 관계에 따라 거부
    3. 같은 조직이면 인증 없이도 허용
    4. 취소 뒤 감사 로그에서 사후 탐지
  4. 인증 헤더가 아예 없는 요청과, 신원은 확인됐지만 남의 주문을 건드리는 요청의 상태 코드는?

    1. 둘 다 401 로 통일한다
    2. 둘 다 403 으로 통일한다
    3. 앞이 403 이고 뒤가 401 이다
    4. 앞이 401 이고 뒤가 403 이다
  5. 소유권 검사를 애플리케이션 조건문뿐 아니라 데이터베이스 조회 조건에도 넣는 이유는?

    1. 조회 범위와 권한 판단이 어긋나 남의 행이 먼저 읽히는 일을 막는다
    2. 질의 실행 계획이 항상 인덱스를 타게 된다
    3. 애플리케이션에서 권한 판단 코드를 지울 수 있다
    4. 조회 결과가 캐시에 더 오래 남는다
  6. 모듈을 import 하는 것만으로 출력이 생기면 무엇이 문제인가?

    1. 모듈이 커져 기동 시간이 길어진다
    2. 테스트 프레임워크가 모듈을 찾지 못한다
    3. 그 모듈을 부르는 모든 도구의 로그로 환경값과 비밀이 흘러간다
    4. 파이썬이 순환 import 를 감지하지 못한다