PostgreSQL 설정과 관련하여 무언가가 빠져 있어야합니다. 내가하고 싶은 것은 특정 사용자가 내가 지정한 데이터베이스에만 액세스 할 수 있도록 서로 격리 된 여러 데이터베이스와 사용자를 만드는 것입니다. 그러나 내가 결정할 수 있듯이 생성 된 모든 사용자는 특정 권한을 부여하지 않고도 모든 데이터베이스에 액세스 할 수 있습니다.
Ubuntu Server 12.04에서 수행하는 작업은 다음과 같습니다.
- apt-get postgresql 설치
- sudo -u postgres createuser -DRSP mike1 (새 사용자의 비밀번호 지정)
- sudo -u postgres createdb data1
- psql -h localhost -U mike1 data1 (로그인 할 사용자 mike1의 비밀번호 지정)
새로운 사용자 "mike1"은 데이터베이스 "data1"에 연결하고 테이블 등을 만드는 데 아무런 문제가없는 것 같습니다. 그리고 GRANT 명령을 전혀 실행하지 않고 "data1"의 소유자는 "postgres"입니다. 3 단계의 소유자). 이것이 실제로 작동하는 방식입니까?
내가하고 싶은 것은 mike1에게 data1에 대한 모든 액세스 권한을 부여한 다음 더 많은 사용자와 데이터베이스에 대해이 작업을 반복하여 사용자가 선택한 하나 또는 여러 데이터베이스에만 액세스 할 수 있도록하는 것입니다.