ApplicationPoolIdentity खाते को अनुमतियाँ कैसे असाइन करें


263

Windows Server 2008 पर IIS 7 में, एप्लिकेशन पूल नेटवर्कवर्क सर्विस खाते के बजाय "ApplicationPoolIdentity" खाते के रूप में चलाया जा सकता है।

मैं इस "ApplicationPoolIdentity" खाते की अनुमति कैसे प्रदान करूं। यह मशीन पर स्थानीय उपयोगकर्ता के रूप में प्रकट नहीं होता है। यह कहीं भी एक समूह के रूप में प्रकट नहीं होता है। कहीं भी ऐसा कुछ भी नहीं दिखाई देता है। जब मैं स्थानीय उपयोगकर्ताओं, समूहों और अंतर्निहित खातों के लिए ब्राउज़ करता हूं, तो यह सूची में नहीं दिखाई देता है, और न ही सूची में ऐसा कुछ भी दिखाई देता है। क्या हो रहा है?

मैं इस समस्या से ग्रस्त नहीं हूं: उदाहरण के लिए IIS 7.5 + Windows 7 में ApplicationPoolIdentity के साथ परेशानी देखें ।


"यह दुर्भाग्य से विंडोज सर्वर 2008 / विंडोज विस्टा पर ऑब्जेक्ट पिकर की एक सीमा है - जैसा कि कई लोग इसे पहले से ही खोज चुके हैं, आप अभी भी ऐप-पूल की पहचान के लिए कमांड लाइन टूल जैसे कि आईसीएसीएल का उपयोग करके हेरफेर कर सकते हैं ।"

जवाबों:


289

अद्यतन: मूल प्रश्न विंडोज सर्वर 2008 के लिए था, लेकिन विंडोज सर्वर 2008 आर 2 और विंडोज सर्वर 2012 (और विंडोज 7 और 8) के लिए समाधान आसान है। आप इसे सीधे टाइप करके NTFS UI के माध्यम से उपयोगकर्ता को जोड़ सकते हैं। नाम IIS APPPOOL \ {ऐप पूल नाम} के प्रारूप में है। उदाहरण के लिए: IIS APPPOOL \ DefaultAppPool।

IIS APPPOOL\{app pool name}

नोट: प्रति टिप्पणी नीचे दी गई है, इसके बारे में जानने के लिए दो चीजें हैं:

  • स्ट्रिंग को सीधे "उपयोगकर्ता या समूह का चयन करें" में दर्ज करें और खोज क्षेत्र में नहीं।
  • एक डोमेन वातावरण में आपको पहले अपने स्थानीय कंप्यूटर पर स्थान सेट करने की आवश्यकता होती है।

Microsoft डॉक्स लेख का संदर्भ: अनुप्रयोग पूल पहचान> सुरक्षित संसाधन

मूल प्रतिक्रिया: (विंडोज सर्वर 2008 के लिए) यह एक शानदार फीचर है, लेकिन जैसा कि आपने बताया कि यह अभी तक पूरी तरह से लागू नहीं हुआ है। आप कमांड प्रॉम्प्ट से ऐप पूल की पहचान को आइकल्स की तरह कुछ के साथ जोड़ सकते हैं, फिर आप इसे GUI से प्रबंधित कर सकते हैं। उदाहरण के लिए, कमांड प्रॉम्प्ट से कुछ इस तरह से चलाएँ:

icacls c:\inetpub\wwwroot /grant "IIS APPPOOL\DefaultAppPool":(OI)(CI)(RX)

फिर, विंडोज एक्सप्लोरर में, wwwroot फ़ोल्डर पर जाएं और सुरक्षा अनुमतियों को संपादित करें। आप देखेंगे कि DefaultAppPool नामक समूह (समूह चिह्न) कैसा दिखता है। अब आप अनुमतियों को संपादित कर सकते हैं।

हालाँकि, आपको इसका उपयोग करने की आवश्यकता नहीं है। यह एक बोनस है जिसे आप चाहें तो उपयोग कर सकते हैं। आप प्रति ऐप पूल में कस्टम उपयोगकर्ता बनाने और कस्टम उपयोगकर्ता को डिस्क पर असाइन करने के पुराने तरीके का उपयोग कर सकते हैं। जिसमें फुल यूआई सपोर्ट है।

यह SID इंजेक्शन विधि अच्छा है क्योंकि यह आपको एक एकल उपयोगकर्ता का उपयोग करने की अनुमति देता है लेकिन प्रत्येक ऐप पूल के लिए अद्वितीय उपयोगकर्ता बनाने के लिए बिना प्रत्येक साइट को एक दूसरे से पूरी तरह से अलग करता है। बहुत प्रभावशाली है, और यह यूआई समर्थन के साथ भी बेहतर होगा।

नोट: यदि आप एप्लिकेशन पूल उपयोगकर्ता को खोजने में असमर्थ हैं, तो यह देखने के लिए देखें कि क्या Windows होस्ट अनुप्रयोग होस्ट हेल्पर सेवा चल रही है। यह वह सेवा है जो विंडोज़ खातों में एप्लिकेशन पूल उपयोगकर्ताओं को मैप करती है।


