वर्तमान में हमारे पास एक साधारण AspNet कोर वेबसाइट है जो एक "प्रबंधक" द्वारा लॉग इन है। यह उन्हें उन कंपनी शाखाओं के बारे में डेटा तक पहुंच प्रदान करता है जो वे प्रबंधित करते हैं और उन ग्राहकों का उपयोग करते हैं जो उन शाखाओं का उपयोग करते हैं।

प्रबंधकों का खाता हमारे Azure AD संगठन में है। वर्तमान में हम वेबसाइट के ऐप्लिकेशन रजिस्ट्रेशन. हमारे पास "शाखानाम_प्रबंधक" नामक प्रत्येक शाखा के लिए एक ऐपरोल है, यह एक समूह की तरह लगता है। स्मृति से मुझे लगता है कि हमें उन समूहों तक पहुँचने में समस्याएँ थीं, जिनमें एक उपयोगकर्ता वेबसाइट के भीतर से था, इसलिए ऐपरोल्स का उपयोग किया जैसा कि वे ClaimsPrincipal.Claims में दिखाई देते हैं।

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

इस बात को ध्यान में रखते हुए कि हम किन शाखाओं तक पहुंच को नियंत्रित करने की कोशिश कर रहे हैं, एक प्रबंधक जिन शाखाओं का प्रबंधन करता है और जो ग्राहक उन शाखाओं से संबंधित हैं, क्या हमें उपयोगकर्ता समूह सदस्यता का उपयोग करना चाहिए या कुछ ऐसा जो हम स्वयं को सरल डेटाबेस संबंधों के साथ रोल करते हैं?

0
Pat Long - Munkii Yebee 26 अक्टूबर 2020, 14:35

1 उत्तर

सबसे बढ़िया उत्तर

वेबसाइट ऐप पंजीकरण (क्लाइंट ऐप) में परिभाषित ऐप भूमिकाओं को एपीआई द्वारा पहचाना नहीं जा सकता है। इस मामले में ऐप भूमिकाएं केवल आईडी टोकन में मौजूद हैं। लेकिन हमें एपीआई तक पहुंचने के लिए एक्सेस टोकन को सत्यापित करने की आवश्यकता है।

जैसा कि मैंने आपकी पिछली पोस्ट में उत्तर दिया था, आप एपीआई ऐप पंजीकरण (सेवा ऐप) में समान ऐप भूमिकाओं को परिभाषित कर सकते हैं और उन भूमिकाओं को उन्हीं प्रबंधकों को सौंप सकते हैं।

फिर आप अपने एपीआई के लिए एक्सेस टोकन में शामिल ऐप भूमिकाओं को सत्यापित कर सकते हैं।

0
Allen Wu 27 अक्टूबर 2020, 01:12