Namazu-win32-users-ja(旧)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Permission denied で次に進めません
やまちかです。
morimoto@xxxxxxxxxxxxさんは
<LEEAJHIFNIMECCJBMBDLEEFLCAAA.morimoto@xxxxxxxxxxxx>で書きました:
>各種解説では、ScriptsのIISでの仮想ディレクトリの設定では、
>読み取りにチェックは入れないとなっています。
仮想ディレクトリとは、IISの中だけで通用する概念です。
つまり、Webブラウザ(クライアント)に対するアクセス権です。
>それは、理解できるのですが、では、InetpubにあるSCRIPTS,SEARCHのディレクトリの
>アクセス権は
>どうなるのでしょうか。そして、中のファイルも含めて。
>自分の今の状況は、両方ともEveryone IUSRともに読み取りと実行で設定されていま
>す。
これはNTFSファイルシステムのアクセス権です。私は明確に区別する
ために、エクスプローラにあわせて「フォルダ」と呼んでいます。
>実工でもやってみましたが、同じ状況で素人話で申し訳ないですが、
>検索をかけると、どうしても、namazu.cgi.exe本体をダウンロードしようとするわけ
>は、
>どういうことなのでしょうか。
IISがクライアントからの要求を受けてnamazu.cgi.exeを実行するには、
1. Scripts仮想ディレクトリにnamazu.cgi.exeがあることを確認する。
この時点で「フォルダに対する読み取り」が発生します。
読み取るのはIISに割り当てたユーザ「IUSR_サーバ名」です。
2. namazu.cgi.exeファイルをメモリに読み込み、実行する。
実行するのもIISです。
実行時のユーザは「IUSR_サーバ名」です。
3. 検索結果をHTMLとしてWebブラウザに返す。
IIS単独で行います。ユーザは通常「SYSTEM」です。
となります(ユーザ認証をしない場合)。
したがって、Scriptsフォルダには最低限「読み取り」の権限が必要です。
ただし、メモリに読み込んだexeファイルの実行は、IISが担当します。
読み込んだ後で、そのexeファイルを実行するか、exeファイルそのものを
Webブラウザに返すかは、Scripts仮想ディレクトリに「読み取り」の権限が
あるか、「アプリケーションの設定」があるかで決まります。これらは
インターネットサービスマネージャでの設定次第です。
フォルダ(NTFSファイルシステム)へのアクセス権は、ユーザ認証を行わ
ないIISでは「IUSR_サーバ名」のユーザ権限とみなされます。
NTFSファイルシステムのデフォルト設定では、「(NTから見て)すべての
認証済みユーザ」の意味で「Everyone」が設定されています。これには
「IUSR_サーバ名」のユーザが含まれます。
>また、ダウンロードしない場合は、ほぼアクション自体が停止しているようで、
>ブラウザーへの表示にいたりません。
IISの仮想ディレクトリの権限が適切であっても、フォルダに「読み取り」
の権限がなければ、exeファイルをメモリにロードすることすら不可能です
から、実行はできません。「アクション停止=exeを実行できない」と考え
て、ほぼ差し支えないでしょう。
--
Keiichi Yamachika (http://www.mountain.jp/)
物欲!衝動メーリングリスト&勉強会メーリングリスト