← 회차 전체 문제편집복원내용 검수 완료2023년 정보보안기사 1회 필기 · 어플리케이션 보안 · 57번
급여 테이블에는 주민등록번호와 급여가 있지만 부서 담당자에게는 자기 부서 직원의 사번·이름만 조회하도록 권한을 주려 한다. 애플리케이션 SQL을 모두 바꾸지 않고 DB 객체 수준에서 노출 행과 열을 제한하는 가장 직접적인 방법은?
- 1
기본 테이블의 모든 열에 별칭만 지정한다.
오답 이유열 별칭은 표시 이름만 바꾸며 민감한 열이나 다른 부서 행의 접근을 제한하지 않는다. - 2
부서 조건과 허용 열만 SELECT하는 뷰를 만들고 그 뷰에 조회 권한을 부여한다.
정답 근거뷰의 정의 쿼리에서 허용 열과 부서 행을 제한하고 사용자는 뷰만 조회하게 하면 기본 테이블 노출을 줄일 수 있다. - 3
모든 사용자에게 기본 테이블의 SELECT 권한을 부여한다.
오답 이유기본 테이블 전체 SELECT 권한은 오히려 주민등록번호와 타 부서 행까지 노출할 수 있어 최소 권한 원칙에 반한다. - 4
테이블의 주민등록번호 열을 기본키로 변경한다.
오답 이유기본키는 행 식별과 무결성 제약에 관한 것이며 민감 열을 감추거나 행 접근을 필터링하지 않는다.
정답·상세해설정답 2번
뷰는 정의 쿼리의 SELECT 목록과 WHERE 조건으로 표시할 열과 행을 제한할 수 있다. 기본 테이블 권한을 주지 않고 제한된 뷰에만 권한을 부여하면 필요한 데이터만 노출할 수 있으므로 ②가 맞다.
콘텐츠 기록콘텐츠 정보
- 자료 유형
- 편집복원
- 검수 상태
- 내용 검수 완료
- 최종 검수
- 2026-08-21