Как ограничить прямой доступ к видеофайлу в asp.net MVC - PullRequest
0 голосов
/ 23 сентября 2018

В моем проекте у меня есть папка для загрузки, куда пользователь загружает видеофайл, а затем просматривает его из этой папки через HTML5-проигрыватель видео.Но если подлинный пользователь просматривает www.mysite.com/Upload/videofilename.mp4, то видео также будет отображаться.Я хочу ограничить прямой доступ к папке видео.Есть ли способ?

Ответы [ 2 ]

0 голосов
/ 24 сентября 2018

Вы должны установить hiddenSegments в своей веб-конфигурации для папки Upload .Вы также можете установить его через IIS. Ваш сайт> Фильтрация запросов> Скрытые сегменты .После установки скрытых сегментов никто не сможет получить доступ к файлу с помощью URL.

Webconfig

 <security>
      <requestFiltering>
        <hiddenSegments>
          <add segment="Upload"/>
        </hiddenSegments>
      </requestFiltering>
    </security>

Просмотр страницы

<video width="320" height="240" controls>    
    <source src="@Url.Action("GetMedia","Home")" type="video/mp4" />
</video>

Код

    [Authorize]
    public ActionResult GetMedia()
    {
        string fn = Server.MapPath("~/Upload/1.mp4");
        var memoryStream = new MemoryStream(System.IO.File.ReadAllBytes(fn));
        return new FileStreamResult(memoryStream, MimeMapping.GetMimeMapping(System.IO.Path.GetFileName(fn)));
    }
0 голосов
/ 24 сентября 2018

У вас есть две опции:

Опция 1:

Используйте инструкцию IgnoreRoute в методе RegisterRoute вашего класса RouteConfig.Пример:

public RouteConfig
{
    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("yourRoute");
    }
}

Ссылка: https://www.c -sharpcorner.com / UploadFile / f82e9a / ignore-route-in-mvc /

Вариант 2:

Запретить доступ всем пользователям в вашей сети Asp.NET.Config.Пример:

<location path="yourPath">
     <system.web>
        <authorization>
           <deny users="*"/>
        </authorization>
     </system.web>
 </location>

Ссылка: Asp.net MVC Routing - предотвращение маршрута к XML-файлу с ограничением

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...