Apache + mod_wsgi 및 PostgreSQL을 사용하여 장고 사이트를 Ubuntu 10.04에 배포 할 계획입니다.PostgreSQL 데이터베이스에 대한 Apache 사용자 권한
IDENT 인증을 사용하여 데이터베이스에 연결하려고합니다. 이를 위해 Apache 용 PostgreSQL 사용자 (www-data
)를 만들어야합니다. 저는 이것을 수퍼 유저로 만들지 않거나 특별한 권한을 제공하지 않기로했습니다.
다음으로 데이터베이스를 생성했습니다. 사실 테스트를하면서이 작업을 두 번했습니다. 처음 아파치 사용자를 소유자로 설정했습니다. 두 번째로 소유자를 나 자신 (수퍼 유저)으로 설정하고 데이터베이스에 대한 모든 권한을 Apache 사용자에게 부여했습니다.
내가 직접 Django syncdb 관리 명령을 사용할 때 생성 된 테이블은 Apache 사용자가 액세스 할 수 없습니다. 이 문제는 각 테이블에 대해 Apache 사용자에게 모든 권한을 부여하여 해결할 수 있지만 이는 약간의 불편 함입니다.
다른 방법으로 수퍼 유저로 액세스를 허용하는 것으로 보입니다.
프로젝트에서 로컬 DB에 Postgresql 수퍼 유저로 액세스하는 것이 안전하다고 생각합니까? IDENT 인증을 사용해도 안전합니까? 그렇지 않다면 일반적인 관행은 무엇입니까?
편집 : I했습니다 PostgreSQL의 로컬 연결에 대한 MD5 인증을 사용하도록 전환하는 것은 인생을 더 쉽게 만드는 것을 발견하기 때문이다.
ident 인증을 사용하는 경우 데이터베이스에 대한 연결은 정상 작동 중에 Apache 사용자를 통해 이루어집니다. Django 관리 명령을 사용할 때 연결은 현재 사용자를 통해 이루어집니다.
MD5를 사용하는 경우 위에 나열된 문제를 피하면서 두 상황 모두 settings.py 파일의 DATABASES 섹션에 지정된 세부 정보를 사용하여 데이터베이스에 연결됩니다.
PostgreSQL 수퍼 유저를 사용하는 것이 현명한 지 알고 싶습니다.