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

У меня есть страница в приложении ASP.NET (его Mvc на самом деле, но не важный), и я хотел бы только позволить соединения с этой страницей от локальной машины. Я хотел бы сделать что-то вроде этого в Web.config:


  
    
      
    
  
  

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

19
задан Keyur Potdar 28 March 2018 в 19:37
поделиться

3 ответа

Это не то, что вы просили, но вы можете указать пользователей из локального компьютера. Я не могу себе представить, что это практично, если только вы не хотите авторизовать небольшое количество пользователей.

<location path="resources">
  <system.web>
    <authorization>
      <allow users="LOCALMACHINENAME\UsernameOfTrustedUser"/>
      <deny users="*"/>
    </authorization>
  </system.web>
</location>
4
ответ дан 30 November 2019 в 03:33
поделиться

Вы можете создать свой собственный раздел конфигурации, который будет частью вашего web.config, а затем использовать этот параметр для управления поведением в global.asax Session_Start.

0
ответ дан 30 November 2019 в 03:33
поделиться
  1. Придумайте не-DNS псевдоним для машины, т.е. "PrivateHostName".
  2. Установите это значение в локальном файле hosts, чтобы оно указывало на 127.0.0.1.
  3. Установите (IIS) заголовок хоста для веб-сайта таким образом, чтобы он отвечал на запросы только по адресу "PrivateHostName".
  4. Для всех локальных вызовов используйте имя частного хоста.

Удаленные клиенты не смогут определить имя хоста.

Вы можете защитить его, используя выделенный ip-адрес, привязанный к виртуальному сетевому адаптеру, который фактически не будет отвечать на внешние запросы.

2
ответ дан 30 November 2019 в 03:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: