how to create decrypt table
USE [DellPII]
GO
/****** Object: StoredProcedure [dbo].[SP_DecryptFields] Script Date: 3/29/2022 10:44:31 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
----------------------------------------------------------------------
--Initial Release: 28/01/2022 Author: Yogish
--EXEC SP_DecryptFields
-------------------------------------
CREATE PROCEDURE [dbo].[SP_DecryptFields]
AS
BEGIN
----Opening the SYMMETRIC KEY and decryption the Certificate.
OPEN SYMMETRIC KEY SymKey_test
DECRYPTION BY CERTIFICATE Certificate_test;
--Decrypting the attribues by using DecryptByKey function in this update block we are decrypting the (Reported_Style,Override_Install_Site and Reported_Serial_Number)attributes in Incident_SRMS_Specific_TEST table .
DECLARE @START_TIME DATETIME, @END_TIME DATETIME,@c1 INT
SET @START_TIME =GETDATE();
UPDATE tb
SET Tb.Reported_Style= DecryptByKey(tb.Reported_Style)
,Tb.Override_Install_Site= DecryptByKey(tb.Override_Install_Site)
,tb.Reported_Serial_Number=DecryptByKey(tb.Reported_Serial_Number)
,tb.ISEncrypt=0
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
select @c1=@@ROWCOUNT
Begin
UPDATE ST
SET Row_count=@c1
,STARTTIME=@START_TIME
,ENDTIME=GETDATE()
FROM SOURCETABLES ST
WHERE DATASOURCEID=42 AND ST.Datasourcename='SRMS' AND TABLENAME='Incident_SRMS_Specific'
AND FieldName IN ('Reported_Style','Override_Install_Site','Reported_Serial_Number')
END
--Decrypting the attribues by using DecryptByKey function in this update block we are decrypting the (Vendor_Style,Vendor_OEMSerialNumber)attributes in incident_srms_attention_test table .
SET @START_TIME =GETDATE();
UPDATE tb
set Tb.Vendor_Style= DecryptByKey(tb.Vendor_Style)
,Tb.Vendor_OEMSerialNumber= DecryptByKey(tb.Vendor_OEMSerialNumber)
,tb.ISEncrypt=0
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
select @c1=@@ROWCOUNT
Begin
UPDATE ST
SET Row_count=@c1
,STARTTIME=@START_TIME
,ENDTIME=GETDATE()
FROM SOURCETABLES ST
WHERE DATASOURCEID=42 AND ST.Datasourcename='SRMS'
AND TABLENAME='incident_srms_attention' AND FieldName IN ('Vendor_Style','Vendor_OEMSerialNumber')
END
--Decrypting the attribues by using DecryptByKey function in this update block we are decrypting the (Cust_Address,Cust_City,Cust_State and Cust_ZipCode)attributes in incident_test table.
SET @START_TIME =GETDATE();
UPDATE tb
SET tb.Product_Model_version= DecryptByKey(tb.Product_Model_version)
,tb.Cust_Address= DecryptByKey(tb.Cust_Address)
,tb.Cust_City= DecryptByKey(tb.Cust_City)
,tb.Cust_State= DecryptByKey(tb.Cust_State)
,tb.Cust_ZipCode= DecryptByKey(tb.Cust_ZipCode)
,tb.ISEncrypt=0
FROM incident 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 ST.Datasourcename='SRMS'
AND TABLENAME='incident' AND FieldName IN ('Cust_Address','Cust_City','Cust_State','Cust_ZipCode')
END
--Decrypting the attribues by using DecryptByKey function in this update block we are decrypting the (Description,Headline)attributes in ITIL_Transaction table.
SET @START_TIME =GETDATE();
UPDATE tb
SET tb.Description=DecryptByKey(tb.Description)
,tb.Headline=DecryptByKey(tb.Headline)
,tb.ISEncrypt=0
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 ST.Datasourcename='SRMS'
AND TABLENAME='ITIL_Transaction' AND FieldName IN ('Headline','Description')
END
--Decrypting the attribues by using DecryptByKey function in this update block we are decrypting the (MANUFACTURERMODEL,SERIALNUMBER,CUSTOMERIDENTIFIER ,CONTACT_CITY,CONTACT_STATEPROVINCE and CONTACT_COUNTRY)attributes in Fs_Serviceincidents_test table.
SET @START_TIME =GETDATE();
UPDATE tb
SET tb.MANUFACTURERMODEL=DecryptByKey(tb.MANUFACTURERMODEL)
,tb.SERIALNUMBER=DecryptByKey(tb.SERIALNUMBER)
,tb.CUSTOMERIDENTIFIER=DecryptByKey(tb.CUSTOMERIDENTIFIER)
,tb.CONTACT_CITY=DecryptByKey(tb.CONTACT_CITY)
,tb.CONTACT_STATEPROVINCE=DecryptByKey(tb.CONTACT_STATEPROVINCE)
,tb.CONTACT_COUNTRY=DecryptByKey(tb.CONTACT_COUNTRY)
,tb.ISEncrypt=0
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 ST.Datasourcename='SRMS' AND
TABLENAME='Fs_Serviceincidents' AND FieldName IN ('MANUFACTURERMODEL','SERIALNUMBER','CUSTOMERIDENTIFIER','CONTACT_CITY','CONTACT_STATEPROVINCE','CONTACT_COUNTRY')
END
SET @START_TIME =GETDATE();
update tb
set tb.MANUFACTURERMODEL=DecryptByKey(tb.MANUFACTURERMODEL)
,tb.SERIALNUMBER=DecryptByKey(tb.SERIALNUMBER)
,tb.CUSTOMERIDENTIFIER=DecryptByKey(tb.CUSTOMERIDENTIFIER)
,tb.LASTNAME1=DecryptByKey(tb.LASTNAME1)
,tb.FIRSTNAME1=DecryptByKey(tb.FIRSTNAME1)
,tb.MIDDLENAME1=DecryptByKey(tb.MIDDLENAME1)
,tb.GEOADDRESS11=DecryptByKey(tb.GEOADDRESS11)
,tb.GEOADDRESS21=DecryptByKey(tb.GEOADDRESS21)
,tb.GEOADDRESS31=DecryptByKey(tb.GEOADDRESS31)
,tb.GEOADDRESS41=DecryptByKey(tb.GEOADDRESS41)
,tb.CITY1=DecryptByKey(tb.CITY1)
,tb.STATEPROVINCE1=DecryptByKey(tb.STATEPROVINCE1)
,tb.POSTALCODE1=DecryptByKey(tb.POSTALCODE1)
,tb.COUNTRY1=DecryptByKey(tb.COUNTRY1)
,tb.LASTNAME2=DecryptByKey(tb.LASTNAME2)
,tb.FIRSTNAME2=DecryptByKey(tb.FIRSTNAME2)
,tb.MIDDLENAME2=DecryptByKey(tb.MIDDLENAME2)
,tb.GEOADDRESS12=DecryptByKey(tb.GEOADDRESS12)
,tb.GEOADDRESS22=DecryptByKey(tb.GEOADDRESS22)
,tb.GEOADDRESS32=DecryptByKey(tb.GEOADDRESS32)
,tb.GEOADDRESS42=DecryptByKey(tb.GEOADDRESS42)
,tb.CITY2=DecryptByKey(tb.CITY2)
,tb.STATEPROVINCE2=DecryptByKey(tb.STATEPROVINCE2)
,tb.POSTALCODE2=DecryptByKey(tb.POSTALCODE2)
,tb.COUNTRY2=DecryptByKey(tb.COUNTRY2)
,tb.ISEncrypt=0
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 ST.Datasourcename='SRMS' AND
TABLENAME='Incident_Srms_Backlog' AND FieldName IN ('MANUFACTURERMODEL','SERIALNUMBER','CUSTOMERIDENTIFIER','LASTNAME1','FIRSTNAME1','MIDDLENAME1','GEOADDRESS11','GEOADDRESS21','GEOADDRESS31','GEOADDRESS41','CITY1','STATEPROVINCE1','POSTALCODE1', 'COUN
TRY1','LASTNAME2','FIRSTNAME2','MIDDLENAME2','GEOADDRESS12','GEOADDRESS22','GEOADDRESS32','GEOADDRESS42','CITY2','STATEPROVINCE2','POSTALCODE2','COUNTRY2')
END
--Decrypting 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=DecryptByKey(tb.TSDB_User_Id)
,tb.ISEncrypt=0
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 ST.Datasourcename='SRMS' AND TABLENAME='Incident_Srms_Tsdb' AND FieldName IN ('TSDB_User_Id')
END
/* Decrypting the attribues by using DecryptByKey function
in this update block we are decrypting the (SerialNumber,contactname,contactname2,City,state,postcode) attributes in W6TASKS table */
SET @START_TIME =GETDATE();
UPDATE WT
SET WT.SerialNumber= DecryptByKey(WT.SerialNumber)
,WT.contactname= DecryptByKey(WT.contactname)
,WT.contactname2=DecryptByKey(WT.contactname2)
,WT.City=DecryptByKey(WT.City)
,WT.State=DecryptByKey(WT.State)
,WT.postcode=DecryptByKey(WT.postcode)
,WT.ISEncrypt=0
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