사용자 조회
SELECT * FROM PG_SHADOW;
select * from pg_roles ;
사용자 권한 조회
\\du
| ROLE |
기능 |
비고 |
| Superuser |
USER 생성과 권한 부여 가능 및 아래 기능 전부 가능 |
관리자 |
| Create role |
새로운 ROLE 정의 기능 |
관리자 |
| Create DB |
DB 생성 권한 부여 |
관리자, 개발자 |
| Replication |
DB를 실시간으로 복사하는 기능 |
관리자, 개발자 |
| Bypass RLS |
모든 row-level security 우회 가능(pg_dump 실행) |
관리자 |
USER 생성
- User 생성은
superuser 혹은 create role 권한을 가진 사용자만 가능하다.
- User 생성은
CREATE문을 사용한다.
CREATE USER username [[WITH] option [...]];
-- 예시 1. 일반 user 생성
CREATE USER green;
-- 예시 2. superuser 권한을 가진 생성
CREATE USER brown SUPERUSER;
-- 예시 3. 비밀번호 설정하며 user 생성
CREATE USER red PASSWORD 'red';
| Option |
Default |
Description |
| SUPERUSER |
NOSUPERUSER |
NOSUPERUSER |
| CREATEDB |
NOCREATEDB |
NOCREATEDB |
| CREATEUSER |
NOCREATEUSER |
NOCREATEUSER |
| INHERIT |
NOINHERIT |
INHERIT |
| PASSWORD ‘password’ |
null |
USER의 비밀번호 생성 |
| VALID INTIL ‘timestamp’ |
|
비밀번호 유효기간 (생략시 제한없음) |
USER 수정
ALTER USER name [[WITH] option [...]];
-- 예시 1. 이름 변경
ALTER USER brown RENAME to yellow;
-- 예시 2. 비밀번호 변경
ALTER USER yellow WITH PASSWORD 'yellow';
USER 삭제