코딩 공부/DB

[DB] 사용자 엑세스 제어

희원96 2022. 4. 11. 09:45

사용자 엑세스 제어

 

DCL (사용자를 관리를 하기 위한 언어)

다중 사용자 환경에서는 데이터베이스 엑세스 및 사용에 대한 보안을 유지 관리할 필요성이 있다.

Oracle Server 데이터베이스 보안을 사용하면 다음을 수행한다

- 데이터베이스 엑세스 제어

- 데이터베이스의 특정 객체에 대한 엑세스 권한 부여

- 오라클 데이터 딕셔너리에서 주고 받은 권한확인

- 데이터베이스 객체의 동의어 생성

 

권한

데이터베이스 보안:

  • 시스템 보안

-사용자 이름 및 암호, 사용자에게 할당된 디스크 공간, 사용자가 수행할 수 있는 시스템 작업 등 시스템 레벨의 데이터베이스 액세스 및 사용을 다룬다.

  • 데이터 보안

-데이터베이스 객체에 대한 액세스와 사용 및 각 객체에 대해 사용자가 수행할 수 있는 작업을 다룬다.

 

  • 시스템 권한 : 데이터베이스를 액세스할 수 있습니다.
  • 객체 권한 : 데이터베이스 객체의 내용을 조작할 수 있습니다.
  • 스키마 : 테이블, 뷰, 시퀀스 등과 같은 객체의 Collection입니다.

 

 

 

 

시스템 권한

- 100가지 이상의 권한을 사용할 수 있다.

- 데이터베이스 관리자는 다음과 같은 작업에 대해 상위 레벨의 시스템 권한을 가집니다.

 

사용자 생성

DBA는 CREATE USER문을 사용하여 사용자를 생성합니다.

-DBA는 CREATE USER문을 실행하여 사용자를 생성하는데 처음 생성된 사용자는 아무런 권한도 갖지 않는다.

-DBA는 해당 사용자에게 권한을 부여할 수 있는데 이 때 부여된 권한에 따라 사용자가 데이터베이스

레벨에서 수행할 수 있는 작업이 결정된다.

 

사용자 시스템 권한 부여

DBA는 생성된 사용자에게 특정 시스템 권한을 부여할 수 있다.

 

-DBA는 생성된 사용자에게 권한을 할당할 수 있다.

 

*이 권한을 사용하면 시스템을 만들 수 있다.*

객체 권한 취소

-REVOKE문을 사용하여 다른 사용자에게 부여된 권한을 취소합니다.

-WITH GRANT OPTION절을 통해 사용자에게 부여된 권한도 취소된다.

 

사용자 잠금

ALTER문을 통해 사용자를 제한할 수도 있고 해제할 수도 있다.

 

롤 ROLE

- 롤은 사용자에게 부여할 수 잇는 관련 권한을 하나로 묶어 명명한 그룹니다.

- 롤을 사용하면 권한 취소 및 유지 관리를 쉽게 수행할 수 있다.

- 사용자는 어러 롤을 액세스 할 수 있으며 동일한 롤이 여러 사용자에게 할당될 수도 있다.

- 일반적으로 데이터베이스 응용 프로그램에 대해 롤을 생성한다.

롤을 생성하고 롤에 권한을 부여한다.

 

암호 변경

- DBA는 사용자 계정을 생성하고 암호를 초기화한다.

- ALTER USER문을 사용하여 암호를 변경할 수 있다.

 

객체 권한

- 객체 권한은 객체마다 다릅니다.

- 소유자는 객체에 대한 모든 권한을 갖습니다.

- 소유자는 자신의 객체에 대한 특정 권한을 부여할 수 있다.