2014-06-12 7 views
13

के साथ डिबगिंग मैंने अभी विज़ुअल स्टूडियो 2012 से विजुअल स्टूडियो 2013 में अपना एप्लिकेशन अपग्रेड किया है। मेरी विंडोज प्रमाणीकरण अब और काम नहीं कर रहा है। यह मुझे त्रुटि से नीचे दे रहा है।विंडोज प्रमाणीकरण आईआईएस एक्सप्रेस में काम नहीं कर रहा है, विजुअल स्टूडियो 2013, विंडोज 8

 HTTP Error 401.2 - Unauthorized 
    You are not authorized to view this page due to invalid authentication headers. 

दृश्य स्टूडियो में वेबसाइट गुणों से प्रमाणीकरण का चयन करने का विकल्प होता है। इसलिए मैंने अज्ञात पहुंच अक्षम कर दी और विंडोज प्रमाणीकरण को सक्षम किया लेकिन यह मुझे नीचे पॉपअप के रूप में उपयोगकर्ता नाम और पासवर्ड के लिए पूछ रहा है। यहां तक ​​कि अगर मैं यहां डोमेन प्रमाण-पत्र देता हूं। यह अभी भी मुझे बार-बार यह पॉपअप दे रहा है।

enter image description here enter image description here

वेब कॉन्फ़िग:

 <authentication mode="Windows" /> 
    <authorization> 
    <deny users="?" /> 
    </authorization> 
    <identity impersonate="false" /> 
    <trace enabled="true" /> 

आईआईएस एक्सप्रेस aspnetConfig:

 <authentication> 

      <anonymousAuthentication enabled="false" userName="" /> 

      <basicAuthentication enabled="false" /> 

      <clientCertificateMappingAuthentication enabled="false" /> 

      <digestAuthentication enabled="false" /> 

      <iisClientCertificateMappingAuthentication enabled="false"> 
      </iisClientCertificateMappingAuthentication> 

      <windowsAuthentication enabled="true"> 
       <providers> 
        <add value="Negotiate" /> 
        <add value="NTLM" /> 
       </providers> 
      </windowsAuthentication> 

     </authentication> 

     <authorization> 
      <add accessType="Allow" users="*" /> 
     </authorization> 



     <location path="Path"> 
     <system.webServer> 
     <security> 
      <authentication> 
       <windowsAuthentication enabled="true" /> 
       <anonymousAuthentication enabled="false" /> 
      </authentication> 
     </security> 
     </system.webServer> 
     </location> 

मुझे पता है अगर आप इस बारे में अधिक जानकारी चाहते हैं।

अद्यतन:

मुझे पता चला है कि अगर मैं web.config से रेखा से नीचे हटाने की तुलना में यह काम शुरू।

 <remove users="*" roles="" verbs="" /> 
+0

आप इस समझ से बाहर था? – sabdiel

उत्तर

10

यह आप की तरह लग रहा अपना स्वयं का प्रश्न हल! आप पर अच्छा। इस पोस्ट के अलावा मेरी मदद करने के बाद मैंने अपने आईआईएस एक्सप्रेस को कॉन्फ़िगर करने में निम्नलिखित सहायक होने के लिए निम्नलिखित पाया।

IIS Express Windows Authentication

संपादित करें: मैं संबद्ध लिंक के मामले में यह मर जाता है से महत्वपूर्ण जानकारी कॉपी किया है। इस उपयोगकर्ता vikomall से पूरी तरह से है

विकल्प -1:

संपादित \My Documents\IISExpress\config\applicationhost.config फ़ाइल और windowsAuthentication सक्षम, अर्थात्:

<system.webServer> 
... 
    <security> 
... 
    <authentication> 
     <windowsAuthentication enabled="true" /> 
    </authentication> 
... 
    </security> 
... 
</system.webServer> 

विकल्प -2: में

अनलॉक windowsAuthentication अनुभाग \ My दस्तावेज़ \ IISExpress \ config \ applicationhost.config निम्नानुसार

<add name="WindowsAuthenticationModule" lockItem="false" /> 

