Re: Local authentication/security - Mailing list pgsql-general

From Lange Marcus
Subject Re: Local authentication/security
Date
Msg-id 6F2815FEE7F896458CDE99423F396992012FC5FC@corpappl002.corp.saab.se
Whole thread Raw
In response to Re: Local authentication/security  (Richard Huxton <dev@archonet.com>)
Responses Re: Local authentication/security  (Richard Huxton <dev@archonet.com>)
List pgsql-general
Ok. But apart from the risk with having the physical access to the computer, would it be a reasonable safe solution to
limitthe access with a password then ? So that, assuming a user does not have the possibility to get any kind of root
access,there is no way to read or copy the database unless you login as the correct user ? And if only the program
knowsthe password, then the user running the program will not be able to access the database, except through the
program? 

Is there a way to assure that the database does not get stored on disk ? If my program, everytime it starts, would
createor build up the database could this database be kept in RAM ? Or does postgres automatically create a database
fileor something ? Do you understand what i mean ? 

Another question, are md5 passowords supported under windows ?

Regards,
Marcus

-----Original Message-----
From: Richard Huxton [mailto:dev@archonet.com]
Sent: den 23 augusti 2007 16:02
To: Lange Marcus; PG-General Mailing List
Subject: Re: [GENERAL] Local authentication/security

Lange Marcus wrote:
> Hi,
>
> I guess the answer to the 2 questions would be, yes the user will
> probably have physical access to the machine, but will not have
> superuser access. The OS is, atleast for now, windows.
>
> I have been looking and searching manuals and so on for different
> methods but I still haven´t figured out how or if it is possible. To
> be more specific about what I really want: I have an application that
> will insert some data into a database and while this data is in the
> database I dont want it to be possible to copy it or in any other way
> get access to it, except through that application that inserted it.
> It woule be acceptable if, and maybe even preferbly when the program
> exit, that the database are deleted (so that it is only stored in
> memory while using it). But if there is a way to build up a database
> that is protected when stored on disc that would also be acceptable.

If the user has physical access to the machine then there's nothing you can do to stop someone who is (a) determined
and(b) knowledgeable. 

If you want to stop casual access though:
1. Make sure PostgreSQL + its files aren't accessible to normal users.
2. Make sure application will only run as user X 3. Set up a pgpass.conf file only accessible by user X 4. Lock down
BIOSetc. to prevent someone booting from a CD-ROM or USB stick. 

http://www.postgresql.org/docs/8.2/static/libpq-pgpass.html

That should cope with someone who doesn't know what they're doing. If you're worried about them removing the hard-disk
thenyou'll need to set up an encrypted filesystem and figure out a way to get a password entered on reboot. 

--
   Richard Huxton
   Archonet Ltd

pgsql-general by date:

Previous
From: Richard Huxton
Date:
Subject: Re: %TYPE
Next
From: Michael Glaesemann
Date:
Subject: Re: %TYPE