BCA / B.Tech 11 min read

Security specification in Hindi

Security specification in RDBMS in Hindi | RDBMS में सिक्यूरिटी स्पेसिफिकेसन :



Introduction of  Security Specifications in SQL :


  • Structured Query Language (SQL) डेटाबेस प्रबंधन के लिए सबसे व्यापक रूप से उपयोग की जाने वाली भाषा है। SQL का उपयोग डेटा को एक्सेस, संशोधित और प्रबंधित करने के लिए किया जाता है। 
  • जैसे-जैसे डेटाबेस का उपयोग बढ़ा है, वैसे-वैसे डेटा की सुरक्षा की जरूरत भी बढ़ी है। SQL में सुरक्षा विनिर्देशों का उद्देश्य डेटा को अनधिकृत उपयोग से सुरक्षित रखना और यह सुनिश्चित करना है कि केवल अधिकृत उपयोगकर्ता ही डेटा को एक्सेस या संशोधित कर सकें। 
  • इस लेख में, हम SQL में उपयोग किए जाने वाले विभिन्न सुरक्षा विनिर्देशों पर विस्तार से चर्चा करेंगे।
  • SQL में सुरक्षा विनिर्देशों का महत्व बहुत अधिक है, क्योंकि डेटा किसी भी संगठन का सबसे मूल्यवान संसाधन होता है। ऑथेंटिकेशन, ऑथराइजेशन, एक्सेस कंट्रोल, डेटा एनक्रिप्शन, ऑडिटिंग और लॉगिंग, और सुरक्षा नीतियों के माध्यम से SQL डेटाबेस की सुरक्षा को सुनिश्चित किया जा सकता है। इन सभी तकनीकों और प्रक्रियाओं का उचित उपयोग करके, संगठन अपने डेटा को अनधिकृत पहुंच और साइबर खतरों से सुरक्षित रख सकते हैं।


 SQL में सुरक्षा विनिर्देशों के घटक

SQL में सुरक्षा विनिर्देश कई घटकों से मिलकर बनते हैं, जिनमें से प्रमुख हैं:

1.Authentication 
2. Authorization
3. Access Control
4. Data Encryption
5. Auditing and Logging
6. Security Policies

इन घटकों को सही तरीके से लागू करके, SQL डेटाबेस को अधिक सुरक्षित बनाया जा सकता है।

 1. Authentication :

  •  वह प्रक्रिया है जिसमें यह सुनिश्चित किया जाता है कि डेटाबेस तक पहुँचने वाला व्यक्ति वही है जो वह होने का दावा करता है। SQL में ऑथेंटिकेशन का मुख्य उद्देश्य उपयोगकर्ता की पहचान को सत्यापित करना है। SQL सर्वर में, ऑथेंटिकेशन के दो प्रमुख प्रकार होते हैं:

  • Windows Authentication : इसमें उपयोगकर्ता की पहचान विंडोज़ ऑपरेटिंग सिस्टम द्वारा सत्यापित की जाती है। यह नेटवर्क पर लॉगिन करने के लिए डोमेन खाते का उपयोग करता है।
  • SQL Server Authentication : इसमें उपयोगकर्ता नाम और पासवर्ड का उपयोग करके उपयोगकर्ता की पहचान सत्यापित की जाती है। यह SQL सर्वर द्वारा स्वतंत्र रूप से प्रबंधित किया जाता है।

 ऑथेंटिकेशन के लाभ :

  • बढ़ी हुई सुरक्षा : केवल वैध उपयोगकर्ता ही डेटाबेस तक पहुँच सकते हैं।
  • आसान प्रबंधन : उपयोगकर्ताओं की पहचान और प्रमाणीकरण का प्रबंधन करना आसान होता है।

 2. Authorization :

 वह प्रक्रिया है जो यह निर्धारित करती है कि एक प्रमाणित उपयोगकर्ता डेटाबेस में क्या कर सकता है। SQL में, ऑथराइजेशन यह सुनिश्चित करता है कि उपयोगकर्ता केवल उन डेटा और प्रक्रियाओं तक ही पहुँच सकें जिनके लिए उनके पास अनुमति है।

