
Oracle 데이터베이스를 운영할 때, 다양한 사용자(스키마)와 그에 따른 권한 및 오브젝트 관리가 필수적입니다. 특히, 사용자와 관련된 메타데이터를 체계적으로 관리하면 보안과 운영의 안정성을 크게 높일 수 있습니다. 이러한 정보를 한눈에 파악할 때 유용한 뷰가 바로 ALL_USERS 뷰입니다.
ALL_USERS 뷰란?
ALL_USERS 뷰는 데이터베이스에 존재하는 모든 사용자(스키마) 정보를 보여주는 뷰로, 사용자가 접근할 수 있는 모든 계정 정보를 제공합니다. 사용자별로 어떤 오브젝트가 존재하는지 확인할 때 기본적으로 참조되는 뷰이며, 각 스키마 관리의 출발점 역할을 합니다.
왜 중요한가?
사용자 관리는 데이터베이스 보안의 핵심입니다. 불필요하거나 잘못된 사용자 계정은 내부 보안 위험을 증가시킵니다. ALL_USERS 뷰를 통해 계정 목록과 생성 시점을 주기적으로 점검하면, 불필요한 계정을 식별하고 적절히 관리할 수 있습니다.
주요 컬럼 설명
| 컬럼명 | 설명 |
|---|---|
| USERNAME | 사용자 이름(스키마 이름) |
| USER_ID | 고유 사용자 ID |
| CREATED | 계정 생성 일시 |
활용 예제
예를 들어, 최근에 생성된 사용자 계정을 확인하고 싶다면 아래와 같은 쿼리를 사용할 수 있습니다.
SELECT USERNAME, CREATED
FROM ALL_USERS
WHERE CREATED > SYSDATE - 30
ORDER BY CREATED DESC;
이 결과를 통해 최근 생성된 계정의 용도와 필요성을 검토하고, 불필요한 계정은 비활성화하거나 삭제할 수 있습니다.
비슷한 뷰와의 비교
| 항목 | DBA_USERS | ALL_USERS |
|---|---|---|
| 정보 범위 | 모든 사용자와 상세 정보(잠금 상태, 패스워드 등) | 모든 사용자(스키마) 기본 정보 |
| 활용 목적 | 보안 및 인증 정책 관리 | 스키마 기반 오브젝트 관리 및 점검 |
| 접근 권한 | DBA 권한 필요 | 일반 사용자도 접근 가능(권한 범위 내) |
실무 활용 전략
- 보안 감사: ALL_USERS 뷰를 활용해 불필요한 계정과 테스트용 계정을 식별하고, 주기적으로 비활성화 또는 삭제 작업을 수행합니다.
- 스키마 자산 관리: 사용자별 소유 오브젝트 점검과 스키마 정리 작업에 활용합니다.
- 계정 생성 정책 수립: ALL_USERS 데이터를 기반으로 신규 계정 생성 시 승인 및 검토 절차를 강화할 수 있습니다.
활용 시 주의사항
- 모든 사용자 계정이 활성화되어 있지는 않으므로, 실제 사용 여부는 DBA_USERS 등 다른 뷰와 함께 교차 점검해야 합니다.
- Oracle 버전과 패치에 따라 컬럼 정보가 달라질 수 있으니, 최신 문서를 참고해야 합니다.
- 계정 관리 정책 변경 시, 반드시 보안 팀 및 애플리케이션 담당자와 협의해야 합니다.
결론
ALL_USERS 뷰는 데이터베이스 사용자(스키마) 관리를 위한 핵심 도구로, 보안과 운영 안정성 확보에 기여합니다. 이를 주기적으로 활용하면 불필요한 계정을 체계적으로 관리할 수 있으며, 보안 사고를 사전에 예방할 수 있습니다. DBA와 보안 담당자라면 반드시 숙지하고 활용해야 할 중요한 뷰라고 할 수 있습니다.
출처: Oracle Database Security Guide, Oracle 19c/21c Reference Manual, DBA 실무 경험 기반 분석 자료.
'Database > Oracle' 카테고리의 다른 글
| [ORACLE] ALL_VARRAYS 뷰 심층 분석과 실무 활용 전략 (0) | 2025.07.06 |
|---|---|
| [ORACLE] ALL_USTATS 뷰 심층 분석과 실무 활용 전략 (0) | 2025.07.06 |
| [ORACLE] ALL_UPDATABLE_COLUMNS 뷰 심층 분석과 실무 활용 전략 (0) | 2025.07.05 |
| [ORACLE] ALL_UNUSED_COL_TABS 뷰 심층 분석과 실무 활용 전략 (0) | 2025.07.05 |
| [ORACLE] ALL_TYPE_ATTRS 뷰 심층 분석과 실무 활용 전략 (0) | 2025.07.05 |