سلام
ببين رمز گذاري كه من مي شناسم اين نيست كه مثلا يه پسورد روي كل database بذاره و خلاص . نه !
مي گيره كل اطلاعاتت رو Code مي كنه (براي Decode كردن هم حتما يه پسورد خاص ازت مي گيره.) يعني به قول دوست عزيزمون اگه كسي فايل هاي داده و يا حتي يه backup تميز رو ببره بيرون نمي تونه بدون اون پسورد اصليه Restore كنه .
ولي اينجاش قشنگه كه اگه خودتم اونو تو يه شرايط خاص فراموش كني ، مثلا sqlserver داغون شده و مي خواهي كل اطلاعاتت رو برگردوني روي سرور جديد ، اره آونجا فقط بايد دعا كني ، كه اصولا اينجور وقتا جواب هم نمي ده !!!!! يعني كلي Backup داري ولي همش آشغال و كد شده و نمي توني استفاده كني . (اگه كه فراموش نكرده باشي كه چه بهتر!)
اما برگرديم سراغ سوالت : ببين اگه درست متوجه شده باشم از طريق TDE انجام مي شه (Transparent Data Encryption ): روال داره فقط سرفصل هاشو بهت مي گم . حقيقتش خودم تا بحال نرفتم :
Create a Master Key
USE master;
CREATE MASTER KEY
ENCRYPTION BY PASSWORD = 'Pass@word1';
Create a Certificate
USE master;
CREATE CERTIFICATE TDECert
WITH SUBJECT = 'TDE Certificate'
Create a Database Encryption Key
CREATE DATABASE mssqltips_tde
GO
USE mssqltips_tde;
CREATE DATABASE ENCRYPTION KEY
WITH ALGORITHM = AES_256
ENCRYPTION BY SERVER CERTIFICATE TDECert
Enable TDE
ALTER DATABASE mssqltips_tde
SET ENCRYPTION ON
GO
SELECT [name], is_encrypted FROM sys.databases