Web ページに pdf ファイルを含むサブフォルダーがあります。
ユーザーがログインしていて、Microsoft CRM を介してログイン情報にアクセスし、変数がキャッシュに保存されている場合にのみアクセスする必要があります。
コードは vb.net で記述され、Web サーバーは IIS7 です。
ログインしていないユーザーがこのフォルダにアクセスできないようにするにはどうすればよいですか? 解決策を探していましたが、CRM ログインで機能する解決策が見つかりませんでした。
また、ユーザーがファイルへの直接パス (www.abc.com/download/test.pdf) を見ることができないように、URL の書き換えも検討しており、代わりに、わかりやすい URL (www.abc) のみが表示されます。 .com/pdf)。しかし、それも機能していません。
したがって、私はほとんどすべての提案を受け入れますが、ユーザーベース全体を複製することはできません。または、この目的のためだけに sql データベースをセットアップすることもできません。
ニコラスの回答は、次の追加で機能します。
fs As New FileStream("C:\www\pdf\abc.pdf", FileMode.Open)
Dim docSize As Long = fs.Length
Dim docStream(CInt(docSize)) As Byte
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())
Response.BinaryWrite(docStream)
Response.End()
End Using