Я работаю над проектом веб-сайта, который ограничивает доступ к определенной папке анонимным пользователям и позволяет получить доступ к папке тем, кто вошел в систему. Это отлично работает на моей машине разработки ,Аутентификация форм не работает после публикации
Однако после публикации веб-сайта и развертывания на веб-сервере (Windows Server 2008, IIS7) проверка подлинности форм не работает. Анонимные пользователи могут получить доступ к «ограниченной» папке. Я сравнивал webconfig как на машине разработки, так и на веб-сервере, и они точно такие же.
Я установил доступ/ограничение в каталог на машине разработки с помощью средства администрирования веб-сайта, встроенного в .NET Framework, с использованием этого tutorial. Однако я понимаю, что этот инструмент является только локальным хостом?
Обратите внимание: я не использую элементы управления входами и регистрации asp.net. Я использую пользовательскую функцию в коде позади (C#)
Является ли эта проблема вызвана изменением местоположения? Каталог развития машины: C: \ Users \ Мегатрон \ Documents \ Visual Studio 2010 \ Projects \ Osqar - v0.2 \ OSQARv0.1 Справочник Веб-сервер: C: \ Inetpub \ Wwwroot \ Osqar
Я немного потерялся здесь, поэтому любой совет будет очень благодарен.
Вот веб-конфигурационный файл
<?xml version="1.0" encoding="UTF-8"?>
<!--
For more information on how to configure your ASP.NET application, please visit
http://go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration>
<connectionStrings>
<add name="dbConn" connectionString="data source=mssql.database.com; Initial Catalog=devworks_oscar;User ID=myusername;Password=password" providerName="System.Data.SqlClient" />
</connectionStrings>
<system.web>
<authentication mode="Forms">
<forms name="Osqar" loginUrl="/login/login.aspx" protection="All" path="/" timeout="60" />
</authentication>
<compilation debug="true" />
<pages /></system.web>
<system.webServer>
<defaultDocument>
<files>
<add value="index.aspx" />
</files>
</defaultDocument>
</system.webServer>
</configuration>
Где правило authroization (правила доступа)? Если у вас их в Интернете.config в подпапке, проверьте наличие этих правил или иным образом разместите теги в ней. – Mubarek
Правила, созданные с помощью инструмента администрирования веб-сайта ASP.NET (ссылка на вопрос). Затем я опубликовал веб-сайт, поэтому подпапка находится в папке InetPub веб-сервера. Роли авторизации не отображаются в webconfig на машине разработки, но все же она работает. Выше показан webconfig из машины разработки (рабочий) – HGomez90
Конечно, это работает, потому что правило по умолчанию разрешает всем пользователям. Да, Инструмент администрирования веб-сайта (WAT) добавляет правила, и изменения, внесенные в web.config, должны быть разрешены при появлении запроса. или нажмите сохранить все на VS. – Mubarek