Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> डेटाबेस

पारदर्शी डेटा एन्क्रिप्शन

Oracle® ने सुरक्षा उद्देश्यों के लिए Oracle 12C में पारदर्शी डेटा एन्क्रिप्शन (TDE) सुविधा पेश की, ताकि उपयोगकर्ता संवेदनशील डेटा के लिए टेबल स्पेस और कॉलम-स्तरीय एन्क्रिप्शन को सक्षम कर सकें।

परिचय

आपके द्वारा डेटा एन्क्रिप्ट करने के बाद, केवल अधिकृत उपयोगकर्ता या एप्लिकेशन ही इसे एक्सेस कर सकते हैं। Oracle डेटाबेस को प्रमाणित करने, अधिकृत करने और ऑडिट करने के लिए टूल और प्रक्रियाओं का उपयोग करता है लेकिन डेटा को संग्रहीत करने वाली OS डेटाफ़ाइल्स का नहीं।

Oracle डेटाबेस एडवांस्ड सिक्योरिटी गाइड (ASOAG) के अनुसार, “TDE डेटा फ़ाइलों में संग्रहीत संवेदनशील डेटा को एन्क्रिप्ट करता है। अनधिकृत डिक्रिप्शन को रोकने के लिए, टीडीई एन्क्रिप्शन कुंजी को डेटाबेस के बाहर एक सुरक्षा मॉड्यूल में संग्रहीत करता है, जिसे कीस्टोर कहा जाता है।"

आवश्यक TDE विशेषाधिकार

TDE को कॉन्फ़िगर करने के लिए, उपयोगकर्ता को SYSKM प्रदान करें प्रशासनिक विशेषाधिकार। तब ASOAG अनुशंसा करता है कि आप "इसके लिए एक पासवर्ड फ़ाइल बनाएँ ताकि उपयोगकर्ता पासवर्ड का उपयोग करके SYSKM के रूप में डेटाबेस से जुड़ सके। ... TDE कॉलम या टेबलस्पेस एन्क्रिप्शन को कॉन्फ़िगर करने के लिए, आपको SYSKM ... विशेषाधिकार की आवश्यकता नहीं है।" हालांकि, एएसओएजी ने कहा है कि आपको टेबल कॉलम और टेबल स्पेस को एन्क्रिप्ट करने के लिए निम्नलिखित "विशेषाधिकारों की आवश्यकता है:

  • तालिका बनाएं
  • तालिका बदलें
  • टेबलस्पेस बनाएं
  • टेबल स्पेस बदलें (ऑनलाइन और ऑफलाइन टेबलस्पेस एन्क्रिप्शन के लिए)
  • डेटाबेस बदलें (तेज़ ऑफ़लाइन टेबलस्पेस एन्क्रिप्शन के लिए)”

इन विशेषाधिकारों के अलावा, आपको एक वॉलेट बनाना चाहिए जो हमेशा सक्षम करने के लिए खुला होना चाहिए। वॉलेट को कीस्टोर . के नाम से भी जाना जाता है 12 सी में।

दो प्रकार के TDE

निम्नलिखित अनुभाग दो प्रकार के TDE का वर्णन करते हैं:

1. पारदर्शी डेटा एन्क्रिप्शन कॉलम एन्क्रिप्शन

यह तालिका में संग्रहीत गोपनीय डेटा जैसे क्रेडिट कार्ड, सामाजिक सुरक्षा नंबर आदि की सुरक्षा करता है। ASOAG के अनुसार, यह संवेदनशील कॉलम को पारदर्शी रूप से एन्क्रिप्ट और डिक्रिप्ट करने के लिए "दो-स्तरीय कुंजी-आधारित आर्किटेक्चर का उपयोग करता है। TDE मास्टर एन्क्रिप्शन कुंजी एक बाहरी सुरक्षा मॉड्यूल में संग्रहीत है, जो एक Oracle सॉफ़्टवेयर या हार्डवेयर कीस्टोर हो सकता है। यह TDE मास्टर एन्क्रिप्शन कुंजी TDE तालिका कुंजी को एन्क्रिप्ट और डिक्रिप्ट करती है, जो बदले में तालिका कॉलम में डेटा को एन्क्रिप्ट और डिक्रिप्ट करती है।"

पारदर्शी डेटा एन्क्रिप्शन

छवि स्रोत:https://docs.oracle.com/database/121/ASOAG/introduction-to-transparent-data-encryption.htm#ASOAG10137


2. पारदर्शी डेटा एन्क्रिप्शन टेबलस्पेस एन्क्रिप्शन

