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

पारदर्शी डेटा एन्क्रिप्शन का उपयोग करके Oracle डेटाबेस को सुरक्षित करें

यह ब्लॉग पारदर्शी डेटा एन्क्रिप्शन (TDE) का उपयोग करके Oracle® डेटाबेस के भीतर संवेदनशील डेटा को सुरक्षित करने के लिए उन्नत सुरक्षा विकल्प का उपयोग करने की अनिवार्यताओं को शामिल करता है। यह सुविधा आपको डेटाबेस कॉलम एन्क्रिप्ट करने और एन्क्रिप्शन कुंजी प्रबंधित करने में सक्षम बनाती है।

परिचय

टीडीई संवेदनशील डेटाबेस डेटा के एन्क्रिप्शन को सक्षम बनाता है, जो ऑपरेटिंग सिस्टम फाइलों में संग्रहीत होता है। यह डेटाबेस के बाहर स्थित सुरक्षा मॉड्यूल में सुरक्षित भंडारण और एन्क्रिप्शन कुंजी का प्रबंधन प्रदान करता है।

एन्क्रिप्टेड डेटा पारदर्शी रूप से एक डेटाबेस उपयोगकर्ता के लिए डिक्रिप्ट किया जाता है जिसके पास डेटा तक पहुंच होती है। TDE एन्क्रिप्शन कुंजियों को डेटाबेस के बाहर एक सुरक्षा मॉड्यूल में संग्रहीत करता है।

TDE का उपयोग क्यों करें?

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

एक समाधान डेटाबेस में संवेदनशील डेटा को एन्क्रिप्ट करना और एन्क्रिप्शन कुंजियों को एक अलग स्थान पर संग्रहीत करना है। चाबियों के बिना, चोरी किया गया कोई भी डेटा बेकार है।

TDE कैसे काम करता है?

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

एन्क्रिप्टेड कॉलम वाली तालिकाओं के लिए, एन्क्रिप्शन कुंजी को कॉलम एन्क्रिप्शन कुंजी कहा जाता है। प्रत्येक तालिका की कॉलम एन्क्रिप्शन कुंजी डेटाबेस सर्वर की मास्टर कुंजी के साथ एन्क्रिप्ट की गई है। मास्टर एन्क्रिप्शन कुंजी को Oracle वॉलेट में डेटाबेस के बाहर संग्रहीत किया जाता है।

एन्क्रिप्टेड टेबल कीज़ को डेटा डिक्शनरी में रखा जाता है। जब कोई उपयोगकर्ता डेटा को कॉलम में दर्ज करता है तो इसे एन्क्रिप्टेड के रूप में परिभाषित किया जाता है, Oracle निम्नलिखित कार्य करता है:

  1. यह वॉलेट से मास्टर कुंजी प्राप्त करता है।
  2. यह डेटा डिक्शनरी से उस तालिका के लिए एन्क्रिप्शन कुंजी को डिक्रिप्ट करता है।
  3. यह उस एन्क्रिप्शन कुंजी का उपयोग इनपुट मान पर करता है।
  4. यह एन्क्रिप्टेड डेटा को डेटाबेस में संग्रहीत करता है।
पारदर्शी डेटा एन्क्रिप्शन का उपयोग करके Oracle डेटाबेस को सुरक्षित करें

छवि स्रोत :https://docs.oracle.com/database/121/ASOAG/img/GUID-5FD3A3BB-441C-4C42-A520-1248974627B0-default.png

TDE निम्न डेटाबेस फ़ाइलों में डेटा को एन्क्रिप्ट करता है:

  • डेटाफ़ाइल
  • लॉग फिर से करें और लॉग फ़ाइलें संग्रहीत करें
  • स्मृति
  • फ़ाइल बैकअप

Oracle Wallet को प्रबंधित करना

यह खंड वॉलेट बनाने, खोलने और बंद करने का वर्णन करता है।

वॉलेट बनाएं

जब आप पहली बार TDE को सक्षम करते हैं, तो आपको वह वॉलेट बनाना होगा जहां मास्टर कुंजी संग्रहीत है।

डिफ़ॉल्ट रूप से, वॉलेट $ORACLE_BASE/admin/$ORACLE_SID/वॉलेट में बनाया जाता है ,लेकिन आप sqlnet.ora . में निर्दिष्ट करके एक भिन्न स्थान सेट कर सकते हैं निम्नलिखित पंक्तियों में:

ENCRYPTION_WALLET_LOCATION = (SOURCE =
                             (METHOD = FILE)
                             (METHOD_DATA =
                             (DIRECTORY =D:\oracle\product\Wallet)))

इसके बाद, वॉलेट बनाने के लिए निम्न कमांड चलाएँ:

