2016-05-12 51 views
1

我需要確保一個給定的用戶能夠讀取一個給定的文件。當然,我使用「acl」模塊(使用setfacl)來給予用戶的讀取權限。這很容易。但我還需要確保用戶可以「執行」文件路徑樹上的所有目錄。例如: read /var/lib/secured/directory/file eXecute /var/lib/secured/directory eXecute /var/lib/secured eXecute /var/lib eXecute /var eXecute/ 當然,我正在寫一個角色,它不知道路徑有多少元素,所以我需要在Ansible中有一個動態循環。但我不知道如何實現這一點。 我會感激任何想法。如何在Ansible的所有父母,祖先的給定路徑上設置acl?

回答

0

您是否需要使用ACL?如果你需要做的就是給執行權限上的目錄結構的用戶,我首先想到使用chmod - 或Ansible的file module

- file: 
    path: /var/lib/secured/directory 
    state: directory 
    owner: root 
    group: root 
    mode: u=rwx,g=rwx,o=rx 
    recurse: yes 

或相似。

+0

我需要使用ACL:這些文件由其他人擁有,高度安全,我無法將其訪問給所有人。我需要選擇性地將其提供給某些用戶/服務。如果我不給X訪問所有人的目錄,我會是最開心的。 – zarzyk

+0

您可以將所有相關用戶放入組中嗎? –

+0

不,不幸的。我想要訪問的文件由某人/其他人管理,並且我被禁止更改其所有者/組。但是請注意,這個問題不是關於ACL,而是關於一般事情:「如何在樹上應用變更?」它可能是通過ACL,或將組更改爲擁有者並給予組X權限。您的解決方案只給予文件的X權限,而不是文件路徑上的目錄。 – zarzyk

相關問題