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 9902 게시물 읽기
No. 9902
권한 관련
작성자
postgres
작성일
2017-10-13 11:56ⓒ
2017-10-13 11:56ⓜ
조회수
6,249

권한 관련 질문 드립니다.

postgresql 에  testDB 라는 DB가 있고 A, B 유저가 있습니다.

그리고 testDB 안에는  schema_A라는 스키마가 있고 그 안에 table_a, table_ b, table_c 라는 테이블들이 있습니다.

 

이때, testDB 의 schema_A스키마에 있는 table_b 테이블만 B라는 유저가 select 가능하게 권한을 주려합니다.

testDB를 슈퍼유저로 접속해서 

testDB=# GRANT USAGE ON SCHEMA schema_A TO B;
testDB=# grant select on schema_A.table_b to B;
 
이렇게 주고 testDB를 B류저로 접속해서 아래와 같이 search_path잡아줍니다.
testDB=> ALTER USER B SET search_path TO "$user", schema_A, public;
 
이렇게 해주고 testDB를 B유저로 재 접속 하고 \dt로 보면
table_a, table_b, table_c 세 테이블이 전부 보이게 되고 이중에 table_b 테이블만 select * from table_b; 가 가능하고
다른 두 테이블은 불가능하게 됩니다.
 
여기서 제가 원하는것은 
testDB를 B유저로 접속해서 \dt로 봤을때 부터 table_b 테이블만 보이고 다른 두 테이블은 안보이게 하고싶은데요,
위에 주황색 쿼리에서 usage권한을 스키마가 아닌 table_b라는 테이블에게만 주는 방식으로 바꿔야 할것같은데
방법을 모르겠습니다.
 
아시는분 계신가요?
 
 
 

 

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

usage schema 권한이 있어야 /dt에서 조회가능하며

원하시는 부분에 대해서는 해결이 불가합니다. ㅋ

김주왕(kimjuking)님이 2017-10-13 13:47에 작성한 댓글입니다.

usage권한 자체가 테이블이 아닌 schema에 주는 권한이라 못주는군요..

감사합니다! 

postgres님이 2017-10-13 13:59에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
9905함수 여러개를 하나의 트랜잭션에서 실행 안되나요? [2]
지현명
2017-10-31
6334
9904데이터베이스 기출문제 도와주실분 찾습니다. [4]
김성기
2017-10-24
6502
9903테이블에 데이타 넣기 [6]
이미나
2017-10-17
6634
9902권한 관련 [2]
postgres
2017-10-13
6249
9901update 쿼리 속도에 관해 궁금한 점이 있습니다!! [2]
그레아티
2017-10-12
6637
9900오라클 meger ==> postgresql 변환 [1]
김미현
2017-10-12
7190
9898pgagent 설치방법 아시는분 계신가요? [5]
postgres
2017-10-12
8525
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.050초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다