में एक आवश्यकता/नीति में डीआई मैं एएसपी.NET 5 में एक कस्टम प्राधिकरण फ़िल्टर प्रोग्राम करने का एक तरीका ढूंढ रहा हूं क्योंकि वर्तमान कार्यान्वयन नीतियों/आवश्यकताओं में निर्भर करता है जो बदले में उपयोग में पूरी तरह निर्भर करता है दावाों के अनुसार, इस तरह की पंद्रहवीं और कभी-कभी बदलती पहचान प्रणाली पर मैं वास्तव में थक गया हूं (मैंने अपने सभी स्वादों का प्रयास किया है)।एएसपी.नेट एमवीसी 6
मेरे पास परमिट (200 से अधिक) का एक बड़ा सेट है, जिसमें मैं दावा के रूप में कोड नहीं करना चाहता क्योंकि मेरे पास उनके लिए अपना खुद का भंडार है और सैकड़ों तारों की तुलना करने के बजाय इसके खिलाफ जांच करने का बहुत तेज़ तरीका है (अंत में क्या दावे हैं)।
मैं प्रत्येक विशेषता है कि अनुमति के अपने कस्टम भंडार के खिलाफ जाँच की जानी चाहिए में एक पैरामीटर पारित करने के लिए की जरूरत है:
[Authorize(Requires = enumPermission.DeleteCustomer)]
मैं जानता हूँ कि यह सबसे अक्सर परिदृश्य नहीं है, लेकिन मुझे लगता है कि यह एक बढ़त नहीं है मामला। मैंने @Lastprivilege द्वारा उनके शानदार पोस्ट "एएसपी.नेट 5 और एमवीसी 6: प्राधिकरण" में सुरक्षा राज्य पर वर्णित तरीके से इसे लागू करने की कोशिश की है, लेकिन मैंने लेखक के रूप में उसी दीवार को मारा है, जिसने भी खोला है एएसपी.नेट 5 गीथब रेपो पर एक मुद्दा, जिसे बहुत अधिक स्पष्टीकरण तरीके से बंद कर दिया गया है: link
इस बारे में कोई विचार कैसे प्राप्त किया जाए? शायद अन्य प्रकार के फ़िल्टर का उपयोग कर? उस मामले में, कैसे?
मान लेते हैं आप एक सेवा IPermissionStore
जो पुष्टि करता है उसे किसी उपयोगकर्ता विशेषता पर निर्दिष्ट आवश्यक अनुमतियों अगर कहा जाता है दो:
जहां वास्तव में समस्या है? वह निर्भरता हल नहीं होती है या पैरामीटर सेट नहीं होता है? –
समस्या यह है कि मैं यह नहीं समझ सकता कि तर्कों को ऑब्जेक्ट्स के सरणी के रूप में कैसे पास किया जाए और फिर उन्हें फ़िल्टर के अंदर प्राप्त करें ... पिछले संस्करणों में यह फ़िल्टर पर एक ही संपत्ति के साथ सार्वजनिक संपत्ति बनाकर किया गया था पैरामीटर के रूप में आप पास कर रहे थे (ऊपर वर्णित अनुसार) लेकिन अब मुझे ऑब्जेक्ट सरणी पास करनी है ... – Vi100
यह नया प्राधिकरण फ़िल्टर के साथ समस्या है, हालांकि प्रश्नों का इरादा नीतियों के साथ इसे प्राप्त करने के लिए किसी भी कार्यान्वयन के लिए पूछना था/आवश्यकताएं – Vi100