এই ব্লগটি Transparent Data Encryption (TDE) ব্যবহার করে Oracle® ডেটাবেসের মধ্যে সংবেদনশীল ডেটা সুরক্ষিত করার জন্য উন্নত নিরাপত্তা অপশন ব্যবহারের জরুরি বিষয়গুলো কভার করে। এই ফিচার আপনাকে ডেটাবেস কলাম এনক্রিপ্ট করতে এবং এনক্রিপশন কী পরিচালনা করতে সক্ষম করে।
ভূমিকা
TDE সংবেদনশীল ডেটাবেস ডেটা এনক্রিপশন সক্ষম করে, যা অপারেটিং সিস্টেম ফাইলে সংরক্ষিত থাকে। এটি এনক্রিপশন কীগুলোর নিরাপদ স্টোরেজ এবং ব্যবস্থাপনা প্রদান করে একটি সিকিউরিটি মডিউলে যা ডেটাবেসের বাইরে অবস্থিত।
এনক্রিপ্ট করা ডেটা ডেটাবেস ব্যবহারকারীর জন্য স্বচ্ছভাবে ডিক্রিপ্ট হয় যারা ডেটা অ্যাক্সেস করতে পারে। TDE এনক্রিপশন কীগুলো ডেটাবেসের বাইরে Oracle Wallet-এ সংরক্ষণ করে।
কেন TDE ব্যবহার করবেন?
যদি চোররা ডেটাবেসের ব্যাকআপ টেপ চুরি করে, এবং তাদের নিজস্ব সার্ভারে রিস্টোর করে, তবে তাদের কোম্পানির সবচেয়ে সংবেদনশীল ডেটাতে অ্যাক্সেস থাকবে। এটি একটি অসম্মতিযোগ্য রিস্ক। অধিকাংশ কোম্পানির নিয়মকানুন এবং গাইডলাইন ডেটাবেস ডেটা রক্ষাকে একটি কমপ্লায়েন্স প্রয়োজনিয়তা মনে করে। আপনি কীভাবে আপনার ডেটাবেসকে এই দুর্বলতা থেকে রক্ষা করবেন?
একটি সমাধান হল ডেটাবেসের সংবেদনশীল ডেটা এনক্রিপ্ট করা এবং এনক্রিপশন কীগুলো আলাদা লোকেশনে সংরক্ষণ করা। কী ছাড়া, যেকোনো চুরি করা ডেটা বেকার।
TDE কীভাবে কাজ করে?
TDE একটি কী-ভিত্তিক অ্যাক্সেস কন্ট্রোল সিস্টেম। এমনকি যদি এনক্রিপ্ট করা ডেটা রিট্রিভ করা হয়, তবে অনুমোদিত ডিক্রিপশন ছাড়া এটি বেকার, যা টেবিল অ্যাক্সেস করতে অনুমোদিত ব্যবহারকারীদের জন্য স্বয়ংক্রিয়ভাবে হয়।
এনক্রিপ্ট করা কলামযুক্ত টেবিলের জন্য, এনক্রিপশন কীকে কলাম এনক্রিপশন কী বলা হয়। প্রতিটি টেবিলের কলাম এনক্রিপশন কী ডেটাবেস সার্ভারের মাস্টার কী দিয়ে এনক্রিপ্ট করা থাকে। মাস্টার এনক্রিপশন কী ডেটাবেসের বাইরে Oracle Wallet-এ সংরক্ষিত থাকে।
এনক্রিপ্ট করা টেবিল কীগুলো ডেটা ডিকশনারিতে রাখা হয়। যখন একজন ব্যবহারকারী একটি কলামে ডেটা এন্টার করে যা এনক্রিপ্ট করা হিসেবে সংজ্ঞায়িত, 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/wallet-এ, কিন্তু আপনি 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;
ওয়ালেট পাসওয়ার্ড কেস সেনসিটিভ। পাসওয়ার্ড স্ট্রিং ডবল কোটেশন মার্ক (" “) দিয়ে ঘিরে দিন।
certificate_ID হল একটি ঐচ্ছিক স্ট্রিং যাতে Oracle Wallet-এ সংরক্ষিত একটি সার্টিফিকেটের অনন্য শনাক্তকারী থাকে। আপনি V$WALLET ফিক্সড ভিউ কোয়েরি করে certificate_ID খুঁজে পেতে পারেন যখন ওয়ালেট খোলা থাকে।
ওয়ালেট খুলুন এবং বন্ধ করুন
ওয়ালেট তৈরি করে পাসওয়ার্ড সেট করার পর, আপনাকে ওয়ালেট স্পষ্টভাবে খোলতে হবে SYS, SYSTEM, বা SYSDBA অ্যাকাউন্ট ব্যবহার করে ডেটাবেস শুরু করার প্রতিবার।
উদাহরণস্বরূপ, নিচের কমান্ড চালান:
alter system set encryption wallet open identified by "oracle12345";
গুরুত্বপূর্ণ: ডেটাবেসের ওপর যেকোনো অ্যাকশন করতে হলে, আপনাকে ওয়ালেট খোলতে হবে।
নিচের উদাহরণটি একটি ডেটাবেস অপারেশন দেখাচ্ছে যেখানে ডেটাবেস আপ আছে কিন্তু ওয়ালেট বন্ধ:
alter system set encryption wallet close;
এখন, আপনি যদি একটি এনক্রিপ্ট করা কলাম থেকে ডেটা রিট্রিভ করার চেষ্টা করেন, তবে নিচের এরর মেসেজ দেখাবে কারণ ওয়ালেট বন্ধ:
এনক্রিপ্ট করা কলাম থেকে ডেটা রিট্রিভ করতে, আপনাকে ওয়ালেট খোলতে হবে নিচের কমান্ড ব্যবহার করে:
alter system set encryption wallet open identified by "oracle12345";
এখন আপনি এনক্রিপ্ট করা কলাম থেকে ডেটা রিট্রিভ করতে পারেন কারণ ওয়ালেট খোলা আছে।
এনক্রিপ্ট করা কলামসহ টেবিল তৈরি করুন
এনক্রিপ্ট করা কলামসহ টেবিল তৈরি করতে নিচের কমান্ড ব্যবহার করুন:
CREATE TABLE test2 (id number,name varchar2(20),s_s_num number ENCRYPT);
নন-ডিফল্ট অ্যালগরিদম এবং NO SALT অপশন ব্যবহার করে টেবিল তৈরি করুন
SALT হল একটি র্যান্ডম স্ট্রিং যা ডেটা এনক্রিপ্ট করার আগে যোগ করা হয় इसे আরও নিরাপদ এবং হ্যাক করা কঠিন করতে। ডিফল্টভাবে, TDE ক্লিয়ারটেক্সটে SALT যোগ করে এনক্রিপ্ট করার আগে।
আপনি একটি কলামে ইনডেক্স তৈরি করতে পারবেন না যা SALT অপশন দিয়ে এনক্রিপ্ট করা হয়েছে। আপনি যদি এনক্রিপ্ট করা কলামে ইনডেক্স যোগ করতে চান, তবে আপনাকে NO SALT অপশন ব্যবহার করতে হবে নিচের উদাহরণের মতে:
CREATE TABLE test3 (id number,name varchar2(20),s_s_num number ENCRYPT NO SALT,Ph_no number ENCRYPT USING '3DES168');
এখানে, S_S_NUM কলাম NO SALT অপশন দিয়ে এনক্রিপ্ট করা হয়েছে এবং PH_NO কলাম ডিফল্ট SALT অপশন দিয়ে তৈরি হয়েছে।
নিচের উদাহরণটি দেখাচ্ছে যে আপনি PH_NO কলামে ইনডেক্স তৈরি করতে পারবেন না কারণ এটি ডিফল্টভাবে SALT অপশন দিয়ে তৈরি হয়েছে।
মৌজুदा টেবিলে কলাম এনক্রিপ্ট করুন
নিচের কমান্ড একটি মৌজুदा টেবিলে কলাম এনক্রিপ্ট করে:
ALTER TABLE test1 ADD (ssn VARCHAR2(11) ENCRYPT);
একটি কলামে এনক্রিপশন নিষ্ক্রিয় করুন
নিচের কমান্ড একটি কলামে এনক্রিপশন নিষ্ক্রিয় করে:
ALTER TABLE test1 MODIFY (ssn DECRYPT);
TDE ব্যবহারের সীমাবদ্ধতা
TDE ব্যবহারের নিচের সীমাবদ্ধতাগুলো মনে রাখবেন:
- আপনি একটি এনক্রিপ্ট করা কলামে B-tree ছাড়া অন্য কোনো ইনডেক্স তৈরি করতে পারবেন না।
- এক্সটার্নাল বড় অবজেক্ট (BFILE)-এ এনক্রিপশন অনুমোদিত নয়।
- আপনি ইম্পোর্ট বা এক্সপোর্ট অপারেশন পারফর্ম করতে পারবেন না যদি ওয়ালেট বন্ধ থাকে।
ওয়ালেট বন্ধ থাকায় এরর
ওয়ালেট খোলা থাকায় সাফল্য
উপসংহার
যদি আপনাকে অননুমোদিত বা ব্যাক-ডোর অ্যাক্সেস থেকে সংবেদনশীল ডেটা সুরক্ষিত করতে হয়, তবে TDE নিরাপত্তা অপশন ব্যবহার করুন। এই ফিচার আপনাকে অবিলম্বে ডেটা এনক্রিপশন এবং কমপ্লায়েন্স প্রদান করে কোনো কোডিং এবং কী ম্যানেজমেন্ট জটিলতা ছাড়া। এটি আপনাকে কৌশলগত প্রচেষ্টাগুলোর ওপর ফোকাস করতে সক্ষম করে।
ফিডব্যাক ট্যাব ব্যবহার করে মন্তব্য করুন বা প্রশ্ন করুন।
বিশেষজ্ঞ প্রশাসন, ব্যবস্থাপনা এবং কনফিগারেশন দিয়ে আপনার পরিবেশ অপ্টিমাইজ করুন
Rackspace-এর অ্যাপ্লিকেশন সার্ভিস (RAS) বিশেষজ্ঞরা অ্যাপ্লিকেশনের ব্যাপক পোর্টফোলিওর জুড়ে নিচের প্রফেশনাল এবং ম্যানেজড সার্ভিসগুলো প্রদান করেন:
- ই-কমার্স এবং ডিজিটাল এক্সপেরিয়েন্স প্ল্যাটফর্ম
- এন্টারপ্রাইজ রিসোর্স প্ল্যানিং (ERP)
- বিজনেস ইন্টেলিজেন্স
- Salesforce কাস্টমার রিলেশনশিপ ম্যানেজমেন্ট (CRM)
- ডেটাবেস
- ইমেইল হোস্টিং এবং প্রোডাক্টিভিটি
আমরা প্রদান করি:
- পক্ষপাতমূলক না এমন দক্ষতা: আমরা আপনার আধুনিকীকরণের যাত্রা সরল ও পথপ্রদর্শন করি, সেগুলোর ওপর ফোকাস করি যা অবিলম্বে মান দেয়।
- Fanatical Experience™: আমরা একটি প্রক্রিয়া-প্রথম, প্রযুক্তি-দ্বিতীয়® পদ্ধতির সাথে ডেডিকেটেড টেকনিক্যাল সাপোর্ট জোড়া দিয়ে সমগ্র সমাধান দিই।
- অনুপম পোর্টফোলিও: আমরা ব্যাপক ক্লাউড অভিজ্ঞতা প্রয়োগ করি যাতে আপনি সঠিক প্রযুক্তি সঠিক ক্লাউডে বেছে নেওয়া এবং ত্রিন করুন।
- চুস্ত ডেলিভারি: আমরা আপনার যাত্রার যেখানে আছেন সেখানে আপনাকে পাই এবং আমাদের সাফল্য আপনার সাথে মিলিয়ে দিই।
এখন চ্যাট করুন শুরু করতে।