ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [MariaDB] Role 권한 부여
    IT/etc 2022. 3. 16. 21:59

    MariaDB의 Role 권한 부여에 대해 알아보자!


    MariaDB 10.0.5 버전 부터는 각각의 권한들을 사용자에게 할당하는 방식뿐만 아니라 개별 권한들을 묵어서 하나의 그룹(Role) 권한으로 만들고 그 그룹 권한을 개별 사용자에게 부여하는 방식의 권한 관리도 지원한다. Oracle Database 에서 Role 권한 부여 하는 방식을 이 번 버전부터 지원하게 한 거 같다.
    Create Role 명령이 실행될 때 마다 mysql 데이터베이스의 user 테이블에 그룹 권한의 정보가 저장되는데, 이때 mysql.user 테이블의 is_role 컬럼이 "Y"로 설정된다. 즉 mysql.user 테이블에 그룹 권한과 사용자 정보가 저장된다.

     

    For example :
     
    Role 생성
    sql> CREATE ROLE dba;
    sql> CREATE ROLE developer WITH ADMIN {CURRENT_USER | CURRENT_ROLE | USER | ROLE}
     
     
    Role에 권한 부여
    sql> GRANT ALL PRIVILEGES ON *.* TO dba;
    sql> GRANT SELECT, INSERT, UPDATE, DELETE ON 'db'.* TO developer;
     
     
    사용자에게 Role 권한 부여
    sql> GRANT dba TO 'user'@'%';
     
     
    위와 같이 사용자에게 Role 권한 부여를 하여도 그룹 권한이 적용 되지 않을 수 있다. 10.0 버전에서도 아직 권한 부여 후 권한 자동 인식이 되지 않았다.
    그래서 아래와 같은 명령어가 추가 되어야 한다.
     
     
    Role 권한 조회
    sql> SELECT CURRENT_ROLE;
    sql> SET ROLE dba;
    sql> SELECT CURRENT_ROLE;
     
     
    그리고 ROLE 권한은 2개 이상 부여 되지 않는다. 하나의 ROLE 권한 만 가질 수 있다.
     
    -끝-
Designed by Tistory.