Role-Based Access Control - RBAC 
  • SQL में, रोल-बेस्ड एक्सेस कंट्रोल (RBAC) का उपयोग किया जाता है, जिसमें उपयोगकर्ताओं को विभिन्न भूमिकाओं (Roles) के आधार पर एक्सेस प्रदान किया जाता है। प्रत्येक भूमिका के पास कुछ विशेषाधिकार होते हैं, जो डेटाबेस में की जाने वाली क्रियाओं को नियंत्रित करते हैं। 
  • उदाहरण के लिए:
  • DBA (Database Administrator) : यह भूमिका डेटाबेस का पूर्ण नियंत्रण रखती है, जिसमें सभी डेटा और प्रक्रियाओं तक पहुँच होती है।
  • डाटा एंट्री ऑपरेटर : यह भूमिका केवल डेटा दर्ज कर सकती है और उसे देख सकती है, लेकिन उसे संशोधित या हटाने की अनुमति नहीं होती।

ऑथराइजेशन के लाभ :

  • कस्टम एक्सेस कंट्रोल : प्रत्येक उपयोगकर्ता को केवल उन संसाधनों तक पहुँच प्राप्त होती है जो उसके कार्य के लिए आवश्यक होते हैं।
  • बढ़ी हुई डेटा सुरक्षा : अनधिकृत डेटा एक्सेस को रोका जा सकता है।

 3. Access Control :

  • SQL में एक्सेस कंट्रोल उन नियमों और नीतियों का एक सेट है जो यह नियंत्रित करता है कि कौन सा उपयोगकर्ता कौन से डेटाबेस ऑब्जेक्ट्स (जैसे टेबल्स, व्यूज, स्टोर्ड प्रोसिजर्स) तक पहुँच सकता है और उनके साथ क्या कर सकता है। SQL में एक्सेस कंट्रोल को लागू करने के लिए विभिन्न तकनीकों का उपयोग किया जाता है:
  • GRANT और REVOKE : SQL में GRANT कमांड का उपयोग करके विशेषाधिकार (Privileges) प्रदान किए जाते हैं, और REVOKE कमांड का उपयोग करके विशेषाधिकार वापस लिए जाते हैं।
  
  उदाहरण:
  ```sql
  GRANT SELECT, INSERT ON Employees TO 'user1';
  REVOKE DELETE ON Employees FROM 'user1';
  ```

 Views : व्यूज का उपयोग करके उपयोगकर्ता को केवल चयनित डेटा तक ही पहुँच प्रदान की जा सकती है। व्यूज डेटा को एक वर्चुअल टेबल के रूप में प्रदर्शित करते हैं, जिसमें उपयोगकर्ता केवल अनुमत डेटा देख सकते हैं।

 एक्सेस कंट्रोल के लाभ :

  • डेटा सुरक्षा : केवल अधिकृत उपयोगकर्ता ही डेटाबेस में निर्दिष्ट कार्य कर सकते हैं।
  • डेटा का संरक्षण : संवेदनशील डेटा तक अनधिकृत पहुँच को रोका जा सकता है।

4.Data Encryption :

  • SQL में डेटा एनक्रिप्शन डेटा को सुरक्षित करने का एक महत्वपूर्ण तरीका है। एनक्रिप्शन में डेटा को एक कोड में परिवर्तित किया जाता है ताकि केवल अधिकृत उपयोगकर्ता ही इसे समझ सकें। SQL सर्वर विभिन्न प्रकार के एनक्रिप्शन तकनीकों का समर्थन करता है:
  • Transparent Data Encryption - TDE : यह डेटा को एनक्रिप्ट करता है, जिससे कि यदि डेटा चोरी भी हो जाए, तो उसे पढ़ा नहीं जा सके।
  
  उदाहरण:
  ```sql
  CREATE DATABASE ENCRYPTION KEY
  WITH ALGORITHM = AES_256
  ENCRYPTION BY SERVER CERTIFICATE MyServerCert;
  ALTER DATABASE MyDatabase
  SET ENCRYPTION ON;
  ```