एन्क्रिप्टेड टेबलस्पेस में बनाए गए सभी ऑब्जेक्ट स्वचालित रूप से एन्क्रिप्ट किए जाते हैं। यह आपको संपूर्ण तालिका या एकाधिक स्तंभों को एन्क्रिप्ट करने में मदद करता है। ASOAG इसे जोड़ता है:“TDE टेबलस्पेस एन्क्रिप्शन दो-स्तरीय, कुंजी-आधारित आर्किटेक्चर का उपयोग पारदर्शी रूप से एन्क्रिप्ट (और डिक्रिप्ट) टेबल स्पेस के लिए करता है। TDE मास्टर एन्क्रिप्शन कुंजी एक बाहरी सुरक्षा मॉड्यूल (सॉफ़्टवेयर या हार्डवेयर कीस्टोर) में संग्रहीत होती है। इस TDE मास्टर एन्क्रिप्शन कुंजी का उपयोग TDE टेबलस्पेस एन्क्रिप्शन कुंजी को एन्क्रिप्ट करने के लिए किया जाता है, जिसका उपयोग टेबलस्पेस में डेटा को एन्क्रिप्ट और डिक्रिप्ट करने के लिए किया जाता है।"

पारदर्शी डेटा एन्क्रिप्शन

छवि स्रोत:https://docs.oracle.com/database/121/ASOAG/introduction-to-transparent-data-encryption.htm#ASOAG10137

TDE का उद्देश्य

ASOAG TDE का उपयोग करने के लिए निम्नलिखित कारणों का उल्लेख करता है:

  1. संवेदी डेटा को सुरक्षित करने के लिए भले ही कोई स्टोरेज मीडिया या डेटा फ़ाइल चुरा ले।
  2. सुरक्षा से संबंधित नियामक अनुपालन मुद्दों को हल करने में हमारी मदद करने के लिए।
  3. एप्लिकेशन डेटा को डिक्रिप्ट करने के लिए अतिरिक्त सहायक या दृश्य बनाने के लिए। यह डेटाबेस उपयोगकर्ता और एप्लिकेशन के लिए टेबल डेटा को पारदर्शी रूप से डिक्रिप्ट करता है जिसमें एप्लिकेशन में बहुत कम या कोई बदलाव नहीं होता है।
  4. DB और एप्लिकेशन उपयोगकर्ताओं को यह जानने की आवश्यकता नहीं है कि वे जो डेटा एक्सेस कर रहे हैं वह एन्क्रिप्टेड है।
  5. आप ऑनलाइन पुनर्परिभाषा का उपयोग करके या इसे इनऑफ़लाइन मोड में एन्क्रिप्ट करके बिना डाउनटाइम के डेटा एन्क्रिप्ट कर सकते हैं।
  6. एन्क्रिप्टेड डेटा को संभालने के लिए आपको किसी एप्लिकेशन परिवर्तन की आवश्यकता नहीं है। डेटाबेस डेटा को एन्क्रिप्ट और डिक्रिप्ट करता है।
  7. Oracle डेटाबेस TDE मास्टर एन्क्रिप्शन कुंजी और कीस्टोर प्रबंधन कार्यों को स्वचालित करता है।

TDE कॉन्फ़िगर करें

TDE और वॉलेट को कॉन्फ़िगर करने के लिए निम्न चरणों का पालन करें:

  1. वॉलेट या कीस्टोर लोकेशन बनाएं:

     mkdir -p /u01/oracle/wallet
    
  2. sqlnet.ora . में वॉलेट या कीस्टोर स्थान अपडेट करें :

     cat $ORACLE_HOME/network/admin/sqlnet.ora
     # sqlnet.ora Network Configuration File: /home/oracle/app/oracle/product/12.1.0/dbhome_1/network/admin/sqlnet.ora
     # Generated by Oracle configuration tools.
     NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
     ENCRYPTION_WALLET_LOCATION =
     (SOURCE =(METHOD = FILE)(METHOD_DATA =
     (DIRECTORY = /u01/oracle/wallet)))
    
  3. कीस्टोर बनाएं:

     SQL> ADMINISTER KEY MANAGEMENT CREATE KEYSTORE '/u01/oracle/wallet/' IDENTIFIED BY Oraclewallet#123 ;
     keystore altered.
     SQL> host ls /u01/oracle/wallet/
     Oraclewallet.P12
    
  4. कीस्टोर खोलें:

    SQL> ADMINISTER KEY MANAGEMENT SET KEYSTORE OPEN IDENTIFIED BY Oraclewallet#123;
    keystore altered.
    
  5. कुंजी सक्रिय करें:

     SQL> SET LINESIZE 100
     SELECT con_id, key_id FROM v$encryption_keys;SQL> 
    
     no rows selected
     SQL> ADMINISTER KEY MANAGEMENT SET KEY IDENTIFIED BY Oraclewallet#123 WITH BACKUP;
     keystore altered.
     SQL> SET LINESIZE 100
     SELECT con_id, key_id FROM v$encryption_keys;SQL> 
    
     CON_ID KEY_ID
     ---------- ------------------------------------------------------------------------------
         0 HTDRKP*%GRLOHNRWMrX2QAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
     SQL> SET LINESIZE 200
     COLUMN wrl_parameter FORMAT A50
     SELECT * FROM v$encryption_wallet;
     SQL> SQL> 
     WRL_TYPE      WRL_PARAMETER                                                     STATUS             
     WALLET_TYPE              WALLET_OR FULLY_BAC     CON_ID
     -------------------- -------------------------------------------------- ------------------------------ -------------------- --------- --------- ----------
     FILE                   
     /u01/oracle/wallet/                                             OPEN       
     PASSWORD        SINGLE   
     NO                  0
    
  6. एन्क्रिप्टेड टेबलस्पेस बनाएं:

     SQL> CREATE TABLESPACE ENCRYPTION_TEST 
     datafile '/u01/oracle/app/oracle/oradata/db/encrytest.dbf' size 2G 
     ENCRYPTION USING 'AES256'
     DEFAULT STORAGE(ENCRYPT);  2   
     3    4  
     Tablespace created.
     SQL> create table ENCRYPTION_EMP(
       empno   Number(3),
       Name     varchar(10)
     ) tablespace ENCRYPTION_TEST;  2   
     3    4  
     Table created.
     SQL> select tablespace_name,encrypted from dba_tablespaces where tablespace_name='ENCRYPTION_TEST';
     TABLESPACE_NAME              ENC
     ------------------------------ ---
     ENCRYPTION_TEST                           YES
    
  7. एन्क्रिप्टेड कॉलम के साथ एक टेबल बनाएं:

     SQL> CREATE TABLE employee (
     first_name VARCHAR2(128),
     last_name VARCHAR2(128),
     empID NUMBER,
     salary NUMBER(6) ENCRYPT
     ); 2 3 4 5 6
     Table created.
     SQL> select owner,table_name,column_name,encryption_alg from dba_encrypted_columns where table_name='EMPLOYEE';
     OWNER TABLE_NAME COLUMN_NAME ENCRYPTION_A
     ---------- ------------ ------------ -----
     RAJ EMPLOYEE SALARY AES 192 bits
     key
    
  8. ऑटोलॉगिन सक्षम करें:

     SQL> SELECT * FROM v$encryption_wallet;
     WRL_TYPE      WRL_PARAMETER       STATUS       WALLET_TYPE     WALLET_OR     FULLY_BAC     CON_ID
     ----------    ------------------- ------------ --------------- ------------- ------------- ----------
     FILE          /u01/oracle/wallet/   OPEN         PASSWORD      SINGLE         NO            0
    

