2017-08-19 2 views
0

Schrieb einen inspec-Test für Gruppen. Die Gruppen sind dem Benutzer pi on bash zugeordnet, aber ich habe ein leeres Array von inspec-test bekommen.Benutzergruppen wurden leer Array

Hier ist die bash Ausgabe:

id 
uid=1000(pi) gid=1000(pi) Gruppen=1000(pi),4(adm),20(dialout),27(sudo),33(www-data),44(video),100(users),998(docker),999(gpio) 

Als ich betreibe meine INSPEC ich das bekam:

× users-1.0: Ensure users are known (1 failed) 
    ✔ User pi should exist 
    ✔ User pi group should eq "pi" 
    × User pi groups should eq ["pi", "sudo"] 

    expected: ["pi", "sudo"] 
      got: [] 

    (compared using ==) 

    ✔ User pi home should eq "/home/pi" 

In meiner rb-Datei ich dies schrieb:

users = { 
    :pi => { 
     :uname => 'pi', 
     :gname => 'pi', 
     :groups => [ 
      'adm', 
      'dialout', 
      'sudo', 
      'www-data', 
      'video', 
      'users', 
      'docker', 
      'gpio' 
     ], 
     :home => '/home/pi' 
    } 
} 
... 
control 'users-1.0' do 
    impact 1.0 
    title 'Ensure users are known' 
    users.each do |key, value| 
     describe user(value[:uname]) do 
      it { should exist } 
      its('group') { should eq "#{value[:gname]}" } 
      its('groups') { should eq [ 'pi', 'sudo' ] } 
      its('home') { should eq "#{value[:home]}" } 
      #its('shell') { should eq '/bin/bash' } 
      #its('mindays') { should eq 0 } 
      #its('maxdays') { should eq 90 } 
      #its('warndays') { should eq 8 } 
     end 
    end 
end 

ich erwartet um ein Array von Gruppen von Benutzer pi zu sehen.

Ich weiß nicht, wie man mit der Suche beginnt. Ich bin ein Inspec Newbee.

Dank

Antwort

0

Es ist a known InSpec bug. InSpect erwartet id (und jeden anderen Befehl) Ausgabe mit LC_MESSAGES=C oder einem anderen US-Gebietsschema.

+0

Danke diese Regeln :-) – kraeml