Column-Level Encryption : इसमें केवल विशिष्ट कॉलम का डेटा एनक्रिप्ट किया जाता है, जैसे कि क्रेडिट कार्ड नंबर या व्यक्तिगत जानकारी।

 एनक्रिप्शन के लाभ :

  •  डेटा की गोपनीयता : डेटा का अनधिकृत उपयोग रोका जा सकता है।
  •  डेटा सुरक्षा में वृद्धि : डेटा की चोरी के बावजूद, वह अनुपयोगी हो जाता है यदि वह एनक्रिप्टेड है।

 5. Auditing and Logging :

  • SQL में ऑडिटिंग और लॉगिंग का उपयोग डेटाबेस गतिविधियों की निगरानी और ट्रैकिंग के लिए किया जाता है। इसका उद्देश्य डेटाबेस में की गई प्रत्येक कार्रवाई का रिकॉर्ड रखना है, ताकि किसी भी संदिग्ध गतिविधि का पता चल सके और उसका समाधान किया जा सके। SQL सर्वर में, ऑडिटिंग के लिए SQL सर्वर ऑडिट (SQL Server Audit) का उपयोग किया जाता है
  • SQL Server Audit : यह डेटाबेस इंजन पर होने वाली घटनाओं (Events) और कार्यों (Actions) को ट्रैक करता है।
  
  उदाहरण:
  ```sql
  CREATE SERVER AUDIT MyAudit
  TO FILE (FILEPATH = 'C:\AuditLogs\' );
  ALTER SERVER AUDIT MyAudit
  WITH (STATE = ON);
  ```

 ऑडिटिंग और लॉगिंग के लाभ :

  • कानूनी अनुपालन : कई उद्योगों में डेटा सुरक्षा के लिए ऑडिटिंग आवश्यक होती है।
  • संदिग्ध गतिविधियों की पहचान : लॉग्स की मदद से डेटाबेस में हुई संदिग्ध गतिविधियों का पता लगाया जा सकता है।

6. Security Policies :

  • SQL में सुरक्षा नीतियाँ  डेटाबेस सुरक्षा को सुनिश्चित करने के लिए लागू किए गए नियमों और प्रक्रियाओं का एक सेट होती हैं। ये नीतियाँ यह निर्धारित करती हैं कि कैसे उपयोगकर्ता डेटाबेस को एक्सेस करते हैं, डेटा कैसे सुरक्षित किया जाता है, और डेटाबेस में कौन सी सुरक्षा प्रक्रियाओं का पालन किया जाता है।
  • Password Policies : उपयोगकर्ताओं के लिए मजबूत पासवर्ड की आवश्यकता और समय-समय पर पासवर्ड परिवर्तन अनिवार्य किया जा सकता है।
  • Data Masking : संवेदनशील डेटा को मास्क किया जा सकता है ताकि उपयोगकर्ताओं को केवल आवश्यक जानकारी ही दिखे।
  
  उदाहरण:
  ```sql
  CREATE TABLE Employees
  (
      SSN CHAR(11) MASKED WITH (FUNCTION = 'partial(1,"XXX-XX-",4)') NULL
  );
  ```

 सुरक्षा नीतियों के लाभ :

  • डेटा की सुरक्षा में निरंतरता : सुरक्षा नीतियाँ सुनिश्चित करती हैं कि सभी उपयोगकर्ता सुरक्षा प्रक्रियाओं का पालन करें।
  • डेटा का गोपनीयता संरक्षण : संवेदनशील डेटा को केवल अधिकृत उपयोगकर्ता ही देख सकते हैं।

In this Chapter