Belajar PostgreSQL 4
Perkerjaan Database Administrator (DBA) cukuplah sulit, dari menambah user, menambah group, menjaga keamanan database dll. Tapi disinilah seni dari DBA. Disini saya akan berbagi ilmu mengenai pembuatan user dan group di PostgreSQL Caranya adalah:
Kita harus masuk terlebih dahulu ke User postgres, karena pemberian hak kepada user lain harus melalui user postgres.
postgres@darkstar:~$ psql -U postgres -W
Password FOR user postgres:
psql (8.4.2)
Type "help" FOR help.
postgres=#Melihat perintah apa saja yang terkandung dalam CREATE USER, Anda bisa melihat dengan menambah option \h CREATE USER:
postgres=# \h CREATE USER;
Command: CREATE USER
Description: define a new DATABASE role
Syntax:
CREATE USER name [ [ WITH ] OPTION [ ... ] ]
WHERE OPTION can be:
SUPERUSER | NOSUPERUSER
| CREATEDB | NOCREATEDB
| CREATEROLE | NOCREATEROLE
| CREATEUSER | NOCREATEUSER
| INHERIT | NOINHERIT
| LOGIN | NOLOGIN
| CONNECTION LIMIT connlimit
| [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password'
| VALID UNTIL 'timestamp'
| IN ROLE rolename [, ...]
| IN GROUP rolename [, ...]
| ROLE rolename [, ...]
| ADMIN rolename [, ...]
| USER rolename [, ...]
| SYSID uid
Command: CREATE USER MAPPING
Description: define a new mapping of a user TO a FOREIGN server
Syntax:
CREATE USER MAPPING FOR { username | USER | CURRENT_USER | PUBLIC }
SERVER servername
[ OPTIONS ( OPTION 'value' [ , ... ] ) ]Postgres meletakkan security-nya pada file pg_hba.conf, Anda bisa lihat disini
vi /usr/local/pg80/data/pg_hba.conf
Secara default Postgres memberikan hak akses kepada setiap user tanpa mengisikan password:
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 trust
# IPv6 local connections:
host all all ::1/128 trustGunakan option password dimana proses otorisasi diterapkan pada user yang akan kita buat:
# "local" is for Unix domain socket connections only
local all all passwordDisini saya akan membuat Group java, untuk memudahkan dalam pengelompokan otoritas user:
postgres=# CREATE GROUP java;
CREATE ROLESekarang saya mau membuat user tundra, lalu dimasukkan kedalam Group java:
postgres=# CREATE USER tundra password 'tundra' in group java;
CREATE ROLEDisini saya memberikan database khusus untuk belajar java, dengan nama database latihan_java:
postgres=# CREATE DATABASE latihan_java;
CREATE DATABASEUntuk memastikan apakah user tundra telah aktif, Anda dapat melakukan langkah seperti dibawah ini:
postgres=# \c latihan_java tundra
Password FOR user tundra:
psql (8.4.2)
You are now connected TO DATABASE "latihan_java" AS user "tundra".
latihan_java=>












/rating_on.png)
/rating_half.png)
(3.50 out of 5)















