powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / ASP.NET 4: доступ к ресурсам не авторизированным пользователям
10 сообщений из 10, страница 1 из 1
ASP.NET 4: доступ к ресурсам не авторизированным пользователям
    #37710000
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Думал что со времен 3.5 уже все ресурсы по-умолчанию недоступны если юзер не авторизован, ан нет - создал web-проект в VS11
в web.config

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
		<authentication mode="Forms">
			<forms name=".AUTHCOOKIE" protection="All" slidingExpiration="false" timeout="10" />
		</authentication>
		
		<authorization>
			<deny users="?" />
			<allow users="*" />
		</authorization>



Однако не авторизовавшись имею доступ ко всем .htm файлам, наверно и ко всему статическому контенту тоже
Где тут собака порылась? или это не надо работать в выходные? :)
...
Рейтинг: 0 / 0
ASP.NET 4: доступ к ресурсам не авторизированным пользователям
    #37710354
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пул - .Net 4, встроенный

Ничего не пойму, почему доступ к статическим страницам, несмотря на запрет, имеется (
...
Рейтинг: 0 / 0
ASP.NET 4: доступ к ресурсам не авторизированным пользователям
    #37710360
bazile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sp, .net может запретить доступ только к тем ресурсам которые отдаются через него. Так что это не вопрос версии фреймворка, а правильной настройки IIS.
...
Рейтинг: 0 / 0
ASP.NET 4: доступ к ресурсам не авторизированным пользователям
    #37710368
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bazile,

настройки я привел в посте?
раньше вроде этого было достаточно - а сейчас нет! где тут собака порылась?
...
Рейтинг: 0 / 0
ASP.NET 4: доступ к ресурсам не авторизированным пользователям
    #37710419
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
При чём здесь вэбконфиг? Сервер (ИИС) в него даже не заглядывает, когда выдаёт хтмл-страницы. А в настройках своего ИИСа Вы можете вообще запрет на все htm-файлы сделать, только смысла в этом - никакого (разве что с хендлером, см. ниже).
В конец-концов, сделайте из своих статических страничек aspx-страницы, или отдавайте их хендлером, можете вообще их в ресурсы сунуть. Короче, вариантов очень много, но так как Вы делаете, запретить отдавать статические страницы - не получится.
ПС. Если страниц очень много - отдавайте их хендлером, типа http: //мой_сайт/pages.ashx?page=page1.html.
...
Рейтинг: 0 / 0
ASP.NET 4: доступ к ресурсам не авторизированным пользователям
    #37710543
bazile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spнастройки я привел в посте?
раньше вроде этого было достаточно - а сейчас нет! где тут собака порылась?
Тебе нужно настроить IIS так чтобы запросы к статическому контенту отбрабатывались ASP.NET. По умолчанию это выключено. Прочитай статье How to Take Advantage of the IIS 7.0 Integrated Pipeline , в ней приводится решение с объяснением.

ShSergeПри чём здесь вэбконфиг? Сервер (ИИС) в него даже не заглядывает, когда выдаёт хтмл-страницы.
Не совсем так. Настройки из элемента system.webServer он будет брать в расчет для всех файлов.
...
Рейтинг: 0 / 0
ASP.NET 4: доступ к ресурсам не авторизированным пользователям
    #37710775
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bazile,

Спасибо, помогло!
Но как-то через чур мудрено они придумали все это:

Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
Taking Advantage of the Integrated Pipeline

The default configuration for all managed modules shipped with IIS 7.0, including the Forms Authentication and URL Authorization modules, uses a precondition so that these modules only apply to content that an  (ASP.NET) handler manages. This is done for backwards compatibility reasons.
By removing the precondition, we make the desired managed module execute for all requests to the application, regardless of content. This is necessary in order to protect our static files, and any other application content with Forms-based authentication.
To do this, open the application's web.config file located in the %systemdrive%\inetpub\wwwroot directory, and paste the following lines immediately below the first <configuration> element:
<system.webServer> 
<modules> 
    <remove name="FormsAuthenticationModule" />    
   <add name="FormsAuthenticationModule" type="System.Web.Security.FormsAuthenticationModule" />    
    <remove name="UrlAuthorization" />    
    <add name="UrlAuthorization" type="System.Web.Security.UrlAuthorizationModule" />    
    <remove name="DefaultAuthentication" />    
    <add name="DefaultAuthentication" type="System.Web.Security.DefaultAuthenticationModule" />    
</modules> 
</system.webServer> 
  
This configuration re-adds the module elements without the precondition, enabling them to execute for all requests to the application.
...
Рейтинг: 0 / 0
ASP.NET 4: доступ к ресурсам не авторизированным пользователям
    #37713278
Фотография SanSYS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sp,

кстати говоря, на крайний случай можно вручную обрабатывать эти типы файлов, т.е. регистрируем в конфиге что-то вроде этого:

Код: xml
1.
<add name="MyHtmHandler" path="*.htm" verb="GET" type="Handlers.MyHtmHandler" /> 


а в хендлере уже делаем нужные проверки
...
Рейтинг: 0 / 0
ASP.NET 4: доступ к ресурсам не авторизированным пользователям
    #37713345
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SanSYSsp,

кстати говоря, на крайний случай можно вручную обрабатывать эти типы файлов, т.е. регистрируем в конфиге что-то вроде этого:

Код: xml
1.
<add name="MyHtmHandler" path="*.htm" verb="GET" type="Handlers.MyHtmHandler" /> 


а в хендлере уже делаем нужные проверки

это понятно - хочется чтоб все из коробки работало без дополнительного кодирования )
...
Рейтинг: 0 / 0
ASP.NET 4: доступ к ресурсам не авторизированным пользователям
    #37714595
Фотография SanSYS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spSanSYSsp,

кстати говоря, на крайний случай можно вручную обрабатывать эти типы файлов, т.е. регистрируем в конфиге что-то вроде этого:

Код: xml
1.
<add name="MyHtmHandler" path="*.htm" verb="GET" type="Handlers.MyHtmHandler" /> 


а в хендлере уже делаем нужные проверки

это понятно - хочется чтоб все из коробки работало без дополнительного кодирования )

потому и крайний случай
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / ASP.NET 4: доступ к ресурсам не авторизированным пользователям
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]