GRANT : 권한 부여
데이터를 ACESS 하거나, 조작 하는 권한이다.
→ 특정데이터를 아무나 조회하면 안되므로, DBA 들이 권한 관리를 철저하게 한다.
현재 접속해 있는 유저가 누구인지 확인 하는 방법
SHOW USER ;
유저 생성하기
CREATE USER C##SMITH
IDENTIFIED BY TIGER ;
접속 밑에 초록색+ ( 새접속) 을 클릭하여 새로 생성한 c##smith 에 로그인 해 준다.
이름과, 비밀번호를 입력한후 테스트를 거쳐서 성공 ! 하면 접속하면 되고,
sqldeveloper 접속할때 접속 버튼 안보이면 저장을 누르면 된다.
만약 테스트 시 IO 오류가 뜬다면 명령 프롬포트 창에 들어가서 IPCONFIG 들어가고 IP4 주소를 복사 한뒤,
LOCALHOST 를 지우고 IP 주소로 붙여주어 하면 접속 성공된다.
simth 유저에게 접속할 수 있는 권한을 부여
grant connect to c##smith;
유저가 잘 생성되어졌고 권한이 잘 부여되었는지 확인하기
select *
from dba_users;
부여 확인
select *
from dba_role_privs
where grantee='C##SMITH';
→ GRANTED_ROLE 이 : CONNECT 로 되어있는것을 확인 가능하다.
→ 역할이 부여 받았기 때문에 접속할 수 있는 권한이 생겼습니다.
이렇게 만들고 나게 되면 접속할 수 있는 권한만 부여 받은거라, 테이블 생성이라던지 다른 활동은 불가하다.
따라서 테이블 생성할 수 있는 권한을 부여해야한다.
grant create table to c##smith;
→ 권한을 줄 수 있는 유저로 가서 권한을 부여해 준다.
내가 접속한 유저가 가지고 있는 권한 리스트를 확인하는 방법
select *
from session_privs;
→ 권한을 확인하고 내가 어디까지 일을 할 수 있는지 본다. → 만약 권한이 부족하면 권한을 늘려달라고 요청 해야한다.
create session → 12c 이후에 생긴 권한인데 클라우드 db 로 구성되었다는 뜻
create session → connect 할 수 있는 권한
REVOKE : 권한 취소
smith 유저의 create table 권한 취소하기.
revoke create table from c##smith ;
king 유저의 create table, connect 권한 취소하기
revoke create table, connect from c##king;
'Oracle > SQL' 카테고리의 다른 글
SQL 알고리즘 (삼각형, 마름모, 사각형 구현하기) (0) | 2021.12.05 |
---|---|
SQL 알고리즘 ( 구구단 구현하기) (0) | 2021.12.05 |
SQL - WITH 절 사용 서브쿼리 Factoring (0) | 2021.12.05 |
SQL - WITH 절을 이용한 알고리즘 문제 (1) 구구단출력,log, 주사위던지기(랜덤)확률 문제풀기 (0) | 2021.12.05 |
SQL -WITH 절 (가상테이블) (0) | 2021.12.05 |