У меня есть подпапка на моей веб-странице с pdf-файлами.
Доступ к ним можно получить только в том случае, если пользователь вошел в систему, информация для входа доступна через Microsoft CRM, а переменная хранится в кеше.
Код написано на vb.net, веб-сервер - IIS7.
Как я могу запретить доступ к этой папке для незарегистрированных пользователей? Я искал решение, но не нашел того, что работает с CRM-логином.
Я также изучал возможность переопределения URL-адресов, чтобы пользователь не мог видеть прямой путь к файлу (www.abc.com/download/test.pdf), а вместо этого видел бы только недисциплинарный URL-адрес (www.abc .com / pdf). Но это тоже не сработало.
Так что я открыт для практически любых предложений, но я не могу реплицировать всю пользовательскую базу или хочу настроить базу данных sql только для этой цели.
Ответ Николая работает с этими дополнениями:
Использование fs как нового FileStream ("C: \ www \ pdf \ abc.pdf", FileMode.Open)
Dim docSize As Long = fs.Length
Dim docStream (CInt (docSize) ) В виде байта
fs.Read (docStream, 0, CInt (docSize))
Response.ClearContent ()
Response.ContentType = "application / pdf"
Response.AddHeader (" Content-Disposition "," inline; filename = / _ data / checkliste-4-2013-2.pdf ")
Response.AddHeader (" Content-Length ", docSize.ToString ())
Ответ. BinaryWrite (docStream)
Response.End ()
Конец использования