我为客户提供了pdf文件中记录的历史数据。现在我正在开发一个Web平台(在Drupal中),客户端应该能够访问这些数据。问题是我不希望这些文件可供除信息所属用户以外的任何人使用。
我的问题是,是否可以向Drupal中的特定用户授予对某些文件或文件夹的访问权限。因为替代方案是为每个用户创建一个不实用的角色。
答案 0 :(得分:0)
查看Alex的答案:https://stackoverflow.com/a/9850031/974809
它与Drupal的文件文档有关:https://www.drupal.org/documentation/modules/file
具体而言,该部分" 管理文件位置和访问权限"这解释了如何创建私有文件。
基本上,你可以这样做:
答案 1 :(得分:0)
最后,我找到了一个涵盖我所有需求的解决方案。 我为我想要访问的页面创建了一个自定义页面模板(例如,节点 - 4.tpl.php),它捕获用户名并用它生成一个cookie:
global $user;
$username = $user->name;
$cookie_name = 'cookie_name';//
$cookie_value = $username;//
setcookie($cookie_name, $cookie_value, time() + (3600), "/");
然后我在包含此代码的每个用户文件夹中创建一个.htaccess文件:
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_COOKIE} !cookiename=username [NC]
RewriteRule .* http://alternativepath/ [L]
因此,只有用户名的用户就像我在htaccess中要求的用户名才能访问该文件夹。在我的情况下,我要求另一个字段,而不是用户名,但这应该足够作为一个简单的例子。