ALTER SYSTEM SET ENCRYPTION KEY [certificate_ID] IDENTIFIED BY password;
पारदर्शी डेटा एन्क्रिप्शन का उपयोग करके Oracle डेटाबेस को सुरक्षित करें
  • वॉलेट पासवर्ड केस सेंसिटिव है। पासवर्ड स्ट्रिंग को दोहरे उद्धरण चिह्नों (" ") में संलग्न करें।

  • प्रमाणपत्र_आईडी एक वैकल्पिक स्ट्रिंग है जिसमें Oracle वॉलेट में संग्रहीत प्रमाणपत्र का विशिष्ट पहचानकर्ता होता है। आप V$WALLET . को क्वेरी करके acertificate_ID खोज सकते हैं बटुआ खुला होने पर निश्चित दृश्य।

पारदर्शी डेटा एन्क्रिप्शन का उपयोग करके Oracle डेटाबेस को सुरक्षित करें

वॉलेट खोलें और बंद करें

वॉलेट बनाने और पासवर्ड सेट करने के बाद, आपको SYS का उपयोग करके वॉलेट को स्पष्ट रूप से खोलना होगा , SYSTEM , या SYSDBA हर बार जब आप डेटाबेस शुरू करते हैं तो खाते।

उदाहरण के लिए, निम्न कमांड चलाएँ:

alter system set encryption wallet open identified by "oracle12345";

महत्वपूर्ण: डेटाबेस पर कोई भी क्रिया करने के लिए, आपको वॉलेट खोलना होगा।

निम्नलिखित उदाहरण एक डेटाबेस संचालन को दर्शाता है जहां डेटाबेस चालू है लेकिन वॉलेट बंद है:

alter system set encryption wallet close;
पारदर्शी डेटा एन्क्रिप्शन का उपयोग करके Oracle डेटाबेस को सुरक्षित करें

अब, यदि आप एन्क्रिप्टेड कॉलम से डेटा पुनर्प्राप्त करने का प्रयास करते हैं, तो निम्न त्रुटि संदेश प्रदर्शित होता है क्योंकि वॉलेट बंद है:

पारदर्शी डेटा एन्क्रिप्शन का उपयोग करके Oracle डेटाबेस को सुरक्षित करें

एन्क्रिप्टेड कॉलम से डेटा पुनर्प्राप्त करने के लिए, आपको निम्न आदेश का उपयोग करके एक वॉलेट खोलना होगा:

alter system set encryption wallet open identified by "oracle12345";
पारदर्शी डेटा एन्क्रिप्शन का उपयोग करके Oracle डेटाबेस को सुरक्षित करें

अब आप एन्क्रिप्टेड कॉलम से डेटा प्राप्त कर सकते हैं क्योंकि वॉलेट खुला है।

एन्क्रिप्टेड कॉलम के साथ टेबल बनाएं

एन्क्रिप्टेड कॉलम वाली तालिका बनाने के लिए निम्न कमांड का उपयोग करें:

CREATE TABLE test2 (id number,name varchar2(20),s_s_num number ENCRYPT);
पारदर्शी डेटा एन्क्रिप्शन का उपयोग करके Oracle डेटाबेस को सुरक्षित करें

गैर-डिफ़ॉल्ट एल्गोरिथम और NO SALT विकल्प का उपयोग करके टेबल बनाएं

SALT एक रैंडम स्ट्रिंग है जिसे डेटा को एन्क्रिप्ट करने से पहले जोड़ा जाता है ताकि इसे और भी सुरक्षित और हैक करना कठिन हो सके। डिफ़ॉल्ट रूप से, TDE एन्क्रिप्ट करने से पहले SALT को क्लियरटेक्स्ट में जोड़ देता है।

आप एक कॉलम पर बना और इंडेक्स नहीं कर सकते जो कि SALT विकल्प के साथ एन्क्रिप्ट किया गया है। यदि आप एन्क्रिप्टेड कॉलम पर इंडेक्स जोड़ना चाहते हैं, तो आपको निम्न उदाहरण जैसे NO SALToption का उपयोग करना चाहिए:

CREATE TABLE test3 (id number,name varchar2(20),s_s_num number ENCRYPT NO SALT,Ph_no number ENCRYPT USING '3DES168');
पारदर्शी डेटा एन्क्रिप्शन का उपयोग करके Oracle डेटाबेस को सुरक्षित करें

यहां, S_S_NUM कॉलम NO SALT विकल्प और PH_NO . के साथ एन्क्रिप्ट किया गया है कॉलम एक डिफ़ॉल्ट SALT विकल्प के साथ बनाया गया है।

निम्न उदाहरण दिखाता है कि आप PH_NO . पर एक अनुक्रमणिका नहीं बना सकते कॉलम क्योंकि आपने इसे डिफ़ॉल्ट रूप से SALT विकल्प के साथ बनाया है।

पारदर्शी डेटा एन्क्रिप्शन का उपयोग करके Oracle डेटाबेस को सुरक्षित करें

मौजूदा टेबल में कॉलम एन्क्रिप्ट करें

निम्न आदेश मौजूदा तालिका में एक कॉलम को एन्क्रिप्ट करता है:

ALTER TABLE test1 ADD (ssn VARCHAR2(11) ENCRYPT);
पारदर्शी डेटा एन्क्रिप्शन का उपयोग करके Oracle डेटाबेस को सुरक्षित करें

कॉलम पर एन्क्रिप्शन अक्षम करें

निम्न आदेश कॉलम पर एन्क्रिप्शन अक्षम करता है:

ALTER TABLE test1 MODIFY (ssn DECRYPT);
पारदर्शी डेटा एन्क्रिप्शन का उपयोग करके Oracle डेटाबेस को सुरक्षित करें

TDE के उपयोग पर प्रतिबंध

टीडीई के उपयोग पर निम्नलिखित प्रतिबंधों को ध्यान में रखें:

  • आप एन्क्रिप्टेड कॉलम पर बी-ट्री के अलावा कोई इंडेक्स नहीं बना सकते।
पारदर्शी डेटा एन्क्रिप्शन का उपयोग करके Oracle डेटाबेस को सुरक्षित करें
  • बाहरी बड़ी वस्तुओं (BFILE) पर एन्क्रिप्शन की अनुमति नहीं है।
पारदर्शी डेटा एन्क्रिप्शन का उपयोग करके Oracle डेटाबेस को सुरक्षित करें
  • यदि वॉलेट बंद है तो आप आयात या निर्यात संचालन नहीं कर सकते।

त्रुटि क्योंकि बटुआ बंद है

पारदर्शी डेटा एन्क्रिप्शन का उपयोग करके Oracle डेटाबेस को सुरक्षित करें

सफलता क्योंकि बटुआ खुला है

पारदर्शी डेटा एन्क्रिप्शन का उपयोग करके Oracle डेटाबेस को सुरक्षित करें

निष्कर्ष

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

कोई टिप्पणी करने या प्रश्न पूछने के लिए प्रतिक्रिया टैब का उपयोग करें।

विशेषज्ञ प्रशासन, प्रबंधन और कॉन्फ़िगरेशन के साथ अपने परिवेश को अनुकूलित करें

रैकस्पेस की एप्लिकेशन सेवाएं(RAS) विशेषज्ञ अनुप्रयोगों के व्यापक पोर्टफोलियो में निम्नलिखित पेशेवर और प्रबंधित सेवाएं प्रदान करते हैं:

  • ईकामर्स और डिजिटल अनुभव प्लेटफॉर्म
  • एंटरप्राइज रिसोर्स प्लानिंग (ईआरपी)
  • बिजनेस इंटेलिजेंस
  • बिक्री बल ग्राहक संबंध प्रबंधन (सीआरएम)
  • डेटाबेस
  • ईमेल होस्टिंग और उत्पादकता

हम वितरित करते हैं:

  • निष्पक्ष विशेषज्ञता :हम तत्काल मूल्य प्रदान करने वाली क्षमताओं पर ध्यान केंद्रित करते हुए आपकी आधुनिकीकरण यात्रा को सरल और मार्गदर्शन करते हैं।
  • कट्टर अनुभव ™:हम पहले एक प्रक्रिया को जोड़ते हैं। प्रौद्योगिकी दूसरा। व्यापक समाधान प्रदान करने के लिए समर्पित तकनीकी सहायता के साथ दृष्टिकोण।
  • बेजोड़ पोर्टफोलियो :हम व्यापक क्लाउड अनुभव लागू करते हैं ताकि आपको सही क्लाउड पर सही तकनीक को चुनने और परिनियोजित करने में मदद मिल सके।
  • फुर्तीली डिलीवरी :हम आपसे मिलते हैं जहां आप अपनी यात्रा में हैं और सफलता को अपने साथ संरेखित करते हैं।

आरंभ करने के लिए अभी चैट करें।


  1. Oracle EBS 12.2 डेटाबेस को Oracle डेटाबेस 19c में अपग्रेड करें

    यह पोस्ट Oracle® E-Business Suite (EBS)12.2 को Oracle डेटाबेस 19c के साथ कॉन्फ़िगर करने के चरणों की पड़ताल करती है। परिचय Oracle ने हाल ही में Oracle डेटाबेस 19c को EBS 12.2 के साथ प्रमाणित किया है। जब आप Oracle EBS डेटाबेस को संस्करण 12c (12.1.0.2) या 11.2.0.4 से डेटाबेस 19c में अपग्रेड करते हैं,

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

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

  1. Oracle 19c में DBCA कमांड का उपयोग करके डेटाबेस क्लोन करना

    यह ब्लॉग डेटाबेस कॉन्फ़िगरेशन सहायक (DBCA) का उपयोग करने के तरीकों का परिचय देता है, Oracle 19c में एक नई सुविधा, स्रोत डेटाबेस का बैकअप लिए बिना एक दूरस्थ प्लग करने योग्य डेटाबेस (PDB) को एक कंटेनर डेटाबेस (CDB) में क्लोन करने के लिए। स्रोत से लक्ष्य तक क्लोन करने में कम से कम समय लगता है। स्रोत D