तेजी से क्लाउड प्रौद्योगिकी उन्नति के युग में, जहां एक सेवा के रूप में इन्फ्रास्ट्रक्चर (आईएएएस) और एक सेवा के रूप में प्लेटफॉर्म (पीएएएस) कई परियोजनाओं के अभिन्न अंग हैं, विविध क्लाउड सेवाओं के निर्बाध एकीकरण की मांग निर्विवाद है। इस परिदृश्य में एक प्रमुख खिलाड़ी, माइक्रोसॉफ्ट ने उपयोगकर्ता के अनुकूल माइक्रोसॉफ्ट एंट्रा आईडी सेवा तैयार करने में काफी समय लगाया। हालाँकि, विक्रेताओं के सावधानीपूर्वक दिए गए निर्देशों के बावजूद, स्लैक, सेल्सफोर्स या डेटाडॉग जैसे प्लेटफार्मों के साथ एकीकरण को कॉन्फ़िगर करते समय विशेषज्ञों को अक्सर समस्याओं का सामना करना पड़ता है। विशिष्ट प्रश्नों के उत्तर प्रदान करने में दस्तावेज़ीकरण कम पड़ जाता है।
सोशल डिस्कवरी ग्रुप टीम को भी इन चुनौतियों का सामना करना पड़ा, और इस लेख में, हम उन्हें कैसे नेविगेट करें और हल करें, इस पर अंतर्दृष्टि प्रदान करेंगे।
50+ डेटिंग प्लेटफ़ॉर्म के अपने पोर्टफोलियो में, सोशल डिस्कवरी ग्रुप अपनी सुरक्षा और विश्वसनीयता की गारंटी के लिए विभिन्न तकनीकों और क्लाउड सेवाओं का उपयोग करता है। हमारे पास विभिन्न क्लाउडों के बीच पीयर-टू-पीयर कनेक्शन सहित विभिन्न प्रणालियों को एकीकृत और कॉन्फ़िगर करने का व्यापक अनुभव है।
माइक्रोसॉफ्ट एंट्रा आईडी पहचान और पहुंच प्रबंधन के लिए एक क्लाउड समाधान है, जो क्लाउड में संचालित निर्देशिका और प्रमाणीकरण सेवा के रूप में कार्य करता है। Microsoft Entra ID विभिन्न Microsoft और गैर-Microsoft सेवाओं के लिए प्रमाणीकरण और प्राधिकरण सेवाएँ प्रदान करता है। इस लेख में, हम निम्नलिखित क्लाउड सिस्टम के एकीकरण का पता लगाएंगे: स्लैक, मोंगोएटलस, इलास्टिकक्लाउड, सेल्सफोर्स और डेटाडॉग।
एक सटीक मार्गदर्शक की अनुपस्थिति के कारण, हमने अपना स्वयं का मार्गदर्शक बनाने का निर्णय लिया, जिसमें रास्ते में उत्पन्न होने वाली सभी समस्याओं का विवरण होगा। तो, आइए Azure में "एंटरप्राइज़ एप्लिकेशन" अनुभाग पर जाएँ।
एक नया कॉर्पोरेट एप्लिकेशन बनाना आवश्यक है (यह कुछ ही क्लिक में किया जा सकता है)। इसके बाद, हमारे द्वारा अभी बनाए गए एप्लिकेशन तक पहुंचें और सिंगल साइन-ऑन - एसएएमएल को कॉन्फ़िगर करें। ऊपर से नीचे तक बदलाव करें:
एक "सदस्य" भूमिका बनाएं (या कोई अन्य नाम चुनें)। इसके बाद, Microsoft Entra ID में एक परीक्षण उपयोगकर्ता बनाएं और उन्हें हमारे एप्लिकेशन में जोड़ें। फिर, स्लैक में एडमिन सेंटर पर जाएँ। चरणों का पालन करें: स्लैक एडमिन - प्रमाणीकरण - एसएएमएल कॉन्फ़िगरेशन - कॉन्फ़िगर करें
अगला कदम SAML को कॉन्फ़िगर करना है। हम "प्रदर्शन नाम" सेटिंग पर ध्यान देने की अनुशंसा करते हैं। इसके अलावा, सेटिंग्स में, "लॉगिन पर प्रोफ़ाइल अपडेट करें" को अनचेक करें, ईमेल पता और डिस्प्ले नाम बदलने की अनुमति न दें।
लॉगिन बटन पर टेक्स्ट को अनुकूलित करने और उपयोगकर्ताओं को एसएसओ को छोड़कर किसी अन्य विधि का उपयोग करके लॉग इन करने से रोकने का विकल्प भी है। इसके बाद, आप अपने Microsoft खाते का उपयोग करके स्लैक में साइन इन करने में सक्षम होंगे। यदि किसी अतिरिक्त फ़ील्ड या सेटिंग्स की आवश्यकता है, तो यह Azure AD प्रावधान के माध्यम से किया जा सकता है।
नई विशेषता जोड़ने के लिए, उपयोगकर्ता विशेषताएँ पर जाएँ और नई मैपिंग जोड़ें चुनें। वांछित स्रोत विशेषता चुनें जिसे आप स्लैक में प्रदर्शित करना चाहते हैं और इसे संबंधित स्लैक विशेषता के साथ संबद्ध करें।
आवश्यक विशेषताओं को जोड़ने और सेटिंग्स को सहेजने के बाद, कार्यक्षमता का परीक्षण करने के लिए प्रोविजन ऑन डिमांड पर आगे बढ़ें। सकारात्मक परिणाम पर, आपको निम्नलिखित प्राप्त होंगे:
इसके बाद, आपको स्लैक पर जाना होगा और निर्दिष्ट करना होगा कि संपूर्ण उपयोगकर्ता प्रोफ़ाइल में कौन सी विशेषताएँ प्रदर्शित की जानी हैं और उन्हें कहाँ पुनः प्राप्त करना है। प्रोफाइल पर जाएं और प्रदर्शित की जाने वाली जानकारी चुनें और इसे कहां से खींचा जाएगा। इस मामले में, SCIM Azure AD से मेल खाता है।
इसके बाद, हम निर्बाध एकीकरण का अनुभव करने के लिए सक्रिय निर्देशिका से स्लैक में आवश्यक उपयोगकर्ताओं को जोड़ने की सलाह देते हैं। हम उपयोगकर्ताओं को हटाते समय आने वाली समस्या पर भी ध्यान दिलाना चाहते हैं: यदि किसी उपयोगकर्ता को स्लैक से मैन्युअल रूप से हटा दिया जाता है (स्लैक एडमिन सेंटर के माध्यम से), तो एक त्रुटि बनी रहेगी, जो इंगित करती है कि अपर्याप्त अनुमतियों के कारण उपयोगकर्ता को स्लैक में स्थानांतरित नहीं किया जा सकता है। ऐसा इसलिए होता है क्योंकि एंट्रा आईडी दायरे में उपयोगकर्ताओं के बारे में जानकारी रखती है और उन्हें एक अद्वितीय आईडी प्रदान करती है। स्लैक में किसी उपयोगकर्ता को हटाने और पुनः जोड़ने को एंट्रा आईडी द्वारा एक नए उपयोगकर्ता के रूप में माना जाता है, जिससे अपडेट के दौरान अनुमति संबंधी समस्याएं पैदा होती हैं।
दस्तावेज़ यहां जांचें.
MongoAtlas के लिए, प्रक्रिया एक समान पथ का अनुसरण करती है। आपको एक नया कॉर्पोरेट एप्लिकेशन भी बनाना होगा; आसानी के लिए, खोज फ़ील्ड में "MongoDB एटलस - SSO" दर्ज करें। अधिक विस्तृत निर्देश यहां पाए जा सकते हैं।
इसके बाद, सिंगल साइन-ऑन सेटिंग्स पर आगे बढ़ें, जहां आपको निम्नलिखित इनपुट करना होगा:
"पहचानकर्ता" टेक्स्ट फ़ील्ड में, निम्नलिखित टेम्पलेट का उपयोग करके यूआरएल दर्ज करें: https://www.okta.com/saml2/service-provider/<Customer_Unique>
"प्रतिक्रिया यूआरएल" टेक्स्ट फ़ील्ड में, टेम्पलेट का उपयोग करके यूआरएल दर्ज करें:
https://auth.mongodb.com/sso/saml2/<Customer_Unique>
"लॉगिन यूआरएल" टेक्स्ट फ़ील्ड में, टेम्पलेट का उपयोग करके यूआरएल दर्ज करें: https://cloud.mongodb.com/sso/<Customer_Unique>
हम अनुशंसा करते हैं कि विशेषताएँ अनुभाग पर ध्यान दें और इसे नीचे स्क्रीनशॉट में दिखाए अनुसार कॉन्फ़िगर करें ("memberOf" जोड़ना आवश्यक था)।
इसके बाद, "एसएएमएल के साथ सिंगल साइन-ऑन सेट अप करना" पेज पर, "एसएएमएल साइनिंग सर्टिफिकेट" अनुभाग पर जाएं और फेडरेशन के लिए एक्सएमएल मेटाडेटा ढूंढें। प्रमाणपत्र डाउनलोड करने और इसे स्थानीय रूप से सहेजने के लिए "डाउनलोड करें" चुनें (फेडरेशन मेटाडेटा एक्सएमएल)। हमें बाद में MongoDB एटलस में इसकी आवश्यकता होगी।
"मोंगोडीबी एटलस - एसएसओ की स्थापना" अनुभाग में, संबंधित यूआरएल की प्रतिलिपि बनाएँ। इसके बाद, MongoDB एटलस -> संगठन -> सेटिंग्स -> फ़ेडरेटेड प्रमाणीकरण सेटिंग्स पर जाएँ।
एटलस में Microsoft Entra ID क्रेडेंशियल प्रदाता जोड़कर शुरुआत करें। माइक्रोसॉफ्ट पोर्टल (जारीकर्ता यूआरआई, लॉगिन यूआरएल, सिंगल साइन-ऑन यूआरएल) से पिछले चरण में उल्लिखित संबंधित यूआरएल इनपुट करें, पहचान प्रदाता हस्ताक्षर प्रमाणपत्र अपलोड करें, और शेष सेटिंग्स को कॉन्फ़िगर करें जैसा कि नीचे स्क्रीनशॉट में दिखाया गया है ।
"अगला" पर क्लिक करें और मेटाडेटा फ़ाइल को स्थानीय रूप से सहेजें, क्योंकि आपको इसे बाद में सिंगल साइन-ऑन कॉन्फ़िगरेशन पृष्ठ पर Azure में अपलोड करना होगा।
इसके बाद, डोमेन को जोड़ें, मैप करें और मान्य करें, उदाहरण के लिए, MongoDB एटलस में उत्पन्न संबंधित TXT रिकॉर्ड का उपयोग करके। उसके बाद, अपने डोमेन को क्रेडेंशियल प्रदाता के साथ लिंक करें और सबसे दिलचस्प भाग पर आगे बढ़ें: भूमिका कॉन्फ़िगरेशन।
हमने उदाहरण के तौर पर निम्नलिखित भूमिकाएँ बनाई हैं, जिनमें से प्रत्येक में परियोजनाओं को विशिष्ट अनुमतियाँ दी गई हैं। फिर, आपको इन भूमिकाओं को Azure भूमिकाओं में मैप करना होगा। अपने एप्लिकेशन के लिए "ऐप भूमिकाएं" पर जाएं, मानों के साथ भूमिकाएं बनाएं और जोड़ें जो आपके द्वारा MongoAtlas में इन भूमिकाओं को दिए गए नामों से बिल्कुल मेल खाते हों।
इसके बाद, उपयोगकर्ताओं को Microsoft Entra ID Enterprise एप्लिकेशन में एप्लिकेशन में जोड़ें और उन्हें उचित भूमिकाएँ असाइन करें। MongoDB एटलस में फ़ेडरेशन प्रबंधन अनुभाग में "Azure SSO के साथ साइन इन करें" सक्रिय करें और कॉन्फ़िगर की गई सेटिंग्स की सही कार्यप्रणाली को सत्यापित करें।
अधिक विस्तृत निर्देशों के लिए यहां दस्तावेज़ देखें।
आइए इलास्टिक क्लाउड के साथ एकीकरण की ओर आगे बढ़ें। एंटरप्राइज़ एप्लिकेशन एंट्रा आईडी में एप्लिकेशन बनाने के मूलभूत चरण पिछले चरणों के समान हैं। वहां, आप यह जानकारी पा सकते हैं कि पहचानकर्ता या लॉगआउट यूआरएल कहां से प्राप्त करें। हालाँकि, हमें विशेषताओं के साथ एक समस्या का सामना करना पड़ा, इसलिए हम अपनी कार्यशील कॉन्फ़िगरेशन का एक स्क्रीनशॉट प्रदान करेंगे।
हमने दो भूमिकाएँ बनाईं - एक पाठक और एक सुपरयूज़र।
यहां, आप जितनी चाहें उतनी भूमिकाएँ बना सकते हैं। इलास्टिक्स खोज में भूमिका सेटिंग्स रोल मैपिंग में कॉन्फ़िगर की गई हैं और इस प्रकार दिखती हैं:
अब दिलचस्प हिस्सा आता है. दो चीजें करने की जरूरत है: किबाना और इलास्टिक्सर्च के लिए Azure SSO कॉन्फ़िगरेशन जोड़ें। इसे प्राप्त करने के लिए, इन चरणों का पालन करें:
Elasticsearch.yml कॉन्फ़िगरेशन को अद्यतन करने के लिए अपने Elasticsearch क्लाउड परिनियोजन के संपादन अनुभाग पर जाएँ। निम्नलिखित पंक्तियाँ जोड़ें:
“ xpack:
security:
authc:
realms:
saml:
saml-azure-ad:
order: 2
attributes.principal: "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name"
attributes.groups: "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/role"
attributes.name: "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname"
attributes.mail: "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress"
idp.metadata.path: "APP Federation metadata URL"
idp.entity_id: "Azure Entra ID Identifier"
sp.entity_id: "Kibana endpoint"
sp.acs: "Kibana endpoint/api/security/v1/saml"
sp.logout: "Kibana endpoint/logout" “
अपने कॉन्फ़िगरेशन से मेल खाने के लिए लाल रंग में हाइलाइट किए गए मानों को जोड़ने और संशोधित करने के बाद, "सहेजें" पर क्लिक करें। इलास्टिक क्लाउड सभी परिवर्तनों को मान्य करेगा और क्लस्टर अपडेट आरंभ करेगा। इस प्रक्रिया में कुछ मिनट लग सकते हैं.
“ xpack.security.authc.providers:
saml.saml1:
order: 0
realm: saml-azure-ad
description: "Log in with Azure Entra ID"
basic.basic1:
order: 1 ”
पिछले दो चरणों को पूरा करने के बाद, आपके किबाना लॉगिन पृष्ठ पर एक और लॉगिन विकल्प उपलब्ध होना चाहिए। इसके बाद, Microsoft Entra ID Enterprise एप्लिकेशन में उपयोगकर्ताओं को एप्लिकेशन में जोड़ने और उन्हें आवश्यक भूमिकाएँ निर्दिष्ट करने के लिए आगे बढ़ें।
अधिक जानकारी के लिए यहां दस्तावेज़ देखें।
सेल्सफोर्स के साथ एकीकरण पिछले वाले की तुलना में थोड़ा अधिक जटिल था। प्रारंभिक चरण समान हैं, लेकिन प्रावधान अनुभाग पर ध्यान दिया जाना चाहिए। व्यवस्थापक क्रेडेंशियल निर्दिष्ट करने के संबंध में बारीकियां हैं जिसके तहत खाता सिंक्रनाइज़ेशन होगा, और विशेषता मैपिंग को सक्षम करना आवश्यक है।
यहां स्क्रीनशॉट में हमारी कॉन्फ़िगरेशन सेटिंग्स का एक उदाहरण दिया गया है। हमें विशेषताओं के साथ किसी भी महत्वपूर्ण समस्या का सामना नहीं करना पड़ा, लेकिन हम उन विशेषताओं का एक स्क्रीनशॉट भी प्रदान करेंगे जिनका हमने उपयोग किया था।
सेल्सफोर्स में, कोई विशेष बारीकियाँ नहीं थीं, और हम इस गाइड में उल्लिखित निम्नलिखित चरणों के साथ आगे बढ़े।
डेटाडॉग के साथ एकीकरण के दौरान, हमें कुछ समस्याओं का भी सामना करना पड़ा। प्राथमिक दस्तावेज जिसने हमारा मार्गदर्शन किया वह यहां पाया जा सकता है। समस्या निवारण की बारीकियों के लिए, हमने इस गाइड का संदर्भ लिया।
सब कुछ सुचारू रूप से शुरू हुआ, और शुरू में ऐसा लग रहा था कि कोई समस्या नहीं होगी। हमेशा की तरह, हमने Microsoft Entra ID में एक नया एंटरप्राइज एप्लिकेशन बनाया।
"एसएएमएल के साथ सिंगल साइन-ऑन सेट करें" अनुभाग में, अपने डेटाडॉग खाते के लिए आपके द्वारा चुने गए स्थान पर ध्यान दें। हमारे मामले में, यह यूरोप क्षेत्र था।
जैसा कि पहले बताया गया है, MongoAtlasDB के लिए, हम रोल मैपिंग के लिए अतिरिक्त विशेषता "memberOf" जोड़ते हैं।
सभी सेटिंग्स सहेजें और फ़ेडरेशन मेटाडेटा XML डाउनलोड करें। इस फ़ाइल को डेटाडॉग में SAML सेटिंग्स में अपलोड करें। यहां संदर्भ के लिए एक सुविधाजनक लिंक है। डेटाडॉग एसएएमएल सेटिंग्स (यदि आपका स्थान भिन्न है तो "ईयू" को उचित डोमेन ज़ोन से बदलें)। यह नीचे स्क्रीनशॉट जैसा दिखना चाहिए।
संगठन की लॉगिन विधि सेटिंग्स में, केवल वही रखें जो आवश्यक है (मेरे मामले में, मैंने पासवर्ड लॉगिन और Google प्रमाणीकरण अक्षम कर दिया है)। Microsoft Entra ID के लिए एप्लिकेशन पंजीकरण में Azure में भूमिकाएँ जोड़ें।
यहाँ सबसे दिलचस्प हिस्सा आता है. डेटाडॉग में एसएएमएल ग्रुप मैपिंग -> रोल मैपिंग पर नेविगेट करें और कुंजी, मान और भूमिका जोड़ें। यह सीधा-सादा लगता है. नीचे स्क्रीनशॉट देखें.
लेकिन यह काम नहीं करता है, और यह त्रुटि देता रहता है "इस उपयोगकर्ता के लिए कोई AuthNMappings नहीं हैं"।
काफी देर तक, हमने सभी दस्तावेज़ों, लॉग्स और समस्या निवारण पृष्ठों की समीक्षा करते हुए यह समझने की कोशिश की कि हम क्या गलत कर रहे हैं। दुर्भाग्य से इसका कहीं कोई जिक्र नहीं था. अंत में, समाधान सरल है: नीचे स्क्रीनशॉट में दिखाए गए कॉन्फ़िगरेशन का पालन करें।
कुंजी फ़ील्ड में, स्ट्रिंग दर्ज करें: http://schemas.microsoft.com/ws/2008/06/identity/claims/role
ऐसा करने के बाद सब कुछ सफलतापूर्वक काम करने लगा।
"यह उन प्रणालियों का एक छोटा सा हिस्सा है जिन्हें हमने Microsoft Entra ID के साथ एकीकृत किया है। हमें उम्मीद है कि यहां साझा की गई अंतर्दृष्टि एक सहायक संसाधन के रूप में काम करेगी, आपकी एकीकरण प्रक्रियाओं को सुव्यवस्थित करेगी और मूल्यवान समय की बचत करेगी। अंत में, Microsoft का उपयोग करने के निम्नलिखित फायदे हैं एंट्रा आईडी को हाइलाइट किया जा सकता है: सिंगल साइन-ऑन, जिसमें कई बार पासवर्ड दर्ज करने की आवश्यकता नहीं होती है; कोई अतिरिक्त घटक आवश्यक नहीं है; कॉन्फ़िगरेशन और प्रशासन में आसानी; समूह नीतियां और समूह; डिवाइस पंजीकरण; और उच्च स्तरीय सुरक्षा।