यहां वॉलेट_प्रकार PASSWORD है . हर बार जब आप डेटाबेस को पुनरारंभ करते हैं, तो आपको कुंजी या वॉलेट को स्पष्ट रूप से खोलने की आवश्यकता होती है। इससे बचने के लिए, आप ऑटो लॉगिन को सक्षम कर सकते हैं, जो डेटाबेस के पुनरारंभ होने पर स्वचालित रूप से वॉलेट खुल जाता है।

निष्कर्ष

TDE आपको अत्यधिक संवेदनशील डेटा सुरक्षित करने की अनुमति देता है। भले ही डेटाफ़ाइल या मीडिया संग्रहण चोरी हो गया हो, डेटा तब तक उपलब्ध नहीं होता जब तक कि उपयोगकर्ताओं के पास इसे डिक्रिप्ट करने की कुंजी न हो।

हमारी डेटाबेस सेवाओं के बारे में अधिक जानें।

कोई टिप्पणी करने या प्रश्न पूछने के लिए प्रतिक्रिया टैब का उपयोग करें। आप हमारे साथ बातचीत भी शुरू कर सकते हैं।


  1. 8 सामान्य एन्क्रिप्शन शर्तें और उनके अर्थ

    एन्क्रिप्शन की बात करें तो ज्यादातर लोग इसे सिर्फ एक दशक पुराना समझते हैं। हालाँकि, यह इतिहास में गहराई से निहित है। सबसे प्रसिद्ध उदाहरण द्वितीय विश्व युद्ध का हो सकता है, जब जर्मनों ने अपनी नौसेना में स्थानांतरित होने से पहले संदेशों को एन्क्रिप्ट करने के लिए एनिग्मा नामक मशीन का उपयोग किया था। प

  1. Windows के लिए 9 सर्वश्रेष्ठ एन्क्रिप्शन सॉफ्टवेयर

    चाहे वह आपका व्यक्तिगत या व्यावसायिक डेटा हो, आपको हमेशा इसकी अच्छी तरह से रक्षा करनी चाहिए। कभी-कभी, अपने फ़ोल्डरों को छिपाने और गलत नाम देने से मदद नहीं मिलती है। आपको किसी ऐसी चीज की तलाश करनी होगी जो आपके डेटा को किसी भी अनधिकृत पहुंच से बचा सके। चित्र में डिस्क एन्क्रिप्शन सॉफ़्टवेयर आता है, ज

  1. Windows 11 पर स्वचालित डिवाइस एन्क्रिप्शन को अक्षम कैसे करें?

    अपने डेटा को एन्क्रिप्ट करने का अर्थ है अपने डेटा को एक मजबूत तिजोरी में रखना और इसे केवल उन लोगों द्वारा एक्सेस करने के लिए लॉक रखना जिनके पास कुंजी है। यह एक उत्कृष्ट विचार की तरह लगता है और निश्चिंत रहें कि यदि आप कुंजी भूल जाते हैं तो आपका डेटा आपके सहित सभी से सुरक्षित और सुरक्षित है। डेटा एन्क