DB2 একটি শক্তিশালী ডেটাবেস ম্যানেজমেন্ট সিস্টেম (DBMS) যা সুরক্ষিত ডেটাবেস পরিচালনা করতে সক্ষম। ডেটাবেস সুরক্ষা ব্যবস্থাপনা ডেটাবেস অ্যাপ্লিকেশনগুলির সুরক্ষা নিশ্চিত করার জন্য গুরুত্বপূর্ণ, যেমন অথেনটিকেশন, অথোরাইজেশন, ডেটা এনক্রিপশন, এবং অ্যাক্সেস কন্ট্রোল। DB2-এ সিকিউরিটি ব্যবস্থাপনা ব্যবহৃত হয় ডেটাবেসের বিভিন্ন স্তরে ডেটার নিরাপত্তা নিশ্চিত করতে।
অথেনটিকেশন হলো প্রক্রিয়া যার মাধ্যমে ব্যবহারকারীর পরিচয় যাচাই করা হয়। DB2-এ এটি নিশ্চিত করা হয় যে শুধুমাত্র অনুমোদিত ব্যবহারকারীরাই ডেটাবেস অ্যাক্সেস করতে পারে।
LDAP
, OS authentication
, বা Kerberos
।CREATE USER <user_name> IDENTIFIED BY '<password>';
এই কমান্ডটি DB2-এ একটি নতুন ব্যবহারকারী তৈরি করবে এবং তার জন্য পাসওয়ার্ড সেট করবে।
অথোরাইজেশন হলো প্রক্রিয়া যার মাধ্যমে নির্ধারিত হয় যে ব্যবহারকারীরা কোন কার্যক্রম করতে পারবেন এবং কোন না। DB2-এ অথোরাইজেশন ব্যবস্থার মাধ্যমে একটি ব্যবহারকারী কোন ডেটাবেস অবজেক্ট (যেমন টেবিল, ভিউ, বা স্টোরড প্রোসিডিউর) অ্যাক্সেস করতে পারবে বা না পারবে তা নিয়ন্ত্রিত হয়।
SELECT
, INSERT
, UPDATE
, বা DELETE
। রোল হল গ্রুপ প্রিভিলেজ যা একাধিক ব্যবহারকারীকে দেওয়া যায়।GRANT SELECT ON Employees TO <user_name>;
এই কমান্ডটি Employees
টেবিলের উপর SELECT
অনুমতি প্রদান করবে নির্দিষ্ট ব্যবহারকারীকে।
DB2-এ রোল একটি গ্রুপ বা সেট যা ব্যবহারকারীদের একাধিক প্রিভিলেজ প্রদান করার জন্য ব্যবহৃত হয়। একটি রোল বিভিন্ন প্রিভিলেজ এবং টাস্ককে সংজ্ঞায়িত করে। রোল ব্যবহারের মাধ্যমে DB2-এ একাধিক ব্যবহারকারীর জন্য একযোগভাবে অনুমতি সেট করা সহজ হয়।
CREATE ROLE AdminRole;
GRANT SELECT, INSERT, UPDATE ON Employees TO AdminRole;
এটি একটি AdminRole
নামক রোল তৈরি করবে এবং Employees টেবিলের উপর SELECT
, INSERT
, এবং UPDATE
অনুমতি প্রদান করবে।
DB2 ডেটাবেসে সুরক্ষিত ডেটা স্টোর করার জন্য ডেটা এনক্রিপশন ব্যবহার করা হয়। এটি ডেটা ট্রান্সমিশন এবং স্টোরেজ উভয় ক্ষেত্রেই কার্যকরী। DB2 ডেটাবেসে ইনক্রিপশন নিশ্চিত করে যে ডেটা শুধুমাত্র অনুমোদিত ব্যবহারকারীরা পড়তে বা লিখতে পারবে।
CREATE TABLESPACE encrypted_space USING (ENCRYPTION);
এটি একটি টেবিল স্পেস তৈরি করবে যা এনক্রিপ্টেড থাকবে।
DB2-এ অ্যাক্সেস কন্ট্রোল ব্যবস্থাপনা ব্যবহারকারীদের তাদের প্রয়োজনীয় ডেটাবেস অবজেক্টগুলো অ্যাক্সেস করার অনুমতি নিয়ন্ত্রণ করে। এটি Object-level security নামে পরিচিত, যা টেবিল, ভিউ, ইনডেক্স, বা অন্য কোনো অবজেক্টের ওপর কার্যকর হতে পারে।
REVOKE SELECT ON Employees FROM <user_name>;
এই কমান্ডটি Employees
টেবিলের উপর নির্দিষ্ট ব্যবহারকারীর SELECT অনুমতি প্রত্যাহার করবে।
ডেটাবেস সুরক্ষা নিশ্চিত করার জন্য অডিটিং একটি গুরুত্বপূর্ণ ভূমিকা পালন করে। DB2 অডিটিংয়ের মাধ্যমে আপনি ব্যবহারকারীদের কার্যকলাপ মনিটর করতে পারেন এবং লগ করতে পারেন। অডিটিংয়ের মাধ্যমে অথেনটিকেশন, অথোরাইজেশন এবং অন্যান্য নিরাপত্তা ইভেন্ট ট্র্যাক করা সম্ভব হয়।
UPDATE DB2ADMIN.audit_enabled SET audit = 'YES';
এই কমান্ডটি DB2-এ অডিটিং সক্ষম করবে।
SELECT
, INSERT
, UPDATE
, DELETE
।DB2 সিকিউরিটি ম্যানেজমেন্ট অত্যন্ত গুরুত্বপূর্ণ, কারণ এটি ডেটাবেসের নিরাপত্তা নিশ্চিত করে এবং ডেটার অখণ্ডতা বজায় রাখে। অথেনটিকেশন, অথোরাইজেশন, রোল ম্যানেজমেন্ট, ডেটা এনক্রিপশন, অ্যাক্সেস কন্ট্রোল, এবং অডিটিং হল DB2 সিকিউরিটি ব্যবস্থাপনার মূল উপাদান। সঠিক সিকিউরিটি কনফিগারেশন দ্বারা DB2 ডেটাবেস ব্যবহারকারীদের নিরাপত্তা এবং ডেটার সুরক্ষা নিশ্চিত করা যায়।
DB2 একটি শক্তিশালী ডেটাবেস ম্যানেজমেন্ট সিস্টেম যা ডেটা নিরাপত্তা এবং অ্যাক্সেস কন্ট্রোল নিশ্চিত করতে Authentication (প্রমাণীকরণ) এবং Authorization (অধিকার প্রদান) ফিচার প্রদান করে। এই দুটি ফিচার ডেটাবেসে অ্যাক্সেস নিয়ন্ত্রণ এবং নিরাপত্তা বজায় রাখতে সহায়ক। নিচে DB2 Authentication এবং Authorization এর মূল ধারণা এবং তাদের ব্যবহারের বিস্তারিত আলোচনা করা হলো।
Authentication হল একটি প্রক্রিয়া যার মাধ্যমে DB2 সিস্টেমে লগইন করার সময় ব্যবহারকারীর পরিচয় নিশ্চিত করা হয়। এটি নিশ্চিত করে যে ব্যবহারকারী অনুমোদিত এবং সঠিক পরিচয় সহ ডেটাবেসে অ্যাক্সেস করার চেষ্টা করছে।
DB2-এ প্রধানত তিনটি ধরনের প্রমাণীকরণ ব্যবহৃত হয়:
DB2 প্রমাণীকরণ কনফিগার করতে নিম্নলিখিত কমান্ড ব্যবহার করা হয়:
db2 update dbm cfg using authentication SERVER
এখানে, SERVER প্রমাণীকরণের ধরন নির্দেশ করে। এটি সার্ভারের প্রমাণীকরণ সেট করবে, যা ইউজারনেম এবং পাসওয়ার্ড দিয়ে ডেটাবেস অ্যাক্সেস করার অনুমতি দেয়।
Authorization হল একটি প্রক্রিয়া যার মাধ্যমে DB2-এ ব্যবহারকারীর অনুমোদিত কাজ এবং ডেটাবেস অবজেক্টগুলির ওপর অ্যাক্সেস নিয়ন্ত্রণ করা হয়। DB2-এ, Authorization বিভিন্ন ভূমিকার মাধ্যমে ব্যবহারকারীদের বিভিন্ন ধরনের অধিকার দেয়।
Granting Permissions (অনুমতি প্রদান):
উদাহরণ:
GRANT SELECT, INSERT ON TABLE employees TO USER user1;
এখানে, user1
কে employees
টেবিলের উপর SELECT
এবং INSERT
অ্যাক্সেস দেওয়া হয়েছে।
Revoking Permissions (অনুমতি প্রত্যাহার করা):
উদাহরণ:
REVOKE SELECT ON TABLE employees FROM USER user1;
Role-Based Authorization (ভূমিকা ভিত্তিক অনুমোদন):
উদাহরণ:
CREATE ROLE admin_role;
GRANT SELECT, INSERT, DELETE ON TABLE employees TO ROLE admin_role;
GRANT admin_role TO USER user1;
DB2 তে User এবং Role Management অত্যন্ত গুরুত্বপূর্ণ অংশ, যা ডেটাবেসের নিরাপত্তা এবং অ্যাক্সেস কন্ট্রোল নিশ্চিত করে। ব্যবহারকারীদের সঠিক অ্যাক্সেস প্রদান এবং রোল নির্ধারণ করা ডেটাবেসের সুরক্ষা বজায় রাখতে সাহায্য করে। এই প্রক্রিয়ার মাধ্যমে, আপনি নির্দিষ্ট ব্যবহারকারী বা গ্রুপের জন্য নির্দিষ্ট অনুমতি নির্ধারণ করতে পারবেন, যাতে ডেটাবেস সিস্টেম নিরাপদ এবং পরিচালনাযোগ্য থাকে।
User Management এর মাধ্যমে DB2 ডেটাবেসে ব্যবহারকারী তৈরি, অ্যাক্সেস কন্ট্রোল এবং অনুমতি দেওয়া হয়। DB2 তে ব্যবহারকারী তৈরি করতে, তাদের জন্য পাসওয়ার্ড সেট করতে এবং নির্দিষ্ট অনুমতি দিতে হবে।
ব্যবহারকারী তৈরি করতে DB2 তে CREATE USER
বা CREATE AUTHID
কমান্ড ব্যবহার করা হয়।
ব্যবহারকারী তৈরি করার উদাহরণ:
CREATE USER db_user IDENTIFIED BY 'password';
এখানে:
db_user
হল নতুন ব্যবহারকারীর নাম।'password'
হল ব্যবহারকারীর পাসওয়ার্ড।DB2 তে ব্যবহারকারীদের নির্দিষ্ট টেবিল বা ডেটাবেসে অ্যাক্সেস দেওয়ার জন্য অনুমতি প্রদান করা হয়। DB2 তে বিভিন্ন ধরণের অনুমতি থাকতে পারে যেমন: SELECT
, INSERT
, UPDATE
, DELETE
, ইত্যাদি।
ব্যবহারকারীকে অনুমতি দেওয়ার উদাহরণ:
GRANT SELECT ON TABLE employees TO db_user;
এখানে, db_user
ব্যবহারকারীকে employees
টেবিলে SELECT করার অনুমতি দেওয়া হয়েছে।
যেকোনো ব্যবহারকারীর অনুমতি বাতিল করার জন্য DB2 তে REVOKE
কমান্ড ব্যবহার করা হয়।
ব্যবহারকারীর অনুমতি ফিরিয়ে নেওয়ার উদাহরণ:
REVOKE SELECT ON TABLE employees FROM db_user;
এখানে, db_user
থেকে employees
টেবিলের SELECT অনুমতি ফিরিয়ে নেওয়া হয়েছে।
Role Management DB2 তে একটি ব্যবস্থাপনা কৌশল যেখানে একাধিক ব্যবহারকারীকে নির্দিষ্ট roles নির্ধারণ করে তাদের অনুমতি প্রদান করা হয়। রোল তৈরি করে, ব্যবহারকারীদের গ্রুপবদ্ধ করা হয়, এবং এই গ্রুপের জন্য নির্দিষ্ট অনুমতি দেওয়া হয়। এটি নিরাপত্তা এবং ব্যবস্থাপনা সহজ করে তোলে।
DB2 তে রোল তৈরি করতে CREATE ROLE
কমান্ড ব্যবহার করা হয়। রোল হল একটি ধরনের অনুমতি সংগ্রহ, যা ব্যবহারকারীদের গ্রুপ হিসেবে কাজ করতে দেয়।
রোল তৈরি করার উদাহরণ:
CREATE ROLE admin_role;
এখানে, admin_role
একটি নতুন রোল তৈরি করা হয়েছে।
ব্যবহারকারীকে একটি রোল অ্যাসাইন করার জন্য GRANT
কমান্ড ব্যবহার করা হয়।
ব্যবহারকারীকে রোল অ্যাসাইন করার উদাহরণ:
GRANT admin_role TO db_user;
এখানে, db_user
ব্যবহারকারীকে admin_role
রোল দেওয়া হয়েছে, যার মাধ্যমে এই রোলের অধিকারী সমস্ত অনুমতি পাবে।
একটি রোলের জন্য অনুমতি প্রদান করার জন্য, GRANT
কমান্ড ব্যবহার করতে হয়। যখন রোলকে অনুমতি দেওয়া হয়, তখন সেই রোলের অধিকারী সকল ব্যবহারকারী এই অনুমতি পেয়ে যায়।
রোলকে অনুমতি দেওয়ার উদাহরণ:
GRANT SELECT, INSERT, UPDATE ON TABLE employees TO ROLE admin_role;
এখানে, admin_role
রোলের জন্য employees
টেবিলের SELECT, INSERT, এবং UPDATE অনুমতি প্রদান করা হয়েছে।
রোলের জন্য দেওয়া অনুমতি ফিরিয়ে নেওয়ার জন্য REVOKE
কমান্ড ব্যবহার করা হয়।
রোলের অনুমতি ফিরিয়ে নেওয়ার উদাহরণ:
REVOKE SELECT ON TABLE employees FROM ROLE admin_role;
এখানে, admin_role
রোল থেকে employees
টেবিলের SELECT অনুমতি ফিরিয়ে নেওয়া হয়েছে।
একটি রোল মুছে ফেলতে হলে DROP ROLE
কমান্ড ব্যবহার করতে হয়। রোলটি মুছে ফেললে, সেই রোলের সাথে সম্পর্কিত সমস্ত অনুমতি এবং ব্যবহৃত রোলগুলির অ্যাক্সেস বন্ধ হয়ে যাবে।
রোল মুছে ফেলার উদাহরণ:
DROP ROLE admin_role;
এখানে, admin_role
রোলটি DB2 থেকে মুছে ফেলা হয়েছে।
User এবং Role Management DB2 তে একটি গুরুত্বপূর্ণ ভূমিকা পালন করে যা ডেটাবেসের নিরাপত্তা এবং অ্যাক্সেস কন্ট্রোল নিশ্চিত করে। DB2 তে ব্যবহারকারী তৈরি করা, তাদের অনুমতি প্রদান করা, এবং রোল তৈরি করে ব্যবহারকারীদের অনুমতি গ্রুপবদ্ধ করার মাধ্যমে সহজে নিরাপত্তা নিশ্চিত করা সম্ভব। এই কৌশলগুলি ব্যবহারের মাধ্যমে ডেটাবেস নিরাপদ, কার্যকরী এবং সুসংহত রাখা যায়।
Object Level Security (OLS) হল DB2 ডেটাবেসের একটি গুরুত্বপূর্ণ নিরাপত্তা বৈশিষ্ট্য, যা ডেটাবেস অবজেক্টগুলোর (যেমন টেবিল, ভিউ, ইনডেক্স, ফাংশন ইত্যাদি) প্রতি নির্দিষ্ট অ্যাক্সেস নিয়ন্ত্রণ নির্ধারণ করতে সাহায্য করে। এটি ব্যবহারকারীদের বিভিন্ন ডেটাবেস অবজেক্টে কি ধরনের অ্যাক্সেস থাকবে তা নিয়ন্ত্রণ করতে পারে, যেমন: SELECT, INSERT, UPDATE, DELETE, EXECUTE, ইত্যাদি। OLS ব্যবহার করে, আপনি নির্দিষ্ট ডেটাবেস অবজেক্টে ব্যবহারকারীর অনুমতিসমূহ (permissions) সেট করতে পারেন এবং এতে নিরাপত্তা আরও শক্তিশালী হয়।
DB2 Object Level Security এর অন্তর্ভুক্ত কয়েকটি গুরুত্বপূর্ণ উপাদান রয়েছে:
Privileges হল সেই অনুমতিগুলি যা ডেটাবেস অবজেক্টগুলিতে অ্যাক্সেস প্রদানের জন্য ব্যবহৃত হয়। কিছু সাধারণ অনুমতি হল:
Roles হল ব্যবহারকারীদের নির্দিষ্ট গ্রুপে শ্রেণীবদ্ধ করার একটি উপায়, যাতে সহজেই সেই গ্রুপের সদস্যদের জন্য একযোগভাবে অ্যাক্সেস প্রদান বা সীমাবদ্ধ করা যায়। উদাহরণস্বরূপ, আপনি একটি Admin রোল তৈরি করতে পারেন যা সমস্ত অনুমতি প্রদান করবে, এবং একটি ReadOnly রোল যা শুধুমাত্র SELECT অনুমতি দেবে।
DB2-তে নির্দিষ্ট ডেটাবেস অবজেক্টে অ্যাক্সেস প্রদান করার জন্য GRANT কমান্ড ব্যবহার করা হয়। উদাহরণস্বরূপ, একটি টেবিলের উপর SELECT অনুমতি প্রদান করতে:
GRANT SELECT ON TABLE employees TO USER john_doe;
এটি employees টেবিলের উপর john_doe ইউজারের জন্য SELECT অনুমতি প্রদান করবে।
একইভাবে, অনুমতি প্রত্যাহার করার জন্য REVOKE কমান্ড ব্যবহার করা হয়। উদাহরণস্বরূপ:
REVOKE SELECT ON TABLE employees FROM USER john_doe;
এটি john_doe ইউজারের কাছ থেকে employees টেবিলের SELECT অনুমতি প্রত্যাহার করবে।
DB2 তে, Authorization হল ব্যবহারকারী বা রোলকে নির্দিষ্ট ডেটাবেস অবজেক্টে অ্যাক্সেস দেওয়ার প্রক্রিয়া, এবং Authentication হল ব্যবহৃত পাসওয়ার্ড বা অন্যান্য সিকিউরিটি মেকানিজমের মাধ্যমে ব্যবহারকারীর পরিচয় নিশ্চিত করা।
ধরা যাক, একটি employees টেবিল আছে এবং আপনি চান শুধুমাত্র Manager রোলের ব্যবহারকারীরা এই টেবিলের SELECT এবং UPDATE করতে পারবে, অন্যরা নয়।
GRANT SELECT, UPDATE ON TABLE employees TO ROLE Manager;
এখানে, Manager রোলের সদস্যদের জন্য employees টেবিলের উপর SELECT এবং UPDATE অনুমতি দেওয়া হয়েছে।
এখন, আপনি যদি চান শুধুমাত্র একজন নির্দিষ্ট ইউজার john_doe কে একটি টেবিলের INSERT অনুমতি দিতে, তবে আপনি নিম্নলিখিত কমান্ডটি ব্যবহার করতে পারেন:
GRANT INSERT ON TABLE employees TO USER john_doe;
এটি john_doe ইউজারের জন্য employees টেবিলের উপর INSERT অনুমতি প্রদান করবে।
আপনি DB2 তে একটি রোল তৈরি করতে পারেন এবং সেই রোলের সদস্যদের জন্য নির্দিষ্ট অ্যাক্সেস অনুমতি প্রদান করতে পারেন। উদাহরণস্বরূপ:
CREATE ROLE ReadOnly;
GRANT SELECT ON TABLE employees TO ROLE ReadOnly;
এটি ReadOnly রোল তৈরি করবে এবং সেই রোলের সদস্যদের জন্য employees টেবিলের SELECT অনুমতি প্রদান করবে।
Object Level Security DB2-এ একটি গুরুত্বপূর্ণ নিরাপত্তা ফিচার যা ডেটাবেসের অবজেক্টগুলির উপর অ্যাক্সেস নিয়ন্ত্রণ করতে ব্যবহৃত হয়। GRANT, REVOKE, এবং Roles এর মাধ্যমে ডেটাবেস অবজেক্টে ফাইন-গ্রেইনড অ্যাক্সেস কন্ট্রোল করা যায়, যা ডেটা সুরক্ষা এবং কার্যকরী ব্যবস্থাপনায় সহায়ক। DB2-এর Object Level Security নিরাপত্তার ক্ষেত্রে অত্যন্ত গুরুত্বপূর্ণ এবং ব্যবসায়িক পরিবেশে ডেটার সুরক্ষা নিশ্চিত করতে ব্যবহৃত হয়।
DB2 ডেটাবেসে Data Encryption এবং SSL (Secure Sockets Layer) কনফিগারেশন অত্যন্ত গুরুত্বপূর্ণ, কারণ এগুলো ডেটার সুরক্ষা নিশ্চিত করে এবং ডেটাবেস কমিউনিকেশনকে নিরাপদ রাখে। DB2 এ Data Encryption এবং SSL ব্যবহারের মাধ্যমে, আপনি ডেটা সংরক্ষণ এবং ট্রান্সমিশনের সময় নিরাপত্তা বজায় রাখতে পারেন। এখানে DB2-তে Data Encryption এবং SSL কনফিগারেশন সম্পর্কে বিস্তারিত আলোচনা করা হলো।
Data Encryption হল একটি পদ্ধতি যার মাধ্যমে ডেটা এনক্রিপ্ট করা হয় যাতে তা অননুমোদিত ব্যক্তিদের কাছে পড়া বা পরিবর্তন করা সম্ভব না হয়। DB2 ডেটাবেসে, আপনি Data-at-Rest Encryption এবং Data-in-Transit Encryption দুটি ধরনের এনক্রিপশন ব্যবহার করতে পারেন।
Data-at-Rest Encryption ডেটাবেসে সংরক্ষিত ডেটাকে এনক্রিপ্ট করে, যাতে ডেটাবেস ফাইল বা ব্যাকআপ ফাইল অবৈধভাবে এক্সেস করা হলে ডেটা সুরক্ষিত থাকে।
DB2-তে Data-at-Rest Encryption কনফিগার করার জন্য আপনাকে Encryption Keys তৈরি এবং কনফিগার করতে হবে। DB2 11.1 এবং তার পরবর্তী সংস্করণে, Transparent Data Encryption (TDE) সমর্থিত।
TDE কনফিগারেশন উদাহরণ:
এনক্রিপশন কিপিং সক্রিয় করুন: DB2 ইনস্ট্যান্সের জন্য ENCRYPTION
ফিচার সক্রিয় করতে নিম্নলিখিত কমান্ড ব্যবহার করুন:
db2 update db cfg for <database_name> using ENCRYPTION on
ডেটাবেস এনক্রিপ্ট করা: ডেটাবেস তৈরি করার সময় অথবা বিদ্যমান ডেটাবেসে TDE সক্রিয় করা যাবে।
CREATE DATABASE <database_name> USING CODESET UTF-8 TERRITORY US ENCRYPTION ON;
ব্যাকআপ ফাইল এনক্রিপ্ট করা: ব্যাকআপ ফাইল তৈরি করার সময়, তা এনক্রিপ্ট করতে পারেন:
db2 backup db <database_name> to /path/to/backup encrypt
Data-in-Transit Encryption হল সেই পদ্ধতি, যার মাধ্যমে নেটওয়ার্কের মাধ্যমে চলমান ডেটা এনক্রিপ্ট করা হয়। এটি DB2-এ SSL (Secure Sockets Layer) বা TLS (Transport Layer Security) প্রোটোকল ব্যবহার করে সম্পন্ন হয়।
SSL/TLS এনক্রিপশন হল একটি নিরাপদ যোগাযোগ প্রোটোকল যা নেটওয়ার্কের মাধ্যমে ডেটার গোপনীয়তা এবং অখণ্ডতা নিশ্চিত করে। DB2-এ SSL কনফিগারেশন ব্যবহার করে আপনি সার্ভার এবং ক্লায়েন্টের মধ্যে সুরক্ষিত ডেটা ট্রান্সমিশন স্থাপন করতে পারেন।
DB2-এ SSL সক্রিয় করার জন্য আপনাকে প্রথমে সার্টিফিকেট তৈরি করতে হবে এবং SSL কনফিগারেশন সক্রিয় করতে হবে।
SSL সার্টিফিকেট তৈরি করা:
OpenSSL ব্যবহার করে সার্টিফিকেট তৈরি করুন: সার্টিফিকেট তৈরি করতে OpenSSL কমান্ড ব্যবহার করা যেতে পারে।
openssl req -new -newkey rsa:2048 -days 365 -nodes -x509 -keyout db2_server.key -out db2_server.crt
DB2 সার্টিফিকেট স্টোরে সার্টিফিকেট যোগ করা: DB2 সার্ভারের সার্টিফিকেট স্টোরে এই সার্টিফিকেট যোগ করতে হবে:
db2set DB2_SSL_KEYDB=<path_to_keydb_file>
db2set DB2_SSL_LABEL=<label_for_certificate>
SSL সক্ষম করার জন্য DB2 ইনস্ট্যান্সে SSL প্যারামিটার কনফিগার করতে হবে।
DB2 ইনস্ট্যান্স কনফিগারেশন আপডেট করুন:
db2 update db cfg for <instance_name> using SSL_SERVER_OWNED YES
db2 update db cfg for <instance_name> using SSL_CLIENT_AUTH NO
SSL সার্ভার সক্ষম করা: সার্ভারের SSL কনফিগারেশন সক্রিয় করতে নিম্নলিখিত কমান্ড ব্যবহার করুন:
db2set DB2_SSL_SERVER_OWNED=YES
ক্লায়েন্টের SSL কনফিগারেশনের জন্য, আপনাকে ক্লায়েন্টের SSL_KEYDB এবং SSL_LABEL প্যারামিটার সেট করতে হবে।
ক্লায়েন্ট কনফিগারেশন উদাহরণ:
ক্লায়েন্টে SSL সক্রিয় করুন:
db2set DB2_SSL_KEYDB=<path_to_client_keydb>
db2set DB2_SSL_LABEL=<label_for_client_certificate>
SSL কনফিগারেশন সঠিকভাবে কাজ করছে কি না, তা যাচাই করার জন্য, DB2 সার্ভারের লগ চেক করা যেতে পারে অথবা ক্লায়েন্ট এবং সার্ভারের মধ্যে SSL handshake সফলভাবে হয়েছে কিনা তা দেখতে হবে।
উদাহরণ:
ক্লায়েন্টের SSL সংযোগ পরীক্ষা করা: ক্লায়েন্ট অ্যাপ্লিকেশন বা db2cli
ব্যবহার করে SSL সংযোগ সফল হয়েছে কিনা তা পরীক্ষা করতে পারেন:
db2 connect to <database_name> user <username> using <password> ssl
Data Encryption এবং SSL কনফিগারেশন DB2 ডেটাবেসের জন্য অত্যন্ত গুরুত্বপূর্ণ নিরাপত্তা বৈশিষ্ট্য। Data-at-Rest Encryption ডেটা ফাইল বা ব্যাকআপ ফাইল সুরক্ষিত রাখে, এবং Data-in-Transit Encryption ডেটার নিরাপত্তা নিশ্চিত করে যখন তা নেটওয়ার্কের মাধ্যমে এক জায়গা থেকে অন্য জায়গায় ট্রান্সমিট হয়। SSL কনফিগারেশন ক্লায়েন্ট এবং সার্ভারের মধ্যে সুরক্ষিত সংযোগ স্থাপন করতে সাহায্য করে। DB2-তে এই সুরক্ষা ব্যবস্থা সঠিকভাবে কনফিগার করা হলে, ডেটাবেস ব্যবস্থাপনা আরও নিরাপদ এবং স্থিতিস্থাপক হয়।
common.read_more