━━━━ ◇ ━━━━
정보보안실무/데이터베이스

[MariaDB] 사용자 조회, 생성, 권한 부여

728x90
반응형

1. User 조회

MySQL 기본 스키마 user테이블에서 아래 명령어들을 사용 가능하다. 

 

use mysql;  ☞ mysql schema 선택

select user, host from user;  ☞ 사용자 목록 조회

 

 

2. User 생성

create 명령어를 사용해서 사용자를 추가한다. 내외부 접근 및 특정 ip 및 ip 대역대도 설정 가능하다. 

 

create user '사용자이름'@'host' identified by '비밀번호';  기본

create user '사용자이름'@'localhost' identified by '비밀번호';  ☞ 내부 접근 허용

create user '사용자이름'@'%' identified by '비밀번호';  ☞ 외부 접근 허용

create user '사용자이름'@'123.456.789.001' identified by '비밀번호';  ☞ 특정 ip만 접근 허용

create user '사용자이름'@'123.456.0.0' identified by '비밀번호';  ☞ 특정 ip 대역 접근 허용

create user '사용자이름'@'123.456.%' identified by '비밀번호';  

 

 

3. User 권한 부여

grant 명령어를 사용해서 권한을 준다. 

 

grant all privileges on *.* to '사용자'@'localhost';  

모든DB,  모든 테이블에 대한 모든 접근 권한 부여

 

grant all privileges on DB이름.* to '사용자'@'localhost';  

 특정DB,  모든 테이블에 대한 모든 접근 권한 부여

 

grant all privileges on DB이름.테이블명 to '사용자'@'localhost';  

 특정DB,  특정 테이블에 대한 모든 접근 권한 부여

 

grant select on DB이름.테이블명 to '사용자'@'localhost';  

 특정DB,  특정 테이블에 대한 select 권한 부여

 

grant select, insert on DB이름.테이블명 to '사용자'@'localhost';  

 특정DB,  특정 테이블에 대한 select, insert 권한 부여

 

grant update(컬럼1, 컬럼2) on DB이름.테이블명 to '사용자'@'localhost'; 

 특정DB,  특정 테이블에 대한 럼1과 컬럼2의 update 권한 부여

 

 

4. User 생성 및 권한 부여 동시에 하는 방법

grant all privileges on *.* to '사용자'@'localhost' identified by '비밀번호';  

 모든DB,  모든 테이블에 대한 모든 접근 권한 부여

 

 

5. 권한 반영

권한을 부여 했다면 꼭 권한을 반영해줘야한다. 부여한 권한들을 저장한다고 생각하면 쉽다.

FLUSH PRIVILEGES;

 

728x90
반응형
COMMENT