Как запретить пользователю загружать что-либо на мой сайт, если он не зарегистрирован?

#asp.net

#asp.net

Вопрос:

Я делаю проект на ASP.NET и я хочу, чтобы, если пользователь не зарегистрирован на моем сайте или не вошел в систему, он / она не сможет загрузить. Если я использую идентификатор сеанса, я должен передавать его по каждой ссылке и странице, есть ли простой способ сделать это?

Комментарии:

1. Используйте встроенную систему аутентификации. Требуется регистрация для просмотра содержимого веб-сайта.

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

3. @Gibron да, незарегистрированный пользователь может видеть ссылку для скачивания.

Ответ №1:

Если вы используете ASP.NET стандартная система аутентификации, вы можете просто добавить подобный тег к своему <system.web> элементу в web.config:

 <authorization>
  <deny users="?" />
</authorization>
  

Ответ №2:

Ответ StriplingWarriors будет работать для всех пользователей, не прошедших проверку подлинности, но если вы пытаетесь запретить определенным пользователям делать / просматривать определенные вещи на сайте (и предполагаете, что вы используете ASP.NET API членства для управления пользователями) вы можете просто проверить пользователя.Идентификация.IsAuthenticated

Комментарии:

1. вы можете использовать решение @StriplingWarrior на любом уровне вашего сайта. Например, если вы не хотите, чтобы кто-то загружал какие-либо изображения или zip-файлы, вы можете просто создать файл web.config в своей папке «активы» и использовать authorization конфигурацию.

2. Чейз правильный. Вы также можете создать <location> элемент в своем основном web.config, если хотите сохранить всю конфигурацию в одном файле.

3. Согласен с Chase и StriplingWarrior, вы должны поместить любые ресурсы, которые хотите защитить, в определенную папку и заблокировать ее с помощью конфигурации авторизации. Если у вас есть ссылки на эти файлы как часть вашего общедоступного сайта, вы можете использовать свойство IsAuthenticated, чтобы либо скрыть эти ссылки от пользователей, не прошедших проверку подлинности, либо отобразить сообщение с просьбой войти в систему.