summaryrefslogtreecommitdiff
path: root/lib/chef/provider/group
diff options
context:
space:
mode:
authoradamedx <adamed@opscode.com>2013-12-14 12:33:58 -0800
committeradamedx <adamed@opscode.com>2014-01-13 12:32:39 -0800
commit497c6f105d01b54498d89ee3161f4a83112a53b2 (patch)
tree429e523df81642aaed70e2a028157fb95182218e /lib/chef/provider/group
parentd341f66fc20f4293712219ce1c5290d090dd365f (diff)
downloadchef-497c6f105d01b54498d89ee3161f4a83112a53b2.tar.gz
CHEF-3012: Use SID instead of username for group membership checks
Diffstat (limited to 'lib/chef/provider/group')
-rw-r--r--lib/chef/provider/group/windows.rb4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/chef/provider/group/windows.rb b/lib/chef/provider/group/windows.rb
index cb0ab76927..de12fb4a7f 100644
--- a/lib/chef/provider/group/windows.rb
+++ b/lib/chef/provider/group/windows.rb
@@ -59,7 +59,9 @@ class Chef
if @new_resource.append
members_to_be_added = [ ]
@new_resource.members.each do |member|
- members_to_be_added << member if !@current_resource.members.include?(member)
+ member = "#{ENV['COMPUTERNAME']}\\#{member}" if ! member.include?("\\")
+ member_sid = Chef::ReservedNames::Win32::Security.lookup_account_name(member)[1]
+ members_to_be_added << member if !@current_resource.members.include?(member_sid.to_s)
end
# local_add_members will raise ERROR_MEMBER_IN_ALIAS if a