postgres 서버에서 하나의 데이터베이스에만 액세스 할 수있는 postgres 사용자를 만들고 싶습니다.사용자가 다른 데이터베이스와 다른 데이터베이스의 테이블을 볼 수 없게하는 방법은 무엇입니까?
현재 내 흐름은 다음과 같습니다
create database database1;
create user user1 with password 'pass';
grant all privileges on database database1 to user1;
그러나 사용자 1은 여전히 정보를 볼 수 해당 사용자를 방지 할 수있는 방법이 있나요 등 DBS, 사용자 테이블의 목록을 볼 수 있습니다? 사용자는 해당 db에 쓰고 읽을 수 있어야합니다.
고마워요.
사용자가 우리 측에서 dbs를 생성하게됩니다. 우리는 사용자가 데이터 프라이버시/보안의 척도로서 서로 다른 데이터베이스, 테이블 이름 등을 볼 수 있기를 원합니다. – Dan
사용자가 자신의 데이터베이스가 아닌 데이터베이스의 테이블을 나열 할 수있는 것은 좋지 않습니다. – harmv
확실하게 원하지 않는 데이터를 제공합니다. 예를 들어 * "cicallc"*라는 데이터베이스는 "Cica Llc"가 고객임을 나타낼 수 있습니다. "cicaalfresco"라는 데이터베이스는 귀하가 무엇을하고 있는지를 나타낼 수 있습니다. 데이터베이스의 수는 시스템에서 몇 명의 사용자 (= 고객)가 있는지 보여 줄 수 있습니다. 등등. PostgreSQL 개발자의 개념상의 실수입니다. 평범한 사용자는 자신이해야 할 일에만 액세스 할 수있는 환경에서 자신을 발견해야합니다. – peterh