2016-09-19 56 views
0

我需要通過用戶列表,並確定他們是否處於鎖定狀態,我可以做到這一點很好,但我的問題是,我不知道inspec將如何讓我忽略列表中不存在於操作系統上的用戶。我嘗試了一些使用only_if(包括下面)的方法,但沒有運氣。廚師+ InSpec使用only_if爲用戶

這裏是我下面的代碼:

system_accounts = [ 
'user1' 
'user2' 
'user3' 

system_accounts.each do |name| 
    only_if command("getent passwd #{name}") do 
    describe command("passwd -S #{name}").stdout.split[1] do 
    it { should match /LK|NP|NL/ } 
    end 
    end 
    end 
end 

回答

0

您只能使用only_if和類似的API從control塊內。您可能首先需要使用user InSpec資源,但也可以查看users API。