Microsoft Entra ID के साथ SSO सेट करें
यह पेज SSO कनेक्शन के Entra वाले हिस्से के बारे में है। Bird वाला हिस्सा (डोमेन सत्यापित करना, परीक्षण करना, सक्रिय करना और SSO अनिवार्य करना) हर प्रदाता के लिए एक जैसा है और SSO और प्रोविज़निंग पर दिया गया है।
Entra और Bird दोनों को एक-दूसरे से मान चाहिए, इसलिए आप कहाँ से शुरू करें यह प्रोटोकॉल पर निर्भर करता है। काम करते समय दोनों को खुला रखें।
SAML
SAML के लिए Bird से शुरू करें। SAML कनेक्शन का Entity ID और Assertion Consumer Service URL कनेक्शन से ही बनते हैं, इसलिए उसे I have not set up my provider yet चुनकर बनाएँ, फिर दिखाए गए मान Entra में पंजीकृत करें, और वापस आकर Supply the details पूरा करें। प्लेसहोल्डर मानों के बिना SAML सेट करना इस प्रक्रिया को चरण-दर-चरण समझाता है।
Entra के फ़ील्ड नाम Bird के फ़ील्ड नामों से मेल नहीं खाते:
| Bird में, Register these with your identity provider के अंतर्गत | Microsoft Entra ID में |
|---|---|
| Assertion Consumer Service URL | Reply URL (Assertion Consumer Service URL) |
| Entity ID | Identifier (Entity ID) |
| इस कनेक्शन का साइन-इन URL | Sign on URL |
आप Sign on URL भरते हैं या नहीं, इससे तय होता है कि My Apps टाइल कैसे काम करेगी। इसे सेट करने पर टाइल साइन-इन Bird पर शुरू करती है, जो फिर Entra से एक assertion माँगता है। इसे खाली छोड़ने पर टाइल बिना माँगे ही Bird को एक assertion भेज देती है। Bird दोनों तरीके स्वीकार करता है, बशर्ते कनेक्शन पहचान प्रदाता की ओर से शुरू किए गए साइन-इन की अनुमति देता हो।
NameID फ़ॉर्मैट स्वयं सेट करें
Entra का फ़ेडरेशन मेटाडेटा कोई भी NameID फ़ॉर्मैट नहीं बताता। जहाँ प्रदाता मेटाडेटा में फ़ॉर्मैट प्रकाशित करता है, वहाँ Bird उसे वहीं से पढ़ता है। इसलिए Entra कनेक्शन डिफ़ॉल्ट रूप से एक स्थायी पहचानकर्ता पर आधारित होता है, और पहला परीक्षण विफल हो जाता है क्योंकि Entra वास्तव में जो फ़ॉर्मैट भेजता है, वह मेल नहीं खाता।
पहला परीक्षण चलाने से पहले कनेक्शन पर Edit खोलें और Identify members by को सदस्य के ईमेल पते पर सेट करें। Entra में Unique User Identifier (Name ID) क्लेम को user.mail पर सेट करें, और नाम पहचानकर्ता फ़ॉर्मैट को Email address पर रखें।
Okta और Google दोनों एक फ़ॉर्मैट बताते हैं, इसलिए यह चरण केवल Entra के लिए है।
Sign SAML response बंद करें
Sign SAML response को बंद रखें, ताकि Entra उसके चारों ओर के response के बजाय assertion पर हस्ताक्षर करे। response पर हस्ताक्षर चालू होने पर अंदर का assertion बिना हस्ताक्षर के रहता है, और Bird हर साइन-इन को एक हस्ताक्षर त्रुटि के साथ अस्वीकार कर देता है, जो प्रमाणपत्र की समस्या जैसी दिखती है।
Assertion की वैधता और प्रमाणपत्र बदलना
Entra जिन असर्शन पर हस्ताक्षर करता है, वे जारी होने से पाँच मिनट पहले से लेकर जारी होने के 60 मिनट बाद तक मान्य रहते हैं। यह अवधि Okta या Google की अवधि से लंबी है, और Bird इसे स्वीकार करता है।
प्रमाणपत्र बदलते समय कुछ देर दोनों प्रमाणपत्र साथ रखें। जब Bird कनेक्शन में पुराना प्रमाणपत्र मौजूद हो, तभी उसमें नया प्रमाणपत्र जोड़ें। फिर Entra में नया प्रमाणपत्र सक्रिय करें, और उसके बाद पुराने प्रमाणपत्र को Bird से हटाएँ। अगर Entra में नया प्रमाणपत्र सक्रिय होने से पहले आप पुराना प्रमाणपत्र हटा देते हैं, तो दोनों के मेल खाने तक हर साइन-इन अस्वीकार हो जाएगा।
Entra के क्लाइंट सीक्रेट और हस्ताक्षर प्रमाणपत्र, दोनों की समय-सीमा समाप्त होती है। इनकी तारीखें नोट कर लें और इन्हें बदलने की योजना बनाएँ। समय-सीमा समाप्त हो चुके क्रेडेंशियल से किया गया साइन-इन उसी दिन विफल हो जाता है।
OIDC
OIDC के लिए शुरुआत Entra पोर्टल से करें। OIDC कनेक्शन बनाने के लिए Bird को इश्यूअर, क्लाइंट ID और क्लाइंट सीक्रेट चाहिए, इसलिए पहले Entra में एप्लिकेशन रजिस्टर करें। Bird का Redirect URI हर कनेक्शन के लिए एक ही रहता है। यह कुछ भी बनाने से पहले ही Add connection में दिख जाता है, इसलिए आप इसे शुरू में ही रजिस्टर कर सकते हैं।
Entra में एक एप्लिकेशन रजिस्टर करें और उसमें क्लाइंट सीक्रेट जोड़ें। फिर क्लाइंट ID और सीक्रेट को Bird में कॉपी करें।
अपने टेनेंट-विशिष्ट इश्यूअर का उपयोग करें, यानी वह v2.0 इश्यूअर जिसमें आपकी टेनेंट ID होती है। मल्टी-टेनेंट common एंडपॉइंट का उपयोग न करें। उसका डिस्कवरी दस्तावेज़ इश्यूअर को किसी मान के रूप में नहीं, बल्कि टेम्पलेट के रूप में बताता है। उससे बना कनेक्शन हर साइन-इन में विफल होता है। Bird टोकन एंडपॉइंट पर client_secret_basic से प्रमाणीकरण करता है।
Bird के Redirect URI को ऐप रजिस्ट्रेशन में रीडायरेक्ट URI के रूप में रजिस्टर करें।
हर सदस्य का mail एट्रिब्यूट भरें
Bird सदस्य का पता ID टोकन के email क्लेम से पढ़ता है। Entra यह क्लेम तभी भेजता है, जब उपयोगकर्ता का mail एट्रिब्यूट भरा हो। यह एट्रिब्यूट उपयोगकर्ता की Entra प्रोफ़ाइल में Contact information के अंतर्गत होता है। जिस टेनेंट के उपयोगकर्ताओं के पास मेलबॉक्स नहीं होता, उसमें यह एट्रिब्यूट अक्सर खाली रहता है। उदाहरण के लिए, कोई संगठन किसी दूसरे मेल प्रदाता का उपयोग कर सकता है। ऐसे में Bird परीक्षण बताता है कि कोई ईमेल पता नहीं मिला, भले ही उपयोगकर्ता का प्रिंसिपल नाम एक मान्य पता हो।
जो भी सदस्य Bird के ज़रिए साइन इन करेगा, उसके लिए mail भरें।
My Apps टाइल
टाइल दिखाने के लिए ऐप रजिस्ट्रेशन का Home page URL Bird में दिए गए कनेक्शन के Initiate login URI पर सेट करें, Visible to users को Yes पर सेट करें और उपयोगकर्ता को असाइन करें। होम पेज URL के बिना टाइल छिपी रहती है।
ऐप असाइनमेंट यह सीमित नहीं करता कि Bird तक कौन पहुँच सकता है
Entra एप्लिकेशन पर Assignment required सेट करने से अपने आप में किसी असाइन न किए गए सदस्य को OIDC के ज़रिए Bird में साइन इन करने से नहीं रोका जाता। Bird मानक openid और email स्कोप का अनुरोध करता है, जिन्हें Entra Microsoft Graph अनुमतियाँ मानता है। इसलिए Entra असाइनमेंट की जाँच आपके Bird एप्लिकेशन के बजाय Graph के आधार पर करता है।
Entra से असाइनमेंट, और उसके साथ एप्लिकेशन-स्तर की कंडीशनल एक्सेस, लागू करवाने के लिए ऐप रजिस्ट्रेशन में Expose an API के अंतर्गत एक स्कोप उपलब्ध कराएँ, और Bird से कहें कि वह कनेक्शन पर उस स्कोप का अनुरोध करे। तब तक इस कनेक्शन के ज़रिए आपके संगठन तक वही सदस्य पहुँच सकते हैं जिनका पता इसके किसी सत्यापित डोमेन पर है।
यह OIDC तरीके पर लागू होता है। Entra में SAML एप्लिकेशन अपना अलग संसाधन होता है, इसलिए असाइनमेंट की जाँच उसी के आधार पर होती है।
अगले चरण
- SSO और प्रोविज़निंग: डोमेन सत्यापित करें, कनेक्शन का परीक्षण करें और SSO अनिवार्य करें
- Okta के साथ SSO सेट करें
- Google Workspace के साथ SSO सेट करें
संबंधित संसाधन
इस विषय के लिए दस्तावेज़, गाइड और उदाहरणों के साथ आगे बढ़ें।