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

Popular posts from this blog

java chapter11 practice question on abstruct class and interfaces

DAY 12 -AZURE DP900(Microsoft Azure Data Fundamentals: Explore non-relational data in Azure)

java exercise4