일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Azure AD
- 가상화
- Microsoft Azure
- 메일보안
- Microsoft
- cloud
- SE
- 시트릭스
- network
- Linux
- windows server
- 컴퓨터
- 시스템엔지니어
- Azure
- 클라우드엔지니어
- 네트워크
- aws
- Exchange Online
- Entra ID
- 시스템 엔지니어
- 리눅스
- It
- windows
- Server
- Microsoft 365
- Docker
- cloud engineer
- 리눅스마스터1급
- 클라우드
- 그룹정책
- Today
- Total
Cloud System Engineer
사용자 관리 본문
우리가 취업을 하게되면 데이터베이스를 만질일이 있을 것이다.
DB관리자가 아닌 모든 직원권한이 같다면 데이터가 수정되거나 삭제되거나 문제가 발생하는데
이를 방지하기 위해 사용자마다 권한을 달리 줘야한다.
리눅스에서도 root계정을 제외한 다른계정에 특정 권한을 주듯이 mysql도 똑같이 하면 된다.
1.팀장
2.사장님
3.사원
이렇게 계정을 만들어보고 권한을 부여 하겠다.
add acount 를 눌러서 팀장이라는 아이디를 만들었다.
admin~ roles 을 눌러보면 각각 권한을 선택할 수 있다.
팀장이란 사람은 모든 권한을 주기 위해 DBA를 선택하면 전체 권한을 얻게 된다.
사장님이라는 계정을 생성하고
마찬가지로 roles를 눌러서 이번엔 mysql 안에있는 모든 DB를 읽기 권한만 부여 하겠다.
이번엔 사원이라는 계정을 만들고
roles 가아닌 프리빌리지스를 클릭해준다.
해당 테이블을 선택할 수 있다.
저는 shop_db 테이블 안에있는 상품 테이블과 , 고객 테이블에 대한 읽기,쓰기 권한과 ,저장프로시저 변경하기 권한을 부여했다.
결과
다음은 사원이 employees 라는 테이블에 테이블 읽기만 권한을 준다.
아이디를 만들었으면 팀장인 아이디로 접속해준다.
팀장은 DBA 권한을 가지고 있어서 모든권한을 쓸 수 가 있다.
-sampledb 데이터 베이스 생성
-sampledb 데이터 베이스 제거
사장님 아이디로 접속한다.
권한은 읽기만 허용된다.
-sampledb 생성
데이터 베이스를 생성할려고해도 권한이 없기 때문에 거부가 된다.
읽기 권한만 가지고 있어서
읽기만 가능하다.
shop_db 안에있는 member tbl 테이블을 삭제하려고하지만
읽기권한만 있어서 거부 된다.
사원 아이디로 접속해보자
사원의 권한은
shop_db의 상품 테이블,고객 테이블 읽기,쓰기 권한을 가지고있고
employees 데이터베이스 읽기만 허용된다.
허용된 데이터 베이스만 보여지고
shop_db의 고객 정보를 볼 수 있고
삭제까지 가능하다.
'mysql > MySQL' 카테고리의 다른 글
SQL기본 - WHERE 절 (0) | 2021.01.29 |
---|---|
select 문 (0) | 2021.01.29 |
데이터 베이스 모델링 (0) | 2021.01.25 |
데이터 베이스 백업 (0) | 2021.01.25 |
데이터 베이스 인덱스 (0) | 2021.01.25 |