मान लीजिए कि मेरे पास एक जटिल प्रणाली है जहां लोगों के बड़े पेड़ हैं। सरल विचार कर्मचारी/प्रबंधक संबंध हैं, कई कर्मचारी एक प्रबंधक को रिपोर्ट करते हैं। अब प्रबंधक के अलावा वहां सहायक स्टाफ हैं जो प्रबंधक की ओर से कार्य करने में सक्षम हैं प्रबंधकों के कर्मचारियों में हेरफेर कर सकते हैं।सीक्यूआरएस सुरक्षा जैसे क्रॉस कटिंग चिंताओं को लागू करता है
एक सीक्यूआरएस सिस्टम में आप "कर्मचारी संपादित करें" की एक कल्पित कार्रवाई के लिए एक संदेश कैसे मॉडल करेंगे जहां कार्रवाई का चालक एक सहायक कर्मचारी है। कार्रवाई केवल तभी सफल हो सकती है जब प्रबंधक सुरक्षा संबंध के अनुसार कर्मचारी सदस्य अपने क्षेत्र में किसी कर्मचारी पर कार्य कर रहा हो।
इसकी सुरक्षा को सत्यापित करने में डेटाबेस को क्वेरी करने में शामिल होना शामिल होगा कि यह संशोधित करने वाला व्यक्ति वास्तव में उस प्रबंधक की कर्मचारी श्रृंखला के अंदर है।
यह प्रश्न कहां होगा? "कर्मचारी संपादित करें" संदेश की उत्पत्ति से पहले?
यदि संदेश को उत्पत्ति से पहले डेटा को पहले से सत्यापित किया गया है, तो अंततः संगत प्रणाली में मान लीजिए कि "कर्मचारी संपादित करें" संदेश को संसाधित करने से पहले एक अलग कार्रवाई हुई है जो उपयोगकर्ता के अधिकार को " कर्मचारी "कार्रवाई संपादित करें। यदि कमांड हैंडलर उस संदेश की सुरक्षा चिंताओं को मान्य नहीं करता है, तो संदेश तब भी सफल होगा जब उपयोगकर्ता अब इसे निष्पादित करने का अधिकार नहीं रखता है।
यह इंगित करता है कि यूआई सत्यापन & सर्वर साइड सत्यापन के समान डबल पक्षीय सत्यापन कार्रवाई का सबसे अच्छा तरीका होगा। हालांकि उस सत्यापन को पूरा करने की विधि प्रतीत होती है कि यह सीक्यूआरएस के प्रमुख सिद्धांतों का उल्लंघन करेगा।
सीक्यूआरएस का उपयोग करते समय इन और अन्य समान क्रॉस कटिंग चिंताओं से निपटने के लिए क्या दृष्टिकोण (एस) सबसे अच्छा है?
आईएमओ का कोई सामान्य उत्तर नहीं है ... मैं हमेशा कमांडर साइड * कम से कम * और ** वैकल्पिक रूप से ** "अप-फ्रंट" कमांड पर मान्य होगा (जो उस भाग में हो सकता है जो कतार में एक संदेश स्वीकार करता है) – Yahia
मुझे यह भी लगता है कि प्रमाणीकरण, सरल प्रमाणीकरण (इस उपयोगकर्ता को इस प्रकार की कार्रवाई करने की अनुमति है) जैसे वास्तविक क्रॉस-कटिंग चिंताओं के बीच अंतर करना महत्वपूर्ण है, जो कि किसी विशिष्ट इकाई के लिए कुछ अनुमति है या नहीं। –