2009-08-05 19 views
0

私はファイルを扱うアプリケーション(電子商取引のダウンロード可能なコンテンツ)で作業しています。コンテンツはサーバー上のWindowsフォルダ共有に保存されています。使用がそれを要求したときのコンテンツ。基本的にDownloadFile.aspxがありますか?fileId = XXXXWindowsフォルダのセキュリティWebサイトを共有するときのセキュリティ

とにかく、フォルダのセキュリティ権が問題になります。私はページに移動するたびに、IISからローカルコンピュータ上の権限を求めるログイン/パスワードのプロンプトが表示されます。

私はRead to EVERYONEを加えてASPNETユーザーに追加しようとしましたが、私はそれをASPNETユーザーに追加しようとしました。運がない。私はまだプロンプトを得る。

提案がありますか?

EDIT:明快さのビットを追加します。今すぐセキュリティポップアップを取得しているASPXファイルは、ネットワーク共有のUNCでFile.Existsを呼び出すだけです。この特定のスクリプトはダウンロード用のファイルを提供していませんが(まだ)、それはまだ失敗します。

P.S.私は、これがこれらのファイルを提供する最良の方法ではないかもしれないと認識しています。私は自分のサイトを別のWebホストに移行しているクライアントの仕事をしている請負業者です。私たちはうまくいけばこれを書き直す前にそれを働かせる必要があります。最小限の影響が重要です。

+0

他にもこの問題を発見した人の質問には関係ありません。 web.configのスクリプトにカスタムセキュリティがありましたが、web.configが間違っていました。フォームの認証がありましたがXMLが正しくありませんでした(必要なモード= "フォーム") – JoshReedSchramm

答えて

0

ファイルが異なる共有にある場合は、まずファイルを実際に送信するためにResponse.WriteFile()メソッドを使用する必要があります。

アクセス許可の観点からは、ASPNET(またはWIN 2003/Vista/Win 2008上のNETWORK SERVICE)を必要に応じて読み書きする権限が必要です。

+0

私はASPNETを使用していましたが、NETWORK SERVICEが必要でした。他にも問題がありましたが、これが最も役立ちました。 – JoshReedSchramm

0

"Everyone"グループは慎重に使用してください。 IISの仮想ディレクトリのセキュリティアクセス許可を確認します。 「匿名」のみである必要があります。 thisを試してから、設定がhereであることを確認してサーバーを保護します。

0

コンテンツに直接リンクしている場合、ASPNETユーザーは関与しません。そのユーザーは、IISでASPxファイルを実行するためにのみ使用されます。ウェブ上のユーザーがファイルに直接アクセスできるようにするには、アカウント "IUSR_ computerNameがファイルにアクセスできることを確認してください。

関連する問題