अध्याय 16b क्लाइंट, ग्रुपवेयर & CLI एडमिन: #pIdentity

मेल ऐप्स के लिए OAuth 2.1: Thunderbird, Outlook, डिवाइस और कमांड लाइन

nextxch स्वयं अपना OAuth 2.1 ऑथराइज़ेशन सर्वर है: मेल ऐप्स ब्राउज़र में सामान्य वेबमेल लॉगिन (2FA और पासकी सहित) के माध्यम से साइन इन करते हैं, उपयोगकर्ता सहमति पेज पर एक्सेस की पुष्टि करता है, और ऐप को अल्पकालिक एक्सेस टोकन तथा एक रोटेटिंग रिफ़्रेश टोकन मिलता है। IMAP, SMTP, POP3 और ManageSieve टोकन को SASL XOAUTH2 और OAUTHBEARER (RFC 7628) के माध्यम से स्वीकार करते हैं, ActiveSync, EWS और MAPI bearer के रूप में। बिना ब्राउज़र वाले डिवाइस डिवाइस कोड फ़्लो (RFC 8628) का उपयोग करते हैं। Entra ID या Keycloak के एक्सेस टोकन भी स्वीकार किए जा सकते हैं। हर अनुमति उपयोगकर्ता और व्यवस्थापक को दिखाई देती है और तुरंत रद्द की जा सकती है।

संचालन सुझाव और आर्किटेक्चर नोट

"OAuth / Kerberos only per protocol" (Admin > Identity sources) के साथ अलग-अलग प्रोटोकॉल और डोमेन के लिए पासवर्ड और ऐप पासवर्ड बंद किए जा सकते हैं, उदा. IMAP और SMTP केवल OAuth के साथ। बिना स्रोत वाला स्थानीय सर्वर एडमिन break-glass एक्सेस के रूप में छूट प्राप्त रहता है।

कमांड लाइन: device code flow और XOAUTH2 के साथ IMAP

पहले से पंजीकृत सार्वजनिक क्लाइंट nextxch-cli। उपयोगकर्ता दिखाया गया पता खोलता है, साइन इन करता है और कोड की पुष्टि करता है।

संदर्भ / कॉन्फ़िगरेशन
# 1. Request a device code
curl -s https://mail.example.com/oauth/device_authorization \
  -d client_id=nextxch-cli -d "scope=mail offline_access"
# -> {"device_code":"...","user_code":"BCDF-GHJK","verification_uri":"https://mail.example.com/oauth/device",...}

# 2. Open https://mail.example.com/oauth/device in a browser, sign in, confirm code BCDF-GHJK

# 3. Poll every 5 seconds until the token arrives (authorization_pending / slow_down)
curl -s https://mail.example.com/oauth/token -d client_id=nextxch-cli \
  -d grant_type=urn:ietf:params:oauth:grant-type:device_code -d device_code=...

# 4. IMAP with the access token
curl -v --login-options AUTH=XOAUTH2 --oauth2-bearer "$ACCESS_TOKEN" \
  -u anna@example.com imaps://mail.example.com/INBOX

# 5. Refresh (the old refresh token becomes invalid) and revoke
curl -s https://mail.example.com/oauth/token -d client_id=nextxch-cli \
  -d grant_type=refresh_token -d refresh_token=nxrt_...
curl -s https://mail.example.com/oauth/revoke -d client_id=nextxch-cli -d token=nxrt_...

सेटिंग्स, डिफ़ॉल्ट मान और बेस्ट प्रैक्टिस

सेटिंग / स्थान विवरण डिफ़ॉल्ट मान उत्पादन बेस्ट प्रैक्टिस
Einschalten एडमिन > पहचान स्रोत > OAuth 2.1: "OAuth साइन-इन सक्षम"। Issuer सर्वर का सार्वजनिक पता है। Discovery /.well-known/oauth-authorization-server और /.well-known/openid-configuration पर, साइनिंग कुंजी (ES256) /oauth/jwks पर। Aus एक्सेस टोकन 60 मिनट, रिफ़्रेश टोकन 90 दिन अप्रयुक्त रहने तक, अधिकतम 365 दिन। दो बार उपयोग किया गया रिफ़्रेश टोकन पूरे ग्रांट को रद्द कर देता है (चोरी से सुरक्षा)।
Thunderbird PKCE और loopback redirect के साथ पूर्व-पंजीकृत पब्लिक क्लाइंट "thunderbird"। Autoconfig (/.well-known/autoconfig) पासवर्ड के बाद दूसरी विधि के रूप में OAuth2 प्रदान करता है। client_id thunderbird Thunderbird केवल अपनी बिल्ट-इन सूची के प्रदाताओं के लिए OAuth2 का उपयोग करता है; आपके अपने सर्वर के लिए यह संस्करण पर निर्भर करता है। तब तक Kerberos/GSSAPI या ऐप पासवर्ड का उपयोग करें।
Outlook und Entra ID Entra स्रोत और "प्रोटोकॉल के लिए एक्सेस टोकन स्वीकार करें" के साथ nextxch Entra एक्सेस टोकन स्वीकार करता है (JWKS द्वारा हस्ताक्षर, aud, v1 issuer sts.windows.net सहित iss, समाप्ति, डायरेक्टरी)। ActiveSync, EWS और MAPI "WWW-Authenticate: Bearer" घोषित करते हैं। aud = api://mail.firma.de Entra: एप्लिकेशन ID URI api://mail.example.com और एक स्कोप (उदा. Mail.Access) के साथ अपना ऐप पंजीकरण "nextxch Mail API"। Windows के लिए Outlook आपके अपने सर्वर के विरुद्ध मॉडर्न ऑथ का उपयोग करता है या नहीं, यह संस्करण और Autodiscover पर निर्भर करता है; कंपनी नेटवर्क पर Kerberos विश्वसनीय तरीका है।
Eigene Anwendungen एडमिन-प्रबंधित क्लाइंट: public (PKCE) या सीक्रेट के साथ confidential (एक बार दिखाया जाता है), redirect URI सटीक या किसी भी पोर्ट के साथ loopback, फ़्लो code, refresh और device code, वैकल्पिक रूप से सहमति पेज के बिना। PKCE S256 Pflicht स्कोप: mail (सभी प्रोटोकॉल), एकल प्रोटोकॉल (imap, smtp, pop3, sieve, eas, ews, mapi, dav, jmap), offline_access, openid, email, profile।
Übersicht und Widerruf उपयोगकर्ता अपने कनेक्ट किए गए ऐप्स वेबमेल में Settings > Security के अंतर्गत देखते हैं, व्यवस्थापक सभी अनुमतियाँ Admin > Identity sources के अंतर्गत और खाता डायलॉग में। रद्द करने से पहले से जारी एक्सेस टोकन भी तुरंत समाप्त हो जाते हैं। - जब कोई व्यवस्थापक AD पासवर्ड रीसेट करता है, तो खाते के सभी OAuth अनुदान स्वचालित रूप से निरस्त हो जाते हैं।