encryption how to do
USE [DellPII]
GO
/****** Object: StoredProcedure [dbo].[SP_EncryptFields] Script Date: 3/29/2022 10:53:22 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
------------------------------------------------------------------
--Initial Release: 28/01/2022 Author: Yogish
-- EXEC SP_EncryptFields
-----------------------------------
CREATE PROCEDURE [dbo].[SP_EncryptFields]
AS
BEGIN
--Opening the SYMMETRIC KEY and decryption the Certificate.
OPEN SYMMETRIC KEY SymKey_test
DECRYPTION BY CERTIFICATE Certificate_test;
--Encrypting the attribues by using EncryptByKey function in this update block we are encrypting the (Reported_Style,Override_Install_Site and Reported_Serial_Number)attributes in Incident_SRMS_Specific table.
DECLARE @START_TIME DATETIME, @END_TIME DATETIME, @c1 INT
SET @START_TIME =GETDATE();
UPDATE tb
SET tb.Reported_Style=EncryptByKey (Key_GUID('SymKey_test'),tb.Reported_Style)
,tb.Override_Install_Site=EncryptByKey(Key_GUID('SymKey_test'),tb.Override_Install_Site)
,tb.Reported_Serial_Number=EncryptByKey(Key_GUID('SymKey_test'),tb.Reported_Serial_Number)
,tb.ISEncrypt=1
FROM Incident_SRMS_Specific tb
INNER JOIN [vw_UCAREPII_TXNS] Vw
ON tb.Incident_Number = Vw.Incident_Number
WHERE VW.Datasourcename='SRMS' AND tb.isencrypt<>1 --138122
SELECT @c1=@@ROWCOUNT
BEGIN
UPDATE ST
SET Row_count=@c1
,STARTTIME=@START_TIME
,ENDTIME=GETDATE()
FROM SOURCETABLES ST
WHERE DATASOURCEID=42 AND TABLENAME='Incident_SRMS_Specific' AND ST.Datasourcename='SRMS' AND FieldName IN ('Reported_Style','Override_Install_Site','Reported_Serial_Number')
END
--Encrypting the attribues by using EncryptByKey function in this update block we are encrypting the (Vendor_Style,Vendor_OEMSerialNumber) attributes in incident_srms_attention table .
SET @START_TIME =GETDATE();
UPDATE tb
SET tb.Vendor_Style=EncryptByKey (Key_GUID('SymKey_test'),tb.Vendor_Style)
,tb.Vendor_OEMSerialNumber=EncryptByKey(Key_GUID('SymKey_test'),tb.Vendor_OEMSerialNumber)
,tb.ISEncrypt=1
FROM incident_srms_attention tb
INNER JOIN [vw_UCAREPII_TXNS] Vw
ON tb.Incident_Number = Vw.Incident_Number
WHERE VW.Datasourcename='SRMS' AND tb.isencrypt<>1 --450531
SELECT @c1=@@ROWCOUNT
BEGIN
UPDATE ST
SET Row_count=@c1
,STARTTIME=@START_TIME
,ENDTIME=GETDATE()
FROM SOURCETABLES ST
WHERE DATASOURCEID=42 AND TABLENAME='incident_srms_attention' AND ST.Datasourcename='SRMS' AND FieldName IN ('Vendor_Style','Vendor_OEMSerialNumber')
END
--Encrypting the attribues by using EncryptByKey function in this update block we are encrypting the (Cust_Address,Cust_City,Cust_State,Cust_ZipCode) attributes in incident table.
SET @START_TIME =GETDATE();
UPDATE tb
SET tb.Product_Model_version=EncryptByKey (Key_GUID('SymKey_test'),tb.Product_Model_version)
,tb.Cust_Address=EncryptByKey(Key_GUID('SymKey_test'),tb.Cust_Address)
,tb.Cust_City=EncryptByKey(Key_GUID('SymKey_test'),tb.Cust_City)
,tb.Cust_State=EncryptByKey(Key_GUID('SymKey_test'),tb.Cust_State)
,tb.Cust_ZipCode=EncryptByKey(Key_GUID('SymKey_test'),tb.Cust_ZipCode)
,tb.ISEncrypt=1
FROM incident tb
INNER JOIN [vw_UCAREPII_TXNS] Vw
ON tb.Incident_Number = Vw.Incident_Number
WHERE VW.Datasourcename='SRMS' AND tb.ISEncrypt<>1 --131942
SELECT @c1=@@ROWCOUNT
BEGIN
SET @START_TIME =GETDATE();
UPDATE ST
SET Row_count=@c1
,STARTTIME=@START_TIME
,ENDTIME=GETDATE()
FROM SOURCETABLES ST
WHERE DATASOURCEID=42 AND TABLENAME='incident' AND ST.Datasourcename='SRMS' AND FieldName IN ('Cust_Address','Cust_City','Cust_State','Cust_ZipCode')
END
--Encrypting the attribues by using EncryptByKey function in this update block we are encrypting the ([Description],Headline)attributes in ITIL_Transaction table.
SET @START_TIME =GETDATE();
UPDATE tb
SET tb.Description=EncryptByKey (Key_GUID('SymKey_test'),tb.Description)
,tb.Headline=EncryptByKey(Key_GUID('SymKey_test'),tb.Headline)
,tb.ISEncrypt=1
FROM ITIL_Transaction tb
INNER JOIN [vw_UCAREPII_TXNS] Vw
ON tb.Transaction_ID = Vw.Incident_Number
WHERE VW.Datasourcename='SRMS' and tb.isencrypt<>1
SELECT @c1=@@ROWCOUNT
BEGIN
UPDATE ST
SET Row_count=@c1
,STARTTIME=@START_TIME
,ENDTIME=GETDATE()
FROM SOURCETABLES ST
WHERE DATASOURCEID=42 AND TABLENAME='ITIL_Transaction' AND ST.Datasourcename='SRMS' AND FieldName IN ('Description','Headline')
END
--Encrypting the attribues by using EncryptByKey function in this update block we are encrypting the (MANUFACTURERMODEL,SERIALNUMBER,CUSTOMERIDENTIFIER,CONTACT_CITY,CONTACT_STATEPROVINCE and CONTACT_COUNTRY ) attributes in Fs_Serviceincidents table.
SET @START_TIME =GETDATE();
UPDATE tb
SET tb.MANUFACTURERMODEL=EncryptByKey(Key_GUID('SymKey_test'),tb.MANUFACTURERMODEL)
,tb.SERIALNUMBER=EncryptByKey(Key_GUID('SymKey_test'),tb.SERIALNUMBER)
,tb.CUSTOMERIDENTIFIER=EncryptByKey(Key_GUID('SymKey_test'),tb.CUSTOMERIDENTIFIER)
,tb.CONTACT_CITY=EncryptByKey(Key_GUID('SymKey_test'),tb.CONTACT_CITY)
,tb.CONTACT_STATEPROVINCE=EncryptByKey(Key_GUID('SymKey_test'),tb.CONTACT_STATEPROVINCE)
,tb.CONTACT_COUNTRY=EncryptByKey(Key_GUID('SymKey_test'),tb.CONTACT_COUNTRY)
,tb.ISEncrypt=1
FROM Fs_Serviceincidents tb
INNER JOIN [vw_UCAREPII_TXNS] Vw
ON tb.SourceSR = Vw.Incident_Number
WHERE VW.Datasourcename='SRMS' AND tb.ISEncrypt<>1
SELECT @c1=@@ROWCOUNT
BEGIN
UPDATE ST
SET Row_count=@c1
,STARTTIME=@START_TIME
,ENDTIME=GETDATE()
FROM SOURCETABLES ST
WHERE DATASOURCEID=42 AND TABLENAME='Fs_Serviceincidents' AND ST.Datasourcename='SRMS' AND
FieldName IN ('MANUFACTURERMODEL','SERIALNUMBER','CUSTOMERIDENTIFIER','CONTACT_CITY','CONTACT_STATEPROVINCE','CONTACT_COUNTRY')
END
SET @START_TIME =GETDATE();
UPDATE tb
SET tb.MANUFACTURERMODEL=EncryptByKey(Key_GUID('SymKey_test'),tb.MANUFACTURERMODEL)
,tb.SERIALNUMBER=EncryptByKey(Key_GUID('SymKey_test'),tb.SERIALNUMBER)
,tb.CUSTOMERIDENTIFIER=EncryptByKey(Key_GUID('SymKey_test'),tb.CUSTOMERIDENTIFIER)
,tb.LASTNAME1=EncryptByKey(Key_GUID('SymKey_test'),tb.LASTNAME1)
,tb.FIRSTNAME1=EncryptByKey(Key_GUID('SymKey_test'),tb.FIRSTNAME1)
,tb.MIDDLENAME1=EncryptByKey(Key_GUID('SymKey_test'),tb.MIDDLENAME1)
,tb.GEOADDRESS11=EncryptByKey(Key_GUID('SymKey_test'),tb.GEOADDRESS11)
,tb.GEOADDRESS21=EncryptByKey(Key_GUID('SymKey_test'),tb.GEOADDRESS21)
,tb.GEOADDRESS31=EncryptByKey(Key_GUID('SymKey_test'),tb.GEOADDRESS31)
,tb.GEOADDRESS41=EncryptByKey(Key_GUID('SymKey_test'),tb.GEOADDRESS41)
,tb.CITY1=EncryptByKey(Key_GUID('SymKey_test'),tb.CITY1)
,tb.STATEPROVINCE1=EncryptByKey(Key_GUID('SymKey_test'),tb.STATEPROVINCE1)
,tb.POSTALCODE1=EncryptByKey(Key_GUID('SymKey_test'),tb.POSTALCODE1)
,tb.COUNTRY1=EncryptByKey(Key_GUID('SymKey_test'),tb.COUNTRY1)
,tb.LASTNAME2=EncryptByKey(Key_GUID('SymKey_test'),tb.LASTNAME2)
,tb.FIRSTNAME2=EncryptByKey(Key_GUID('SymKey_test'),tb.FIRSTNAME2)
,tb.MIDDLENAME2=EncryptByKey(Key_GUID('SymKey_test'),tb.MIDDLENAME2)
,tb.GEOADDRESS12=EncryptByKey(Key_GUID('SymKey_test'),tb.GEOADDRESS12)
,tb.GEOADDRESS22=EncryptByKey(Key_GUID('SymKey_test'),tb.GEOADDRESS22)
,tb.GEOADDRESS32=EncryptByKey(Key_GUID('SymKey_test'),tb.GEOADDRESS32)
,tb.GEOADDRESS42=EncryptByKey(Key_GUID('SymKey_test'),tb.GEOADDRESS42)
,tb.CITY2=EncryptByKey(Key_GUID('SymKey_test'),tb.CITY2)
,tb.STATEPROVINCE2=EncryptByKey(Key_GUID('SymKey_test'),tb.STATEPROVINCE2)
,tb.POSTALCODE2=EncryptByKey(Key_GUID('SymKey_test'),tb.POSTALCODE2)
,tb.COUNTRY2=EncryptByKey(Key_GUID('SymKey_test'),tb.COUNTRY2)
,tb.ISEncrypt=1
FROM Incident_Srms_Backlog tb
INNER JOIN [vw_UCAREPII_TXNS] Vw
ON tb.SourceSR = Vw.Incident_Number
WHERE VW.Datasourcename='SRMS' AND tb.ISEncrypt<>1
SELECT @c1=@@ROWCOUNT
BEGIN
UPDATE ST
SET Row_count=@c1
,STARTTIME=@START_TIME
,ENDTIME=GETDATE()
FROM SOURCETABLES ST
WHERE DATASOURCEID=42 AND TABLENAME='Incident_Srms_Backlog' AND ST.Datasourcename='SRMS' AND
FieldName IN('MANUFACTURERMODEL','SERIALNUMBER','CUSTOMERIDENTIFIER','LASTNAME1','FIRSTNAME1','MIDDLENAME1','GEOADDRESS11','GEOADDRESS21','GEOADDRESS31','GEOADDRESS41','CITY1','STATEPROVINCE1','POSTALCODE1','COUNTRY1','LASTNAME2','FIRSTNAME2','MIDDLENAM
E
2','GEOADDRESS12'
,'GEOADDRESS22','GEOADDRESS32','GEOADDRESS42','CITY2','STATEPROVINCE2','POSTALCODE2','COUNTRY2')
END
--Encrypting the attribues by using EncryptByKey function in this update block we are encrypting the (TSDB_User_Id) attributes in Incident_Srms_Tsdb table.
SET @START_TIME =GETDATE();
UPDATE tb
SET tb.TSDB_User_Id=EncryptByKey(Key_GUID('SymKey_test'),tb.TSDB_User_Id)
,tb.ISEncrypt=1
FROM Incident_Srms_Tsdb TB
INNER JOIN [vw_UCAREPII_TXNS] Vw
ON tb.Incident_Number = Vw.Incident_Number
WHERE VW.Datasourcename='SRMS' AND tb.ISEncrypt<>1
SELECT @c1=@@ROWCOUNT
BEGIN
UPDATE ST
SET Row_count=@c1
,STARTTIME=@START_TIME
,ENDTIME=GETDATE()
FROM SOURCETABLES ST
WHERE DATASOURCEID=42 AND TABLENAME='Incident_Srms_Tsdb' AND ST.Datasourcename='SRMS' AND FieldName IN ('TSDB_User_Id')
END
/* Encrypting the attribues by using EncryptByKey function
in this update block we are encrypting the (SerialNumber,contactname,contactname2,City,state,postcode) attributes in W6TASKS table */
SET @START_TIME =GETDATE();
UPDATE WT
SET WT.SerialNumber=EncryptByKey (Key_GUID('SymKey_test'),WT.SerialNumber)
,WT.contactname=EncryptByKey(Key_GUID('SymKey_test'),WT.contactname)
,WT.contactname2=EncryptByKey(Key_GUID('SymKey_test'),WT.contactname2)
,WT.City=EncryptByKey(Key_GUID('SymKey_test'),WT.City)
,WT.State=EncryptByKey(Key_GUID('SymKey_test'),WT.State)
,WT.postcode=EncryptByKey(Key_GUID('SymKey_test'),WT.postcode)
,WT.ISEncrypt=1
FROM W6TASKS WT
INNER JOIN [vw_UCAREPII_TXNS] Vw
ON WT.Callid = Vw.Incident_Number
WHERE VW.Datasourcename='CLICK' AND WT.ISEncrypt<>1
SELECT @c1=@@ROWCOUNT
BEGIN
UPDATE ST
SET Row_count=@c1
,STARTTIME=@START_TIME
,ENDTIME=GETDATE()
FROM SOURCETABLES ST
WHERE TABLENAME='W6TASKS' AND ST.Datasourcename='CLICK'
AND FieldName IN ('SerialNumber','contactname','contactname2','City','State','postcode')
END
--Closing the SYMMETRIC KEY
CLOSE SYMMETRIC KEY SymKey_test;
END;
GO
Comments
Post a Comment