PostgreSQL 기본강좌
USER 생성 0 1 96,665

by PostgreSQL PostgreSQL USER [2015.10.30]


DATABASE에서 USER는 DATABASE를 사용하는 주체로서 OS를 운영하는 USER와는 분리되어 있습니다. USER는 소유하고 있는 DATABASE안에 있는 OBJECT의 권한을 변경하고 제어할 수 있습니다.

USER 조회

유저를 생성하기 위해서는 먼저 DATABASE에서 SUPERUSER권한을 가지고 있어야 합니다. PostgreSQL에 SUPERUSER의 default 계정은 postgres입니다.

SELECT * FROM PG_SHADOW;

혹은

\du

위의 SELECT * FROM PG_SHADOW를 입력하면 현재 등록되어 있는 USER들을 확인 할 수 있습니다.

  • [그림] psql을 이용한 USER정보 확인
  • PostgreSQL-USER 조회

\du를 입력하면 USER들이 가지고 있는 ROLE들을 확인 할 수 있습니다. SUPERUSER인 postgres는 SUPERUSER, CREATE ROLE, CREATE DB, REPLICATION기능을 가지고 있습니다.

ROLE 기능
SUPERUSER USER들을 생성하고 권한을 부여해 주는 USER
CREATE ROLE USER가 새로운 ROLE을 정의하는 기능을 생성
CREATE DB USER가 DB를 생성하는 권한을 부여하는 기능
REPLICATION USER가 DB를 실시간으로 복사하는 기능

CREATE USER

CREATE USER username [[ WITH ] option [ ... ]]
where option can be:

유저를 생성할 때는 CREATE USER ‘username’을 입력하여 USER를 생성합니다. username 뒤에는 여러 가지 option이 추가될 수 있습니다.

option은 다음과 같습니다.

Option Option
SUPERUSER |
NOSUPERUSER
해당 USER를 SUPERUSER권한을 주는 것입니다. 따로 지정하지 않을 경우 DEFAULT값으로 NOSUPERUSER가 됩니다.
CREATEDB |
NOCREATEDB
DATABASE를 생성하는 권한을 정의합니다.
CREATEDB를 선택할 경우 USER는 DATABASE를 생성할 권한이 부여됩니다.
NOCREATEDB를 선택할 경우 USER는 DATABASE를 생성할 권한이 거부됩니다.
따로 정의 되어있지 않을 경우 NOCREATEDB값이 default값으로 설정 되어 있습니다.
CREATEUSER |
NOCREATEUSER
스스로 새로운 유저를 생성하는 권한을 부여하는 것을 정의합니다.
CREATEUSER를 선택할 경우 USER를 생성할 수 있는 권한이 부여됩니다.
NOCREATEUSER를 선택할 경우 USER를 생성할 권한이 거부됩니다.
INHERIT |
NOINHERIT
DATABASE의 권한을 다른 구성원들에게 상속하는 역할을 합니다.
따로 정의 되어있지 않을 경우 INHERIT 값이 default값으로 설정 되어 있습니다.
LOGIN |
NOLIGIN
USER가 LOGIN을 하는 역할을 부여한다.
CONNECTION LIMIT connlimit 로그인 할 때 동시연결을 지원 하는 기능으로 default값으로 -1(제한없음)로 설정 되어 있습니다.
[ENCRYPTED | UNCRYPTED ]
PASSWORD 'password'’
‘password’를 입력하고 인증이 필요 없는 경우 옵션을 생략이 가능합니다.

  • [User 생성 예제]
  • 
    CREATE USER TEST1;
    
    

  • [그림] USER 생성 결과 화면
  • PostgreSQL-USER 생성

  • [User 와 password 생성 예제]
  • 
    CREATE USER TEST2 PASSWORD 'TEST2';
    
    

  • [그림] USER PASSWORD 생성 결과 화면
  • PostgreSQL-USER 생성

  • [User 와 DB생성 권한 설정 예제]
  • 
    CREATE USER TEST3 PASSWORD 'TEST3' CREATEDB;
    
    

  • [그림] USER DB생성 권한 설정 결과 화면
  • PostgreSQL-USER 생성

- 강좌 URL : http://www.gurubee.net/lecture/2939

- 구루비 강좌는 개인의 학습용으로만 사용 할 수 있으며, 다른 웹 페이지에 게재할 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^

- 구루비 강좌는 서비스 제공을 위한 목적이나, 학원 홍보, 수익을 얻기 위한 용도로 사용 할 수 없습니다.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입