2016-09-16 2 views
1

Я хочу разместить проект ASP.NET MVC как интрасеть webapp. В настоящее время я борюсь с конфигурацией IIS. Наконец, webapp должен использовать информацию пользователя входа (windows) и проверять его через AD. Означает ли это IIS, или мне нужен дополнительный код в моем проекте?Конфигурация IIS для приложения интрасети ASP.NET MVC

Моя текущая конфигурация: Я включил только Аутентификация Windows в моем проекте ASP.NET. В IIS I также только включил проверку подлинности Windows в опции «Аутентификация» размещенного сайта. Мои .NET Authoritzation Правила:

Разрешить всем пользователям Наследуется & Разрешить MYDOMAIN \ MyUser GET, POST Local

Я также получил права пула приложений IIS для соответствующей папки в каталоге (

В этих настройках Я также задерживаюсь, когда попадаю на страницу. Первое, что странно, это то, что сайт запрашивает мое имя пользователя и пароль (почему он не принимает информацию о пользователе входа?). Вторая странная вещь (то есть - Я думаю - в соотношении с первым делом) не принимает мои правильные учетные данные.

Для меня кажется, что сервер не может проверить учетные данные или более в основном - сервер не знает, где он должен его проверить.

/EDIT1/ здесь мой web.config:

<configuration> 
    <configSections> 
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 --> 
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" /> 
    </configSections> 
    <appSettings> 
    <add key="webpages:Version" value="3.0.0.0" /> 
    <add key="webpages:Enabled" value="false" /> 
    <add key="ClientValidationEnabled" value="true" /> 
    <add key="UnobtrusiveJavaScriptEnabled" value="true" /> 
    <add key="owin:AutomaticAppStartup" value="false"/> 
    </appSettings> 
    <system.web> 
    <compilation debug="true" targetFramework="4.6.1" /> 
    <httpRuntime targetFramework="4.6.1" /> 
    <authentication mode="Windows" /> 
    <httpModules> 
     <add name="ApplicationInsightsWebTracking" type="Microsoft.ApplicationInsights.Web.ApplicationInsightsHttpModule, Microsoft.AI.Web" /> 
    </httpModules> 
    </system.web> 
    <runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
     <dependentAssembly> 
     <assemblyIdentity name="Newtonsoft.Json" culture="neutral" publicKeyToken="30ad4fe6b2a6aeed" /> 
     <bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="System.Web.Optimization" publicKeyToken="31bf3856ad364e35" /> 
     <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="1.1.0.0" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" /> 
     <bindingRedirect oldVersion="0.0.0.0-1.5.2.14234" newVersion="1.5.2.14234" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35" /> 
     <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" /> 
     <bindingRedirect oldVersion="1.0.0.0-5.2.3.0" newVersion="5.2.3.0" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" /> 
     <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="Microsoft.Owin" publicKeyToken="31bf3856ad364e35" culture="neutral" /> 
     <bindingRedirect oldVersion="0.0.0.0-3.0.1.0" newVersion="3.0.1.0" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="Microsoft.Owin.Security" publicKeyToken="31bf3856ad364e35" culture="neutral" /> 
     <bindingRedirect oldVersion="0.0.0.0-3.0.1.0" newVersion="3.0.1.0" /> 
     </dependentAssembly> 
    </assemblyBinding> 
    </runtime> 
    <system.codedom> 
    <compilers> 
     <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:6 /nowarn:1659;1699;1701" /> 
     <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:14 /nowarn:41008 /define:_MYTYPE=\&quot;Web\&quot; /optionInfer+" /> 
    </compilers> 
    </system.codedom> 
    <system.webServer> 
    <validation validateIntegratedModeConfiguration="false" /> 
    <modules> 
     <remove name="ApplicationInsightsWebTracking" /> 
     <add name="ApplicationInsightsWebTracking" type="Microsoft.ApplicationInsights.Web.ApplicationInsightsHttpModule, Microsoft.AI.Web" preCondition="managedHandler" /> 
    </modules> 
    </system.webServer> 
    <entityFramework> 
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" /> 
    <providers> 
     <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" /> 
    </providers> 
    </entityFramework> 
</configuration> 
+1

отправьте свой веб-конфигуратор, пожалуйста, – Henry24

+0

попробуйте положить <авторизация> в режиме аутентификации – Henry24

+0

не работает. могу ли я указать что-либо в applicationhost.config сервера? Для меня действительно кажется, что он не может проверить учетные данные в отношении сервера AD или его вида ... Но действительно не где искать – yesfabime

ответ

0

Обычно браузер настройки ли учетные данные должны быть тихо поставляются без запроса пользователя.

Посмотрите на приведенную ниже ссылку, это что-то еще, но также есть шаги по настройке браузера. https://ping.force.com/Support/PingFederate/Integrations/How-to-configure-supported-browsers-for-Kerberos-NTLM

Попробуйте использовать учетные данные учетной записи пользователя на самом сервере, чтобы узнать, работает ли это. Если служба Active Directory работает, сервер должен иметь возможность аутентифицировать пользователей. Вы также можете попробовать сначала удалить авторизацию для определенного домена/пользователя и добавить это позже, если сможете аутентифицироваться.

Имейте в виду, что вам также придется отключить анонимную аутентификацию.

+0

Я пробовал войти в систему с локальным пользователем, но он снова заканчивается в новом запросе учетных данных. – yesfabime

Смежные вопросы