Вы должны установить 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)));
}