PostgreSQL 사용자란
PostgreSQL 의 Role 은 개념상 운영체제 사용자와 다릅니다.
PostgreSQL 의 사용자는 소유하고 있는 DATABASE 안에 있는 객체의 권한을 제어할 수 있습니다.
PostgreSQL 사용자 생성하는 방법
psql 에서 CREATE USER 구문으로 사용자를 생성합니다.
psql 에서 ALTER USER 구문으로 사용자 비밀번호를 초기화 합니다.
CREATE USER 구문에서 PASSWORD 옵션을 사용하여 비밀번호를 초기화를 합니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
postgres=# CREATE USER psqluser;
CREATE ROLE
postgres=# SELECT * FROM PG_SHADOW;
usename | usesysid | usecreatedb | usesuper | userepl | usebypassrls | passwd | valuntil | useconfig
----------+----------+-------------+----------+---------+--------------+--------+----------+-----------
postgres | 10 | t | t | t | t | | |
psqluser | 16386 | f | f | f | f | | |
(2 rows)
postgres=# ALTER USER psqluser PASSWORD 'psqluser';
ALTER ROLE
postgres=#
postgres=# SELECT * FROM PG_SHADOW;
usename | usesysid | usecreatedb | usesuper | userepl | usebypassrls | passwd | valuntil | useconfig
----------+----------+-------------+----------+---------+--------------+-------------------------------------+----------+-----------
postgres | 10 | t | t | t | t | | |
psqluser | 16386 | f | f | f | f | md5fc6ceef1c4e163530a3912da2f2aa9b9 | |
(2 rows)
|
cs |
PostgreSQL 롤 권한 부여하는 방법
ALTER USER 구문을 사용하여 롤 권한을 부여할 수 있습니다.
1
2
3
4
5
6
7
8
9
|
postgres=# ALTER USER psqluser CREATEDB;
ALTER ROLE
postgres=# \du
List of roles
Role name | Attributes | Member of
-----------+------------------------------------------------------------+-----------
postgres | Superuser, Create role, Create DB, Replication, Bypass RLS | {}
psqluser | Create DB | {}
|
cs |
롤 권한 리스트는 아래와 같습니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | ALTER USER 이름 [ [ WITH ] 옵션 [ ... ] ] 옵션에서 사용할 수 있는 것: SUPERUSER | NOSUPERUSER | CREATEDB | NOCREATEDB | CREATEROLE | NOCREATEROLE | CREATEUSER | NOCREATEUSER | INHERIT | NOINHERIT | LOGIN | NOLOGIN | REPLICATION | NOREPLICATION | CONNECTION LIMIT connlimit | [ ENCRYPTED | UNENCRYPTED ] PASSWORD '비밀번호' | VALID UNTIL 'timestamp' | cs |
'Database > PostgreSQL' 카테고리의 다른 글
[PostgreSQL] PostgreSQL SQL 덤프 방식의 백업과 복원 (0) | 2021.04.02 |
---|---|
[PostgreSQL] PostgreSQL Peer authentication failed for user 에러 (0) | 2021.03.14 |
[PostgreSQL] PostgreSQL 데이터베이스 생성 (0) | 2021.03.14 |
[PostgreSQL] PostgreSQL 다운로드 및 설치하기 (0) | 2021.03.14 |
[PostgreSQL] PostgreSQL 소개 (0) | 2021.03.14 |