Julia
03-07-2008, 07:02 AM
I'm trying to design a new, cost-effective, architecture for our SQL 2005 environment that will pass a PCI compliance audit.
My first task is to reduce the scope of our auditable environment by separating out card data and card processes from our other business processes.
We have one table in SQL Server of card data which is currently encrypted using a 3rd party tool (ChilKat). This is going to be split away from the remaining stock/customer management database to isolate it. We are then going to isolate the card processing applications so they are the only applications able to communicate with the card data.
My question is what is considered suitable physical separation of this data? Could I, for example, have one physical server with two Instances of SQL Server installed and have the main database on one Instance and the card data on another. Card data applications communicte with the Card Data Instance and all other business operations communicate with the Main Data Instance? Having two SQL instances on one server would reduce the licensing, hardware and hosting costs.
My fall-back, worst case scenario is to have a separate server (or virtualised server) with SQL installed with one table on it. This seems such a ridiculously expensive option (server + server OS license + SQL license + hosting service cost) all for one table of encrypted data. Sledgehammer and nut springs to mind!
I have a costly QSA I've been working with but it seems that all solutions I put forward are rejected but the QSA doesn't seem able to suggest something that WOULD be compliant! Any suggestions that WOULD be compliant would be very much appreciated.
My first task is to reduce the scope of our auditable environment by separating out card data and card processes from our other business processes.
We have one table in SQL Server of card data which is currently encrypted using a 3rd party tool (ChilKat). This is going to be split away from the remaining stock/customer management database to isolate it. We are then going to isolate the card processing applications so they are the only applications able to communicate with the card data.
My question is what is considered suitable physical separation of this data? Could I, for example, have one physical server with two Instances of SQL Server installed and have the main database on one Instance and the card data on another. Card data applications communicte with the Card Data Instance and all other business operations communicate with the Main Data Instance? Having two SQL instances on one server would reduce the licensing, hardware and hosting costs.
My fall-back, worst case scenario is to have a separate server (or virtualised server) with SQL installed with one table on it. This seems such a ridiculously expensive option (server + server OS license + SQL license + hosting service cost) all for one table of encrypted data. Sledgehammer and nut springs to mind!
I have a costly QSA I've been working with but it seems that all solutions I put forward are rejected but the QSA doesn't seem able to suggest something that WOULD be compliant! Any suggestions that WOULD be compliant would be very much appreciated.