본문 바로가기
PostgreSQL

[PostgreSQL] user 조회, 생성, 변경, 삭제

by Ssun's 2021. 3. 26.

1. User 조회

  - 유저 생성 위해 superuser권한을 가지고 있어야 함

  - PostgreSQL의 superuser의 default 계정은 postgres

  - SELECT * FROM PG_USER;     OR     SELECT * fROM PG_SHADOW;      OR     \du  

  - \du를 입력하면 user들이 가지고 있는 role 확인 가능

 

   ※ ROLE

      1) SUPERUSER : user들을 생성하고 권한을 부여해 주는 user

      2) CREATE ROLE : user가 새로운 role을 정의하는 기능을 생성

      3) CREATE DB : user가 db를 생성하는 권한을 부여

      4) REPLICATION : user가 db를 실시간으로 복사

 

 

2. User 생성

  - CREATE USER user명 [[with] option [...]]

  - ex) CREATE USER testuser PASSWORD 'test' SUPERUSER;

 

  ※ OPTION

     1) SUPERUSER | NOSUPERUSER

        - superuser 여부

     2) CREATEDB | NOCREATEDB

        - db 생성 권한 여부

     3) CREATEUSER | NOCREATEUSER

        - user 생성 권한 여부

     4) INHERIT | NOINHERIT

        - db의 권한을 다른 구성원들에게 상속 (default는  inherit)

     5) LOGIN | NOLOGIN

        - login 여부

     6) CONNECTION LIMIT connlimit

        - 로그인 시 동시연결 제한 설정 (default는 -1(제한없음))

     7) [ENCRYPTED | UNCRYPTED] PASSWORD "password"

        - "password"를 입력하고 인증이 필요없는 경우 옵션 생략 가능

 

  - CREATE ROLE USER명; 으로 생성가능

  - CREATE ROLE USER명 SUPERUSER LOGIN;                -> SUPERUSER권한 가진 USER 생성

  - CREATE ROLE_USER LOGIN;                                   -> LOGIN 가능한 USER 생성

  - CREATE ROLE USER명;                                          -> \du 했을 때 Cannot login 으로 출력

 

 

 

 

 

3. User 변경

  - ALTER USER user명 [[WITH] option [...]]

  - option은 create user와 동일

  - user명 변경

    : alter user testuser rename to testuser2;

  - password 변경

    : alter user testuser password 'testtest';

  - 권한 변경

    : alter user testuser with superuser;

 

 

 

4. User 삭제

  - DROP USER user명;

 

 

 

출처 : www.gurubee.net/lecture/2940

반응형

댓글