[DB] MySQL - 권한 할당 및 해제[GRANT/REVOKE]

|
MySQL에서 DATABASE에 사용자의 권한을 할당하고 해제하는 명령어를 살펴보도록 하자.

[GRANT]
GRANT 권한명 on [DB].[TABLE] to 계정명;

ex)
 grant all privileges on *.* to 'kjk3071'@'%' identified by 'kjk3071';
 grant all privileges on *.* to 'kjk3071'@localhost identified by 'kjk3071';


GRANT 혹은 REVOKE 사용시에 적용하고자 하는 권한명과 DB명 ID/PW 등을 적용할 수 있다.

[REVOKE]
REVOKE 권한명 on [DB].[TABLE] from 계정명;

ex)
 revoke all on *.* from 'kjk3071'@'%';
 revoke all on *.* from 'kjk3071'@localhost;



GRANT로 권한할당 시 with grant option을 추가로 적어줄 경우 GRANT 명령어를 사용할 수 있는 권한도 할당된다.
 
권한의 해제는 하단의 revoke grant option을 사용하여 해제한다. 
 

[GRANT OPTION]
 grant all privileges on *.* to 'kjk3071'@'%' identified by 'kjk3071' with grant option;

 revoke grant option on *.* from 'xxx'@localhost;



계정별 권한의 조회는 하단의 명령어를 통해 가능하다.(mysql DB에 접근권한이 있어야만 조회가 가능하다.)

show grants for 'kjk3071'@localhost;



계정별 적절한 DB 접근성을 위해 제대로된 권한 할당을 사용토록 하자.

And