views:

151

answers:

2

Hi guys,

I have very confidential data in my database. I am trying to secure my data from dba.

I am a member of development team. We develop our software and delpoy in a server which has its own dba. We have limited control over the server.

In this scenario how can i deny dba of the server to lookup my data and deny making changes to them.

Is it possible?

+5  A: 

Encrypt on the client side, only send and store encrypted data in the database.

In a SQL Server instance, sysadmin can do everything and can not be blocked.

Some thoughts... why is your team of developers more trusted then the single DBA who I assume is looking after more then one SQL Server box? Can you explain more please?

gbn
Coz I am hosting in shared server.
KoolKabin
+6  A: 

You can always encrypt all data that goes into the database.

However, a DBA will have full control on this data - he may not be able to decrypt it, but will be able to read it (in encrypted form), update it and even delete it. Nothing you can do about this.

You really need to rethink things - how can you work with a DBA you cannot trust? Most places will have service agreement that forbid DBAs from doing certain things. You need to rely on this kind of assurance if you don't think your DBAs are trustworthy.

Oded
Why the downvote?
Oded
For updating and deleting can i know who triggered it? either me [my program] or DBA
KoolKabin
@KoolKabin - you can log these actions through triggers on the table. But guess what, a DBA can override those. If it happens on the DataBase, the DBA has control. Nothing you can do about it.
Oded
so sad to hear that my db can be fully altered by DBA in shared hosting environment.
KoolKabin
@KoolKabin - DBAs have full control of databases. In shared hosting and any other environment. That's their job. Make sure that the hosting agreement does not allow them to look at your data or mess with it (apart for required maintenance work).
Oded