1
यह एक अजीब जानवर की तरह है क्योंकि यह एक समूह की तरह नहीं है जहां उपयोगकर्ता एक समूह में रहता है, और यह एक कंप्यूटर खाते बनाम एक उपयोगकर्ता खाते की तरह नहीं है जो एक दूसरे से पूरी तरह से अलग हैं। ऐप पूल खाता ऐप पूल पहचान उपयोगकर्ता को 'ओवरलैप' करता है। उदाहरण के लिए, आपके पास नेटवर्क सेवा का उपयोग करते हुए 5 ऐप पूल हो सकते हैं और 5 अन्य कस्टम खाते का उपयोग कर सकते हैं, लेकिन वे 10 अलग-अलग सिस्टम प्रबंधित ऐप पूल खाते हैं। फायदे सी: \ inetpub \ temp \ appPools फ़ोल्डर के साथ दिखाई देते हैं, जहां यह स्वचालित रूप से प्रबंधित होता है और सिस्टम को साफ-साफ लॉक करता है। IIS उन्हें अच्छी तरह से लाभ देता है। फ़ोल्डरों पर हमारा उपयोग वैकल्पिक है।
स्कॉट फोर्सिथ - एमवीपी

29
ध्यान दें कि यदि आप "IIS APPPOOL \ DefaultAppPool" को सीधे "उपयोगकर्ता या समूह का चयन करें" (इसके लिए खोज करने के बजाय) में दर्ज करते हैं, तो अनुमतियाँ संपादित करते समय, यह सिर्फ ठीक पहचाना जाएगा (Win7 x64 और Win2k8 R2 x 64 पर परीक्षण)।
मिलान गार्डियन

5
आप Win7 और Win2k8 R2 के लिए सही हैं। यह Win2k8 RTM में लागू नहीं किया गया था, लेकिन R2 में है।
स्कॉट फोर्सिथ - एमवीपी

9
अंत में यह मिल गया - यदि आप सीधे ऐप पूल का नाम टाइप करते हैं जैसे @Milan Gardian ऊपर कहते हैं और स्थान फ़ील्ड को स्थानीय मशीन में बदल देते हैं तो यह काम करता है
Ciaran Bruen

4
Things दो बातों की जानकारी हो ’के लिए आपका बहुत-बहुत धन्यवाद। मैं इन दोनों पर ठोकर खा रहा था, और यह समस्याओं का एक स्पष्ट और सरल विवरण था और मुझे जो भी चाहिए उसे कैसे हासिल किया जाए। यह शर्म की बात है कि MSDN प्रलेखन में से कोई भी यह स्पष्ट नहीं था।
इयान ग्रिंजर

22

आपको यह सुनिश्चित करना होगा कि From this locationफ़ील्ड local machineडोमेन पर सेट है न कि डोमेन के लिए।

मेरे पास एक ही मुद्दा था और एक बार मैंने बदल दिया कि यह ठीक काम करता है।


4

आपको वास्तव में "भूमिका" के अनुसार समूह बनाना चाहिए और उस समूह को फाइलसिस्टम पर पहुँच प्रदान करना चाहिए। फिर आवश्यक रूप से भूमिका-विशिष्ट समूहों के लिए ऐप पूल जोड़ें। इस तरह से भले ही आप बाद में ऐप पूल को हटा दें (और वर्चुअल यूजर पॉफ हो जाए ), आपको सभी अनुमतियों को पुनः प्राप्त करने के बारे में चिंता करने की ज़रूरत नहीं है, आप बस मौजूदा ऐप पूल को मौजूदा समूह में जोड़ सकते हैं।


3

@Scott Forsyth - MVP उत्तर को पढ़ने के बाद मैंने एप्लिकेशन होस्ट हेल्पर सेवा को पुनः आरंभ करने का प्रयास किया। इससे मेरे लिए समस्या हल हो गई।


0

मैं WS8 R2 चला रहा था और मैं IIS APPPOOL\DefaultAppPoolविंडोज एक्सप्लोरर के माध्यम से नहीं जोड़ सकता था । जिस तरह से यह काम किया वह कमांड लाइन के माध्यम से था:

cacls [FILE PATH] / T / E / G "IIS APPPOOL \ DefaultAppPool": C


2
अजीब बात है, मुझे इसे स्वीकार करने के लिए "IIS AppPool \ DefaultAppPool" करना पड़ा। मिश्रित मामले पर ध्यान दें - सभी अपरकेस, जैसा कि मैंने पहली बार किया था, जीयूआई से स्वीकार नहीं किया गया था।
जेफ मैकजंकिन

0

यदि यह सवाल है कि msdb डेटाबेस में _sp_send_dbmail को कैसे निष्पादित किया जाए (msdb में SQL भेजें डेटाबेस मेल संग्रहीत कार्यविधि का उपयोग करके), तो यहां कुछ काम है। अपने डेटाबेस (.net ऐप में अपने कनेक्शन स्ट्रिंग पर परिभाषित है) के .net अनुप्रयोग उपयोगकर्ता नाम को "डेटाबेसमेल सेलर" भूमिका सदस्यता के साथ एमएसडीबी उपयोगकर्ता के लिए जोड़ें।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.