ऑल्टर ओवरराइड

<sectionGroup name="security"> 
    ... 
    <sectionGroup name="system.webServer"> 
     ... 
     <sectionGroup name="authentication"> 
      <section name="anonymousAuthentication" overrideModeDefault="Allow" /> 
      ... 
      <section name="windowsAuthentication" overrideModeDefault="Allow" /> 
    </sectionGroup> 
</sectionGroup> 

जोड़ें आवेदन के web.config में निम्नलिखित 'अनुमति' के लिए आवश्यक प्रमाणीकरण प्रकारों के लिए सेटिंग

<?xml version="1.0" encoding="UTF-8"?> 
<configuration> 
    <system.webServer> 
     <security> 
     <authentication> 
      <windowsAuthentication enabled="true" /> 
     </authentication> 
     </security> 
    </system.webServer> 
</configuration> 

लिंक नीचे मदद मिल सकती है: http://learn.iis.net/page.aspx/376/delegating-configuration-to-webconfig-files/

वीएस 2010 एसपी 1 लागू करने के बाद विकल्प 1 + 2 विंडोज प्रमाणीकरण प्राप्त करने के लिए आवश्यक हो सकता है w orking।मैंने पाया है कि यह कभी कभी में रहता है दृश्य स्टूडियो 2015 में -

<authentication> 

      <anonymousAuthentication enabled="false" userName="" /> 
+0

क्या कोई मुझे बताएगा कि यह क्यों कम हो गया है? मैंने मूल लेखक को जिम्मेदार ठहराया और यहां प्रासंगिक जानकारी की प्रतिलिपि बनाई। क्या यह उपयोगी नहीं है या क्या यह कुछ नियम तोड़ रहा है ठीक है? – thinklarge

11

ApplicationHost.config संशोधनों के साथ सावधान रहें: इसके अलावा, आप आईआईएस एक्सप्रेस ApplicationHost.config में गलत पर गुमनाम प्रमाणीकरण सेट करने के लिए आवश्यकता हो सकती है स्थानीय परियोजना निर्देशिका।

उदाहरण के लिए:

DRIVE:\MYPROJECT\.vs\config\applicationhost.config 

क्या आप वाकई जो applicationhost कॉन्फ़िग फ़ाइल इस्तेमाल किया जा रहा है, तो आप ProcMon & साथ फ़ाइल पहुँच निगरानी कर सकते हैं तो "पथ" को देखने के लिए क्या वी.एस. के आधार पर परिणामों को सीमित नहीं कर रहे हैं वास्तव में डीबग समय पर पढ़ रहा है।

अद्यतन: यह विजुअल स्टूडियो 2017 में भी व्यवहार प्रतीत होता है।

+0

मुझे लगता है कि applicationhost.config परियोजना के लिए विशिष्ट है। IISExpress कॉन्फ़िगरेशन स्तर पर किसी के बजाय इस फ़ाइल को संशोधित करना शायद बेहतर है। – Dean

1

विजुअल स्टूडियो 2017, asp.net कोर परियोजना में, प्रमाणीकरण launchSettings.json

पर सेटअप है
{ 
    "iisSettings": { 
    "windowsAuthentication": false, 
    "anonymousAuthentication": true, 
    "iisExpress": { 
     "applicationUrl": "http://localhost:54491/", 
     "sslPort": 0 
    } 
    }, 
    "profiles": { 
    "IIS Express": { 
     "commandName": "IISExpress", 
     "launchBrowser": true, 
     "launchUrl": "api/values", 
     "environmentVariables": { 
     "ASPNETCORE_ENVIRONMENT": "Development" 
     } 
    }, 
    "TestAspNetCoreProd": { 
     "commandName": "Project", 
     "launchBrowser": true, 
     "launchUrl": "api/values", 
     "environmentVariables": { 
     "ASPNETCORE_ENVIRONMENT": "Development" 
     }, 
     "applicationUrl": "http://localhost:54492" 
    } 
    } 
} 
संबंधित मुद्दे