1

カスタム コンテンツ タイプに添付されたファイルがあり、プライベート ダウンロードになるようにフィールドが設定されています。フィールド権限も持っているので、サインアップした登録ユーザー (自動ロール割り当ても) のみがノード ページのダウンロード リンクを表示できます。これは正常に機能し、管理者と特定の役割のユーザーはダウンロードするファイルを見ることができますが、私の問題は、誰でもリンクのコピーを取得できることです。つまり、http ://develop.ment/system/files/test/SuperSecret.txt問題なくファイルをダウンロードしたり、登録する必要はありません。

drupalノードからログインしたユーザーを介して行われない限り、アクセス/ダウンロード中のファイルを停止するために、アクセスを制限するモジュール、または.htaccessルールさえ必要ですか?

このような制限を drupal で利用できるようにするのはばかげているように思えますが、設定した権限に関係なく、誰でも簡単にファイルをダウンロードできます。

みんな、何が足りないの?.htaccess ハックがこれを修正するように思えますが、どのように、またはどこから始めればよいかわかりません。ああ、ファイルは /var/www/vhosts/develop.ment/private に保存されます。ドキュメント ルートは実際には development.ment/httpdocs ですが、これは問題に影響しますか? 個人的なダウンロードを DocRoot の外部に保存する方が安全に思えます。

4

2 に答える 2

0

ダウンロードには imce モジュールを使用する必要があります。これにより、プライベート ファイル (つまり、自動生成された .htaccess によってアクセスが制限されているファイル) を apache からではなく drupal 自体で提供できます。

次に、ロールごとに IMCE を構成して、アクセス権を定義します。

于 2011-04-20T12:36:46.237 に答える
0

Drupal 7.1 と 7.2 で修正された重大なセキュリティ バグが実際にありました。SA-CORE-2011-001 - Drupal コア - 複数の脆弱性 のファイル モジュールでのアクセス バイパスのセクションを参照してください。

私の Drupal インストールは 7.2 です。Content Accessモジュールを使用して、個々のノードへのアクセスを制御しています。認証されたユーザーのみがノードを表示できるようにアクセス制御を設定すると、添付されたプライベート ファイル (私の場合は画像フィールド) も認証されたユーザーにのみ表示されます。匿名ユーザーは、 http://example.com/system/files/some-image.jpgを直接指定してファイルにアクセスすることはできません。誰でもノードを表示できるようにすると、その URL に再び直接アクセスできるようになります。

Content AccessではなくField Permissionsを使用しています。私はそのケースをテストしていませんが、7.1 または 7.2 にアップグレードして、その後動作するかどうかを確認できます。

于 2011-06-17T04:43:47.930 に答える