मैं सक्रिय डायरेक्टरी और मानक रूपों को लॉगिन करने की कोशिश कर रहा हूं लेकिन एक चीज मुझे रोक रही है। मुझे वर्तमान विंडोज उपयोगकर्ता का नाम नहीं मिल रहा है। मुझे सबसे नज़दीकी मिला है var i = WindowsIdentity.GetCurrent();
, लेकिन यह मुझे आईआईएस ऐप पूल उपयोगकर्ता का नाम देता है। मेरे पास आईआईएस में अनाम प्रमाणीकरण, प्रपत्र प्रमाणीकरण और विंडोज प्रमाणीकरण सक्षम है। मैं उपयोगकर्ताओं को एडी से लोड कर सकता हूं इसलिए मुझे लगता है कि मेरा web.config सही तरीके से सेटअप है।एक्टिव डायरेक्टरी वर्तमान उपयोगकर्ता नाम ASP.NET
संपादित:
<membership defaultProvider="HybridMembershipProvider">
<providers>
<clear />
<add name="HybridMembershipProvider" type="MyApp.Data.HybridMembershipProvider" AspNetProviderName="AspNetSqlMembershipProvider" ActiveDirectoryProviderName="ADMembershipProvider" />
<add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="MyAppConnection" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="4" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/" />
<add name="ADMembershipProvider" type="System.Web.Security.ActiveDirectoryMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="ADConnectionString"
attributeMapUsername="sAMAccountName" enableSearchMethods="true" attributeMapEmail="mail"/>
</providers>
</membership>
संपादित करें 2: यह मेरा web.config (एक फसाड प्रदाता का उपयोग) है यहाँ मेरी आईआईएस सुरक्षा सेटअप है।
क्या आप अपने पहले दो बिंदुओं को थोड़ा और बता सकते हैं? आपका क्या मतलब है "यदि वह डेटा प्रपत्र सदस्यता प्रदाता/एडी में है"। वे एक उपयोगकर्ता हैं और मैं उपयोगकर्ता नाम से एडी पूछ सकता हूं। "अन्यथा आपको अपना नाम प्राप्त करने के लिए एडी से पूछना होगा।" - यदि मेरा नाम है तो मैं ऐसा कर सकता हूं, लेकिन मैं उनका नाम प्राप्त करने के लिए इसे कैसे करूँगा? – Echilon
आपके लिए संपादित उत्तर, कृपया फिर से पढ़ें –
मेरी समस्या यह है कि 'थ्रेड.कुरेंट प्रिंसिपल.इडेन्टिटी.Name ' खाली है, क्या मुझे उपयोगकर्ता नाम नहीं मिल सकता है। – Echilon