[sql] 데이터베이스 사용자 계정의 권한 변경 이력 확인

데이터베이스 사용자 계정에 대한 권한 변경 이력을 확인하고 싶을 때는 DBA_AUDIT_TRAILDBA_OBJ_AUDIT_OPTS 테이블을 사용하여 변경된 권한에 대한 정보를 쿼리할 수 있습니다.

1. DBA_AUDIT_TRAIL 테이블

DBA_AUDIT_TRAIL 테이블은 데이터베이스에서 발생한 모든 운영체제 시스템 및 SQL 작업에 대한 감사 이벤트를 포함합니다. 권한 변경과 관련된 정보를 얻기 위해서는 DBA_AUDIT_TRAIL 테이블을 쿼리해야 합니다.

다음은 사용자 권한 변경에 관련된 정보를 얻기 위한 쿼리 예제입니다.

SELECT *
FROM DBA_AUDIT_TRAIL
WHERE ACTION_NAME LIKE '%ALTER USER%'
  AND OBJ_NAME = '[사용자 계정]';

이 쿼리는 DBA_AUDIT_TRAIL 테이블에서 ALTER USER 액션과 지정된 사용자 계정에 대한 변경 이력을 가져옵니다.

2. DBA_OBJ_AUDIT_OPTS 테이블

DBA_OBJ_AUDIT_OPTS 테이블은 데이터베이스 객체에 대한 감사 옵션을 포함하며, 권한 변경 관련 이벤트를 추적합니다. 다음은 해당 테이블을 활용한 쿼리 예제입니다.

SELECT *
FROM DBA_OBJ_AUDIT_OPTS
WHERE OBJ_NAME = '[사용자 계정]';

이러한 쿼리를 통해 권한을 변경한 사용자 및 변경 시간 등의 정보를 확인할 수 있습니다.

이렇게 함으로써 데이터베이스 사용자 계정의 권한 변경 이력을 확인할 수 있습니다.

참고 자료: https://docs.oracle.com/cd/B28359_01/server.111/b28320/statviews_2091.htm


관련 주제