Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

एप्लिकेशन और डेटाबेस स्तरों के बीच प्रमाणीकरण के बारे में राय

अधिकांश वेब अनुप्रयोगों में, आप सुरक्षा मॉडल को व्यावसायिक तर्क स्तर पर परिभाषित किया जाता है, न कि डेटा स्तर पर।

उदाहरण के लिए, स्टैक ओवरफ़्लो पर किसी पोस्ट को संपादित करने की मेरी क्षमता "पोस्ट" तालिका को पढ़ने/लिखने की मेरी क्षमता से नियंत्रित नहीं होती है - वास्तव में, आप शायद डेटाबेस स्कीमा भी डिज़ाइन नहीं कर सकते हैं जो आपको डेटाबेस-स्तर को लागू करने की अनुमति देगा इस स्तर पर सुरक्षा। इसके बजाय, एक व्यावसायिक तर्क परत है जो मेरे विशेषाधिकारों की तुलना उस क्रिया से करती है जिसे मैं लेने की कोशिश कर रहा हूं (मुझे लगता है); सुरक्षा को व्यावसायिक तर्क स्तर पर लागू किया जाता है।

मैं स्पष्ट रूप से डेटाबेस परत में क्रेडेंशियल्स से गुजरने के लिए लगभग कोई लाभ नहीं देखता - अगर किसी तरह मैं एसओ पोस्ट को संपादित करने के लिए व्यावसायिक तर्क को छोड़ देता हूं, तो डेटाबेस "रीड/राइट" नियंत्रण इसे रोक नहीं पाएगा, और ऑडिटिंग ' वास्तव में आपकी मदद नहीं करता।

मुझे बहुत सारी कमियां दिखाई देती हैं - कम से कम यह तथ्य नहीं कि आप अपने प्राधिकरण तर्क को दो (व्यावसायिक तर्क और डेटाबेस) में विभाजित करेंगे, और अपने व्यावसायिक तर्क परत और डेटाबेस परत में खातों को सिंक्रनाइज़ करने के साथ सभी प्रकार के मनोरंजक विफलता मोड पेश करेंगे (उपयोगकर्ता अपने पासवर्ड, या वेब साइट छोड़कर)। मैं यह कल्पना करना शुरू नहीं कर सकता कि आप यह सब कैसे परीक्षण और डिबग करेंगे - यदि अंतिम उपयोगकर्ता को उनके डेटाबेस विशेषाधिकारों से संबंधित त्रुटि मिलती है तो क्या होता है?



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle PLSQL फ़ंक्शन दूसरे फ़ंक्शन में कॉल करता है

  2. ओरेकल क्वेरी से डेंस_रैंक को पोस्टग्रेज में कनवर्ट करें

  3. स्ट्रिंग को दिनांक में कनवर्ट करना और दिए जाने पर अपवाद उठाना स्ट्रिंग अमान्य है

  4. AWS EC2 से AWS RDS में Oracle डेटाबेस माइग्रेट करना, भाग 4

  5. पंक्तियों का चयन करें जब Oracle में दिनांक के बीच स्तंभ मान बदलता है?