Apache/WebDAV を使用して認証されたユーザーとして読み取り/書き込みを行うにはどうすればよいですか?
-
02-07-2019 - |
質問
Apache2 で DAV をセットアップしましたが、うまく機能します。問題は、すべての読み取り/書き込み操作が Apache ユーザーの資格情報を使用して行われるということです。代わりに、HTTP 認証されたユーザーの資格情報を使用したいと考えています。「john」として認証する場合、すべての読み取りおよび書き込み操作でシステム ユーザー john の資格情報 (/etc/passwd から) を使用する必要があります。 実行実行 何も実行していないのでやりすぎのように思えますが、間違っている可能性があります...
現在の構成は次のとおりです。
<VirtualHost *:80>
DocumentRoot /var/www/webdav
ServerName webdav.mydomain.com
ServerAdmin webmaster@mydomain.com
<Location "/">
DAV On
AuthType Basic
AuthName "WebDAV Restricted"
AuthUserFile /etc/apache2/extra/webdav-passwords
require valid-user
Options +Indexes
</Location>
DAVLockDB /var/lib/dav/lockdb
ErrorLog /var/log/apache2/webdav-error.log
TransferLog /var/log/apache2/webdav-access.log
</VirtualHost>
解決
私たちはダベンポートを使用しています(http://davenport.sourceforge.net/) 長年にわたり、WebDAV 経由で Windows/Samba 共有へのアクセスを提供してきました。Samba/Windows はこの種のことをかなり制御できますが、Davenport は VPN なしで SSL 経由で Web 上でそれを使用できるようにするだけです。
他のヒント
私の知る限り、答えは次のとおりです。あなたはしない。
長い答え:適切な MPM を使用してこのような機能を実装することは可能です。 様々な 試み しかし、それらはあまり積極的にサポートされていないようで、少なくともメインラインの Apache コードベースには含まれていません。
閲覧者:
Q.peruser は運用環境で使用する準備ができていますか?
A.一般的には、いいえ。
子供一人当たり:
このモジュールは機能していません。このモジュールの開発は完了しておらず、現在はアクティブではありません。修正を手伝ってくれるプログラマでない限り、perchild は使用しないでください。
それは本当に残念です。私がこれまでに見た WebDav のほとんどの使用法では、所有権情報がアプリケーション層、つまりデータベースに保存されます。ファイル共有を行う場合のコンセンサスは、代わりに Samba を使用することです。それは本当の解決策ではないことは認めます。