1

IIS6 を搭載した Windows 2003 サーバーで perl を使用しています。ユーザーがアップロードした機密ファイルにアクセスする必要があるスクリプトを作成しました。ファイルは cgi-bin のフォルダーに保存されます。ただし、Web リンク経由でファイルにアクセスできるようにしたくありません。そのため、IIS でこの特定のフォルダーに対する「読み取りアクセス」が無効になっています。

Web リンク経由でファイルにアクセスすることはできませんが、ユーザーがアップロードしたドキュメントを開くことができるようにする必要があります。

ユーザーのログイン (ユーザー名とパスワード) は、csv ファイルの cgi-bin に保存されます。

データベースを検索しましたが、この状況に完全に一致するものは見つかりませんでした。

どんなアイデアでも大歓迎です!

4

1 に答える 1

0

私があなたの質問を誤解していない限り、サービス レベルではなく、アプリケーション レベルでユーザー アクセスを制限しようとしています。

Web アプリのユーザーがアップロードしたファイルにアクセスできるようにする場合は、(Web サーバーによる) エッジではなく、アプリケーションで承認チェックを行う必要があります。

そのため、アップロードされたすべてのファイルには所有者 (データベース レコードまたは所有者ごとのディレクトリ) がタグ付けされ、ファイルへのアクセスは、認証されたユーザーをファイル所有者と照合する小さなコードによって制限されます。

ファイルが存在するディレクトリは、Perl が実行されるユーザーであるため、Web サーバー ユーザーが読み書きできますが、通常の HTTP GET アクセスに使用できるように IIS に構成されていません。HTML ドキュメント ルートの下にも、CGI-BIN ディレクトリの下にもありません。完全に別のディレクトリです。

于 2012-09-19T15:55:20.407 に答える