database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
ㆍPostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
PostgreSQL Q&A 10358 게시물 읽기
No. 10358
[디린이] Postgresql13 DB계정 권한 변경하는 방법
작성자
디린이
작성일
2022-12-26 19:50
조회수
1,561

안녕하세요. DB를 처음 공부하고 실습하고있는 디린이입니다. "sqladmin" 이라는 DB계정을 DDL 문으로 생성했습니다. (CREATE USER) 생성했습니다 

그런데 이 계정이 DB에 대한 위험명령어 (DROP TABLE, DROP DB) 을 실행못하게 이러한 DDL 명령 권한을 제거하고싶은데요.

 

구글링해보면 REVOKE 명령어가 이러한 권한을 제어한다고하는데, 이는 DML (Delete, Insert, Select 등) 에 대한 권한만 제어하는 것 같습니다. 저는 한단계 위인 DROP 단계의 권한을 제거하고싶습니다.

 

\du 으로 계정 권한속성 확인해보면 "sqladmin" 계정에 대해 superuser, createrole, createdb 권한은 삭제해놓은 상태인데도,

DROP TABLE이 수행가능하여 어떻게 권한을 제거해야할지 모르겠습니다. 아시는분계시면 디린이를 도와주시면 감사드리겠습니다..

이 글에 대한 댓글이 총 1건 있습니다.

PostgreSQL은 기본적으로 자기 소유의 객체는 이미 만들어졌다면, 그 소유주에 대한 삭제 권한을 회수해도 그 객체의 소유주는 삭제할 수 있습니다.


즉 만든 테이블이 불의의 사고로 삭제 되지 않도록 하는 정책을 짠다면,

먼저 데이터베이스는 슈퍼유저 권한으로 만들고,

그 데이터베이스에서 테이블을 만들 수 있는 권한을 가진 role을 만들고,

그 테이블을 사용만 할 수 있는 권한을 가진 role을 만들어 사용하는 것이 일반적입니다.

추가로 읽기 전용 권한을 가진 role을 만들어 쓰기도 합니다.

김상기(ioseph)님이 2022-12-27 11:21에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
10383[질문] logical replication 구성에서, 복제 time-stamp를 확인하고 싶습니다. [1]
이창규
2023-01-26
1281
10382ERROR: uncommitted xmin 4194661 from before xid cutoff 62528296 needs to be frozen 관련 문의 사항 [9]
반지현
2023-01-12
1528
10381Postgresql Auto Failover (PAF) 관련 질문 [1]
카비
2023-01-02
1672
10358[디린이] Postgresql13 DB계정 권한 변경하는 방법 [1]
디린이
2022-12-26
1561
10356데이터 분석함수(집계, 그룹, 윈도우, ..) 중복 사용법 질문 [2]
포스트그레스
2022-12-14
1679
10355DB 삭제후 Slave DB에서만 지속적인 slow query 발생 [1]
형씨
2022-12-07
1735
10354ora2pg blob -> bytea 전환시 blob 크기 2배 되는 현상 [3]
조수연
2022-11-16
1867
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.051초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다