App Service प्रमाणीकरण और नेटवर्किंग
अपने वेब ऐप के लिए अंतर्निर्मित प्रमाणीकरण प्रदाता (Entra ID, Google, GitHub) सक्षम करें और VNet Integration तथा पहुँच प्रतिबंधों से आने वाले ट्रैफ़िक को सीमित करें।
App Service प्रमाणीकरण और नेटवर्किंग, CoddyKit पर Cloud & IT Cert Prep का एक निःशुल्क पाठ है। यह 4 में से 4वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Cloud & IT Cert Prep सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Cloud & IT Cert Prep पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
App Service में अंतर्निहित प्रमाणीकरण
Azure App Service एक अंतर्निहित प्रमाणीकरण और प्राधिकरण मॉड्यूल (जिसे कभी-कभी EasyAuth कहा जाता है) प्रदान करता है, जो आपके अनुप्रयोग में कोई कोड परिवर्तन किए बिना साइन-इन प्रवाह, टोकन सत्यापन और सत्र प्रबंधन संभालता है। आप इसे सीधे Azure पोर्टल में सक्षम कर सकते हैं और कई पहचान प्रदाताओं में से चुन सकते हैं। स्वयं OAuth प्रवाह लागू किए बिना किसी API या आंतरिक टूल में जल्दी से प्रमाणीकरण जोड़ने के लिए यह आदर्श है।
समर्थित पहचान प्रदाता
App Service प्रमाणीकरण में कई पहचान प्रदाता पहले से समर्थित हैं: Microsoft Entra ID (उद्यम या कॉर्पोरेट लॉगिन के लिए), Google, Facebook, Twitter/X, GitHub और कोई भी OpenID Connect संगत प्रदाता। क्लाइंट ID और सीक्रेट प्राप्त करने के लिए आप चुने गए प्रदाता के साथ अपना ऐप पंजीकृत करते हैं, फिर इन्हें App Service में कॉन्फ़िगर करते हैं। कई प्रदाताओं को एक साथ सक्षम किया जा सकता है, जिससे उपयोगकर्ता साइन इन करने का तरीका चुन सकते हैं।
# Enable Microsoft Entra ID authentication via CLI
az webapp auth microsoft update \
--name MyUniqueWebApp \
--resource-group MyRG \
--client-id '<Entra-App-Client-ID>' \
--client-secret '<Client-Secret>' \
--issuer 'https://sts.windows.net/<TenantId>/'
# Set action when unauthenticated (redirect or 401)
az webapp auth update \
--name MyUniqueWebApp \
--resource-group MyRG \
--unauthenticated-client-action RedirectToLoginPageटोकन स्टोर और उपयोगकर्ता दावों तक पहुँचना
प्रमाणीकरण सक्षम होने पर App Service सत्यापित टोकन को टोकन स्टोर में संग्रहीत करता है — यह प्रत्येक उपयोगकर्ता सत्र के लिए स्थायी स्टोर होता है। आपका अनुप्रयोग कोड EasyAuth मॉड्यूल द्वारा जोड़े गए विशेष HTTP अनुरोध हेडर के माध्यम से प्रमाणीकृत उपयोगकर्ता के दावों तक पहुँच सकता है: X-MS-CLIENT-PRINCIPAL-NAME (ईमेल/UPN), X-MS-CLIENT-PRINCIPAL-ID (ऑब्जेक्ट ID), और मूल एक्सेस टोकन के लिए X-MS-TOKEN-AAD-ACCESS-TOKEN।
// Node.js: read user identity from EasyAuth headers
app.get('/profile', (req, res) => {
const userName = req.headers['x-ms-client-principal-name'];
const userId = req.headers['x-ms-client-principal-id'];
res.json({ name: userName, id: userId });
});
// Or decode the full claims JSON from the header
const principalHeader = req.headers['x-ms-client-principal'];
const claims = JSON.parse(Buffer.from(principalHeader, 'base64').toString());आउटबाउंड ट्रैफ़िक के लिए VNet Integration
VNet Integration App Service ऐप को Azure Virtual Network के अंदर मौजूद संसाधनों — जैसे VM, SQL डेटाबेस और आंतरिक API — पर आउटबाउंड कॉल करने देती है, बिना उन संसाधनों को सार्वजनिक इंटरनेट पर उजागर किए। ऐप को VNet के प्रत्यायोजित सबनेट में एक वर्चुअल NIC मिलता है और वह VNet तक पहुँच सकने वाले किसी भी संसाधन तक पहुँच सकता है, जिसमें VPN या ExpressRoute के माध्यम से ऑन-प्रिमाइसेस संसाधन भी शामिल हैं। VNet Integration Standard टियर और उससे ऊपर उपलब्ध है।
# Enable VNet Integration
az webapp vnet-integration add \
--name MyUniqueWebApp \
--resource-group MyRG \
--vnet MyVNet \
--subnet AppServiceSubnet
# Route ALL traffic through the VNet (including internet)
az webapp config appsettings set \
--name MyUniqueWebApp \
--resource-group MyRG \
--settings WEBSITE_VNET_ROUTE_ALL=1इनबाउंड ट्रैफ़िक के लिए Private Endpoints
जहाँ VNet Integration आउटबाउंड ट्रैफ़िक संभालती है, वहीं एक private endpoint इनबाउंड ट्रैफ़िक संभालता है — यह आपके App Service को निजी IP पते के माध्यम से केवल आपके VNet के अंदर से पहुँच योग्य बनाता है। जब private endpoint ही पहुँच का एकमात्र तरीका होता है, तब azurewebsites.net तक बाहरी इंटरनेट पहुँच अवरुद्ध हो जाती है। इसका उपयोग उन आंतरिक API और व्यवस्थापक पोर्टल के लिए किया जाता है जिन्हें कभी भी सार्वजनिक इंटरनेट पर उजागर नहीं किया जाना चाहिए।
# Create a private endpoint for the web app
az network private-endpoint create \
--name MyWebAppPE \
--resource-group MyRG \
--vnet-name MyVNet \
--subnet PrivateEndpointSubnet \
--private-connection-resource-id \
'/subscriptions/.../providers/Microsoft.Web/sites/MyUniqueWebApp' \
--group-id sites \
--connection-name MyWebAppConnectionपहुँच प्रतिबंध
App Service में पहुँच प्रतिबंध आपको इनबाउंड ट्रैफ़िक के लिए IP को अनुमति देने या अस्वीकार करने वाली सूची निर्धारित करने देते हैं। नियमों का मूल्यांकन प्राथमिकता क्रम में किया जाता है (कम संख्या = अधिक प्राथमिकता)। आप विशिष्ट IP श्रेणियों (जैसे आपके कार्यालय के VPN का एग्रेस IP), Azure सेवा टैग (जैसे AzureLoadBalancer) या विशिष्ट VNet सबनेट तक पहुँच सीमित कर सकते हैं। अपने स्टेजिंग स्लॉट को सुरक्षित करने के लिए पहुँच प्रतिबंधों का उपयोग करें, ताकि केवल आपकी टीम की IP श्रेणी ही उस तक पहुँच सके।
# Allow only a specific IP range
az webapp config access-restriction add \
--name MyUniqueWebApp \
--resource-group MyRG \
--priority 100 \
--action Allow \
--ip-address 203.0.113.0/24 \
--rule-name 'OfficeRange'
# Allow Azure Front Door service tag
az webapp config access-restriction add \
--name MyUniqueWebApp \
--resource-group MyRG \
--priority 200 \
--action Allow \
--service-tag AzureFrontDoor.Backend \
--rule-name 'FrontDoor'Hybrid Connections
Hybrid Connections (BizTalk से) App Service को VNet Integration या VPN गेटवे की आवश्यकता के बिना ऑन-प्रिमाइसेस संसाधनों तक पहुँचने देती हैं। ऑन-प्रिमाइसेस स्थापित हल्का रिले एजेंट Azure Service Bus से आउटबाउंड कनेक्शन स्थापित करता है; आपका ऐप रिले के माध्यम से कनेक्ट होता है। Hybrid Connections TCP स्तर पर काम करती हैं और किसी भी पोर्ट का समर्थन करती हैं — इसलिए वे पुराने ऑन-प्रिमाइसेस डेटाबेस या API से कनेक्ट करने के लिए उपयोगी हैं, जिन्हें Azure में स्थानांतरित नहीं किया जा सकता।
# Add a Hybrid Connection to reach on-prem SQL
az webapp hybrid-connection add \
--name MyUniqueWebApp \
--resource-group MyRG \
--namespace myServiceBusNS \
--hybrid-connection on-prem-sql-relay
# The Hybrid Connection Manager agent must be installed
# and configured on the on-premises server to complete the relayApp Service के लिए Managed Identity
अपने App Service ऐप को managed identity दें, ताकि वह कहीं भी क्रेडेंशियल संग्रहीत किए बिना अन्य Azure सेवाओं (Key Vault, Blob Storage, SQL Database) से प्रमाणीकृत हो सके। Azure इस पहचान के क्रेडेंशियल अपने-आप प्रबंधित करता है। system-assigned identity (ऐप के जीवनचक्र से जुड़ी) या user-assigned identity (कई ऐप में साझा की जा सकने वाली) का उपयोग करें। लक्षित संसाधनों पर पहचान को RBAC भूमिकाएँ प्रदान करें।
# Enable system-assigned managed identity
az webapp identity assign \
--name MyUniqueWebApp \
--resource-group MyRG
# Grant the identity access to Key Vault secrets
az keyvault set-policy \
--name MyKeyVault \
--object-id $(az webapp identity show \
--name MyUniqueWebApp \
--resource-group MyRG \
--query principalId -o tsv) \
--secret-permissions get listCORS सक्षम करना
Cross-Origin Resource Sharing (CORS) यह नियंत्रित करता है कि कौन से डोमेन आपके App Service ऐप को ब्राउज़र-आधारित API कॉल कर सकते हैं। CORS सेटिंग में अनुमत ऑरिजिन कॉन्फ़िगर करें — प्रमाणीकृत API के लिए प्रोडक्शन में वाइल्डकार्ड (*) वापस न भेजें। App Service का अंतर्निहित CORS समर्थन Access-Control-Allow-Origin प्रतिक्रिया हेडर अपने-आप जोड़ता है, इसलिए सरल मामलों में आपके अनुप्रयोग कोड में CORS मिडलवेयर की आवश्यकता नहीं रहती।
# Allow specific origin
az webapp cors add \
--name MyUniqueWebApp \
--resource-group MyRG \
--allowed-origins https://www.contoso.com
# View current CORS settings
az webapp cors show \
--name MyUniqueWebApp \
--resource-group MyRG
# Remove a CORS origin
az webapp cors remove \
--name MyUniqueWebApp \
--resource-group MyRG \
--allowed-origins https://old.contoso.comApp Service Environments (ASE)
App Service Environment (ASE) App Service का पूरी तरह पृथक और समर्पित परिनियोजन है, जो आपके अपने VNet के अंदर चलता है। यह नेटवर्क पृथक्करण, स्केलेबिलिटी (अधिकतम 200 इंस्टेंस) और अनुपालन-संगति का उच्चतम स्तर प्रदान करता है। ASE v3 में समर्पित सार्वजनिक IP की आवश्यकता नहीं होती और यह मूल रूप से private endpoints का समर्थन करता है। इसकी कमी काफ़ी अधिक लागत है — ASE उन उद्यम वर्कलोड के लिए है जिनमें कड़े पृथक्करण की आवश्यकताएँ होती हैं।
सुरक्षा की सर्वोत्तम प्रक्रियाओं का सारांश
सुरक्षित App Service परिनियोजन के लिए: केवल HTTPS लागू करें, इनबाउंड IP को सीमित करने के लिए पहुँच प्रतिबंध का उपयोग करें, कॉन्फ़िगरेशन में सीक्रेट रखने से बचने के लिए managed identity सक्षम करें, Key Vault संदर्भों के साथ सीक्रेट को Key Vault में संग्रहीत करें, न्यूनतम TLS संस्करण 1.2 लागू करें, ख़तरों का पता लगाने के लिए Defender for App Service सक्षम करें और ऐप संसाधन के लिए Azure Security Center recommendations की नियमित समीक्षा करें।
# Enforce HTTPS and minimum TLS version
az webapp update \
--name MyUniqueWebApp \
--resource-group MyRG \
--https-only true
az webapp config set \
--name MyUniqueWebApp \
--resource-group MyRG \
--min-tls-version '1.2' \
--ftps-state Disabledत्वरित जाँच
इस पाठ में बताए गए Microsoft Azure Fundamentals (AZ-900) के सिद्धांतों की अपनी समझ जाँचें।
पाठ का पुनरावलोकन
इस पाठ में आपने सीखा कि built-in authentication (EasyAuth) कोड में बदलाव किए बिना पहचान प्रदाता का लॉगिन जोड़ता है; VNet Integration आउटबाउंड ट्रैफ़िक को आपके वर्चुअल नेटवर्क के माध्यम से भेजती है, जबकि private endpoints इनबाउंड ट्रैफ़िक को सीमित करते हैं; और managed identity अन्य Azure सेवाओं के लिए पासवर्ड-रहित प्रमाणीकरण सक्षम करती है। अब हम Azure Container Registry का अध्ययन करेंगे।
एआई शिक्षक के साथ Cloud & IT Cert Prep सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 150
- पाठ
- 600
अक्सर पूछे जाने वाले प्रश्न
क्या “App Service प्रमाणीकरण और नेटवर्किंग” पाठ निःशुल्क है?
हाँ—“App Service प्रमाणीकरण और नेटवर्किंग” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Cloud & IT Cert Prep पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Cloud & IT Cert Prep पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“App Service प्रमाणीकरण और नेटवर्किंग” में मैं क्या सीखूँगा?
अपने वेब ऐप के लिए अंतर्निर्मित प्रमाणीकरण प्रदाता (Entra ID, Google, GitHub) सक्षम करें और VNet Integration तथा पहुँच प्रतिबंधों से आने वाले ट्रैफ़िक को सीमित करें। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Cloud & IT Cert Prep का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या Cloud & IT Cert Prep शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Cloud & IT Cert Prep शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 4वाँ पाठ है।
“App Service प्रमाणीकरण और नेटवर्किंग” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस Cloud & IT Cert Prep पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर Cloud & IT Cert Prep पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- App Service योजना और वेब ऐप बनाना
- परिनियोजन स्लॉट और स्वैप
- स्वतः स्केलिंग और कस्टम डोमेन
- App Service प्रमाणीकरण और नेटवर्किंग