एसक्यूएल सर्वर अनुदान

Esakyu Ela Sarvara Anudana



इस लेख में, आप समझेंगे कि प्रिंसिपल को सुरक्षित करने योग्य पर अनुमति देने के लिए SQL सर्वर में GRANT स्टेटमेंट का उपयोग कैसे करें।

SQL सर्वर सुरक्षित और प्रिंसिपल

एक सुरक्षित करने योग्य संसाधनों को संदर्भित करता है SQL सर्वर डेटाबेस इंजन प्राधिकरण प्रणाली पहुंच को नियंत्रित करती है। एक उदाहरण एक डेटाबेस तालिका होगी।

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







एसक्यूएल सर्वर अनुदान वक्तव्य

निम्नलिखित SQL सर्वर में GRANT कमांड का सिंटैक्स दिखाता है:



अनुमति दें
मुख्य से सुरक्षित करने योग्य;

आपको वह अनुमति निर्दिष्ट करने की आवश्यकता है जिसे आप अल्पविराम से अलग की गई सूची के रूप में प्रिंसिपल को असाइन करना चाहते हैं।



ऑन कीवर्ड आपको सुरक्षित करने योग्य निर्दिष्ट करने की अनुमति देता है जिस पर अनुमतियां लागू होती हैं। अंत में, TO कीवर्ड आपको लक्ष्य प्रिंसिपल सेट करने में सक्षम बनाता है।





उदाहरण के लिए, CREATE USER स्टेटमेंट का उपयोग करके एक उपयोगकर्ता बनाना उस उपयोगकर्ता के लिए अनुमतियों को परिभाषित नहीं करता है। इसलिए, उस उपयोगकर्ता के लिए अनुमतियाँ निर्धारित करने के लिए GRANT कथन का उपयोग करना आवश्यक है।

एक उदाहरण लेते हैं।



उदाहरण लॉगिन बनाएँ

उदाहरण के प्रयोजनों के लिए एक नमूना लॉगिन बनाकर शुरू करते हैं। क्वेरी नीचे दी गई है:

लॉगिन linuxhint बनाएँ
पासवर्ड के साथ = 'पासवर्ड';

ऊपर दिए गए आदेश को उपयोगकर्ता नाम linuxhint और निर्दिष्ट पासवर्ड के साथ एक उपयोगकर्ता बनाना चाहिए।

नमूना डेटाबेस बनाएँ

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

ड्रॉप डेटाबेस अगर रिज़ॉल्वर मौजूद है;

डेटाबेस रिज़ॉल्वर बनाएँ;

रिज़ॉल्वर का उपयोग करें;

यदि प्रविष्टियाँ मौजूद हैं तो ड्रॉप टेबल;

तालिका प्रविष्टियाँ बनाएँ (
आईडी int अशक्त पहचान नहीं (1,
1) प्राथमिक कुंजी,
सर्वर_नाम वर्कर (50),
सर्वर_एड्रेस वर्कर (255) शून्य नहीं है,
कंप्रेशन_मेथोड वर्कर (100) डिफ़ॉल्ट 'कोई नहीं',
size_on_disk फ्लोट शून्य नहीं है,
size_compressed फ्लोट,
कुल_रिकॉर्ड्स शून्य नहीं है,
init_date तारीख
);
डालना
में
प्रविष्टियां (सर्वर_नाम,
सर्वर पता,
संपीड़न विधि,
डिस्क का माप,
size_compressed,
कुल रिकॉर्ड,
init_date)
मूल्यों
('MySQL', 'लोकलहोस्ट: 3306', 'lz77', 90.66,40.04,560000, '2022-01-02'),
('रेडिस', 'लोकलहोस्ट: 6307', 'स्नैपी', 3.55,998.2,100000, '2022-03-19'),
('PostgreSQL', 'लोकलहोस्ट: 5432', 'pglz', 101.2,98.01,340000, '2022-11-11'),
('एलिस्टिक्स खोज', 'लोकलहोस्ट: 9200', 'एलजेड 4', 333.2,300.2,1200000, '2022-10-08'),
('मोंगोडीबी', 'लोकलहोस्ट: 27017', 'स्नैपी', 4.55,4.10,620000, '2021-12-12'),
('अपाचे कैसेंड्रा', 'लोकलहोस्ट: 9042', 'zstd', 300.3,200.12,10000000,'2020-03-21');

लॉगिन के लिए एक उपयोगकर्ता बनाएँ

एक बार जब हम डेटाबेस और तालिका बना लेते हैं, तो हम linuxhint लॉगिन के लिए एक उपयोगकर्ता बना सकते हैं:

रिज़ॉल्वर का उपयोग करें
उपयोगकर्ता linuxhint बनाएँ
लॉगिन linuxhint के लिए;

नए उपयोगकर्ता के रूप में लॉगिन करें

इसके बाद, नव निर्मित उपयोक्ता के रूप में लॉग इन करें। आदेश दिखाया गया है:

सेटुसर 'लिनक्सहिंट';

एक बार लॉग इन करने के बाद, हम सेलेक्ट कमांड चलाकर टेबल देखने का प्रयास कर सकते हैं:

प्रविष्टियों में से * चुनें;

उपरोक्त क्वेरी चलाने से त्रुटि वापस आनी चाहिए:

संदेश 229, स्तर 14, राज्य 5, रेखा 379
ऑब्जेक्ट 'प्रविष्टियां', डेटाबेस 'रिज़ॉल्वर', स्कीमा 'डीबीओ' पर चयन अनुमति अस्वीकार कर दी गई थी।

ऐसा इसलिए है क्योंकि linuxhint उपयोगकर्ता के पास डेटाबेस पर कोई अनुमति नहीं है, जिसमें SELECT अनुमतियाँ शामिल हैं।

उपयोगकर्ता को अनुमति दें

उपयोगकर्ता को तालिकाओं में संग्रहीत जानकारी को देखने की अनुमति देने के लिए हमें चयन अनुमति देने की आवश्यकता है।

उसके लिए, आपको SQL सर्वर व्यवस्थापकीय खाते से लॉगिन करना होगा।

अगला, क्वेरी को इस रूप में चलाएँ:

linuxhint को प्रविष्टियों पर चयन अनुदान;

एक बार निष्पादित हो जाने पर, linuxhint उपयोगकर्ता के रूप में लॉगिन करें और SELECT स्टेटमेंट का उपयोग करें।

प्रविष्टियों में से * चुनें;

इस मामले में, आदेश तालिका लौटाता है क्योंकि उपयोगकर्ता के पास चयन अनुमतियां होती हैं

आप उपयोगकर्ता को अन्य अनुमतियाँ भी दे सकते हैं, जैसे सम्मिलित करना और हटाना:

लाइनक्सहिंट की प्रविष्टियों को सम्मिलित करें, हटाएं;

इस मामले में, लाइनक्सहिंट उपयोगकर्ता के पास प्रविष्टि तालिका पर चयन, सम्मिलित करें और हटाएं अनुमतियां होनी चाहिए।

निष्कर्ष

इस पोस्ट में, हमने SQL सर्वर में GRANT कमांड के उपयोग की खोज की। आदेश आपको किसी दिए गए प्रिंसिपल को अनुमति देने की अनुमति देता है।