사용자 조회
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 삭제