/ / आप उपयोगकर्ताओं को सीधे टेबल तक पहुंचने से कैसे रोक सकते हैं - एमएस-एक्सेस, एमएस-एक्सेस -2017

आप उपयोगकर्ताओं को सीधे टेबल तक पहुंचने से कैसे रोकते हैं? - एमएस-एक्सेस, एमएस-एक्सेस -2007

सबसे पहले, मैं एक एमएस एक्सेस डेवलपर नहीं हूँ। हालाँकि मुझे "एक नई नौकरी मिल गई है और कुछ एमएस एक्सेस डेवलपमेंट करने हैं। मैं" एक अन्य डेवलपर के साथ काम करूँगा, जिसका अनुभव इस पर है कम से कम मेरे पास ज्यादा है।

एक बात उसने मुझे दिखाई कि उपयोगकर्ता मिल जाएगाइस एमएस एक्सेस एप्लिकेशन में, जो फॉर्मों में जाता है, जो कुछ भी वे करते हैं वहीं करते हैं और फिर डेटाबेस के टेबलों तक सीधी पहुंच प्राप्त करने के लिए फॉर्म एप्लीकेशन से टकराते हैं। (एक्सेस एप्लिकेशन SQL सर्वर 2005 डेटाबेस का एक अगला छोर है।) चूंकि अंतिम उपयोगकर्ताओं के पास SQL ​​टेबल तक सीधे पहुंच है, अच्छी तरह से आप बस कल्पना कर सकते हैं कि वे किस तरह की शरारत कर सकते हैं। (एक्सेस एप्लिकेशन एक ठेकेदार द्वारा लिखा गया था, जो आवेदन अधूरा छोड़ दिया था।)

तो मेरा सवाल ये है: हम अंत उपयोगकर्ताओं को एक्सेस एप्लिकेशन से सीधे SQL टेबल के साथ इंटरैक्ट करने से कैसे रोक सकते हैं? मुझे लगता है कि यह संभव है, लेकिन जैसा मैंने कहा कि मैं एक ऑफिस डेवलपर नहीं हूं, इसलिए मुझे नहीं पता कि यह कैसे किया जाएगा, और न ही यहां तक ​​कि मैं किस तरह की चीजों को देखता हूं।

एक्सेस एप्लिकेशन को MS Access 2007 में लिखा गया है।

उत्तर:

उत्तर № 1 के लिए 4

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

ढूंढें:

  • एसीसीडीई, एमडीई के लिए डेटाबेस का संकलन
  • अपने स्वयं के बटन के साथ कस्टम रिबन प्रदान करें
  • "नेविगेशन" फलक अक्षम करें: http://www.access-programmers.co.uk/forums/showthread.php?t=187697
  • राइट क्लिक के माध्यम से सेटिंग्स को अक्षम करें।
  • अगर नेविगेशनपैन निष्क्रिय है और आवश्यक हो तो रीबूट डेटाबेस की जाँच करने के लिए AutoExe फ़ंक्शन का उपयोग करें
  • "बायपास स्टार्टअप विकल्प" कुंजी को अक्षम करें: http://www.access-programmers.co.uk/forums/showthread.php?t=91984
  • अगर DB .accde या .mde फॉर्मेट में नहीं है तो डेटाबेस को लोड होने से रोकें फिर से यह जाँचने के लिए AutoEXE फ़ंक्शन के भीतर है।

कुछ उपयोगी शोध / निवेश होगा।

  • एमएस एक्सेस के लिए कस्टम रिबन निर्माता
  • सदस्यता / उपयोगकर्ता खाता प्रदान करना। चूँकि आपके पास पहले से ही SQL सर्वर समर्पित है, जिससे आप उपयोगकर्ता के क्रेडेंशियल्स को बैक-एंड टेबल में फ्रंट-एंड से छिपा सकते हैं। चेक उपयोगकर्ता के पास संग्रहीत कार्यविधियाँ / फ़ंक्शन लिखकर पहुँच है।
  • त्रुटियों, गतिविधियों को इकट्ठा करने और एक लॉग टेबल पर अपलोड करने और गतिविधियों की निगरानी के लिए फ़ंक्शन लिखें। इस कार्य के लिए वेब-सेवाओं + MSXML2.XMLHTTP + async का उपयोग करें। "

जवाब के लिए 2 № 2

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

फिर रिबन का उपयोग "फाइल" -> पर नेविगेट करने के लिए करें"विकल्प" -> "वर्तमान डेटाबेस"। आवेदन के लिए "प्रदर्शन फ़ॉर्म" के रूप में उपरोक्त चरण से फ़ॉर्म का चयन करें और फिर निम्नलिखित सभी विकल्पों को अनचेक करें "एक्सेस विशेष कुंजी का उपयोग करें", "नेविगेशन फलक प्रदर्शित करें", "पूर्ण मेनू की अनुमति दें", "डिफ़ॉल्ट शॉर्टकट मेनू को अनुमति दें"।

यह आपको एक्सेस एप्लिकेशन शुरू करेगा और आपके एप्लिकेशन में टेबल या अन्य ऑब्जेक्ट्स के डिजाइन के साथ काम करने के लिए किसी भी मानक UI के बिना चयनित फॉर्म दिखाएगा।

लेकिन कृपया ध्यान रखें कि यह सिर्फ सुरक्षा हैसामान्‍य उपयोगकर्ताओं द्वारा सामान बदलकर आकस्मिक गलतियां करने के खिलाफ, वे बदलने वाले नहीं हैं। यह एक दुर्भावनापूर्ण और जानकार हमलावर को रोक नहीं पाएगा।

यदि आप विकास के लिए अपना आवेदन खोलना चाहते हैं, तो फ़ाइल खोलते समय SHIFT-Key दबाए रखें।


जवाब के लिए 0 № 3

पहुँच से बाहर एक अन्य विकल्प एक विज्ञापन से इनकार करना हैअपने एसक्यूएल तालिकाओं को पढ़ने / लिखने के साथ समूह DELETE अनुमति। मैं एक्सेस 2013 और Microsoft SQL सर्वर प्रबंधन स्टूडियो 2012 का सफलतापूर्वक उपयोग करने में सक्षम था। यह पोस्ट कमांड पर चर्चा करती है।

DENY DELETE ON tablename to [DOMAINgroupname];

AD समूह के उपयोगकर्ता संशोधित और करने में सक्षम हैंहमारे द्वारा बनाए गए UI के माध्यम से डेटा हटाएं, लेकिन तालिका को खोलने में असमर्थ, एक लाइन का चयन करें और हटाएं कुंजी को हिट करें। वे निम्नलिखित त्रुटि प्राप्त करते हैं: "ODBC - एक लिंक की गई तालिका" हटाएं "पर हटाएं" विफल रहा है .... ऑब्जेक्ट पर DELETE अनुमति से इनकार कर दिया गया था ....