在Chef中,管理用户在添加它们时是直截了当的,但我不确定如何在删除它们时有效地管理代码库。假设我有一个user 'jane' do
action :create
end
资源:
user 'jane' do
action :remove
end
这将创建Jane的用户,但如果Jane离开公司怎么办?如果我理解资源如何工作,我不能只从配方中删除这些行 - 我必须将块更改为:
node['users'].each do |name|
user name do
action :create
end
end
如果我需要管理更多用户,这是否可持续?看起来我必须记住进入并更改此块,然后进入并在所有相关节点上使用配方后删除此代码,因为一旦用户离开了代码什么也没做。
更重要的是,如果我有这样的循环:
{{1}}
我必须将各个用户的名称从属性中分离出来,并将自己的块添加到配方中以删除它们,然后记住在所有节点收敛后删除该块。
我是否正确理解了流程,还是有更好的方法来管理用户资源?
答案 0 :(得分:3)
不,这最终不可持续。任何足以担心用户流失的地方都应该已经切换到LDAP以进行集中用户管理。这太糟糕了,但它基本上仍然是我们所拥有的最好的。通常,这也与Active Directory服务器一起用于其他事情,并且可以用于Unix用户管理。