diff options
author | John Keiser <jkeiser@opscode.com> | 2014-07-23 21:01:18 -0600 |
---|---|---|
committer | John Keiser <jkeiser@opscode.com> | 2014-08-22 09:20:47 -0700 |
commit | 914c8274684102c730e941a76a03daa3bf6858cf (patch) | |
tree | 00ab0b1bc165e237f0d44cb214ff87f2dd1ad87e /lib | |
parent | dd2f8195ca05a4e18b91584692ab9050423de85e (diff) | |
download | chef-zero-914c8274684102c730e941a76a03daa3bf6858cf.tar.gz |
Make the requestor the one who "created" the object.
No sense making ACLs for it all the time.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/chef_zero/data_normalizer.rb | 25 | ||||
-rw-r--r-- | lib/chef_zero/endpoints/acl_endpoint.rb | 2 | ||||
-rw-r--r-- | lib/chef_zero/endpoints/acls_endpoint.rb | 2 |
3 files changed, 4 insertions, 25 deletions
diff --git a/lib/chef_zero/data_normalizer.rb b/lib/chef_zero/data_normalizer.rb index c178240..2df7f46 100644 --- a/lib/chef_zero/data_normalizer.rb +++ b/lib/chef_zero/data_normalizer.rb @@ -3,10 +3,10 @@ require 'chef_zero/rest_base' module ChefZero class DataNormalizer - def self.normalize_acls(acls) + def self.normalize_acls(acls, requestor) %w(create read update delete grant).each do |perm| acls[perm] ||= {} - acls[perm]['actors'] ||= [] + acls[perm]['actors'] ||= [ requestor ] acls[perm]['groups'] ||= [ 'admins' ] end acls @@ -186,26 +186,5 @@ module ChefZero end }.uniq end - - private - - def self.get_org_default_acls(path, perm) - name_lists = DEFAULT_ACL_GROUPS[path[2]] - if name_lists - name_lists.each do |names, perm_lists| - if names.include?(path[3]) - perm_lists.each do |perms, perm_groups| - if perms.include?(perm) - return { 'groups' => perm_groups } - end - end - end - end - end - if path[2] == 'organization' && perm == 'read' - return { 'groups' => [ 'admins', 'users' ] } - end - {} - end end end diff --git a/lib/chef_zero/endpoints/acl_endpoint.rb b/lib/chef_zero/endpoints/acl_endpoint.rb index 300631c..4e3fd97 100644 --- a/lib/chef_zero/endpoints/acl_endpoint.rb +++ b/lib/chef_zero/endpoints/acl_endpoint.rb @@ -25,7 +25,7 @@ module ChefZero def get(request) path, perm = validate_request(request) - acls = DataNormalizer.normalize_acls(get_acls(request, path)) + acls = DataNormalizer.normalize_acls(get_acls(request, path), request.requestor) json_response(200, { perm => acls[perm] }) end diff --git a/lib/chef_zero/endpoints/acls_endpoint.rb b/lib/chef_zero/endpoints/acls_endpoint.rb index 6a96b04..16248c2 100644 --- a/lib/chef_zero/endpoints/acls_endpoint.rb +++ b/lib/chef_zero/endpoints/acls_endpoint.rb @@ -13,7 +13,7 @@ module ChefZero class AclsEndpoint < AclBase def get(request) path = request.rest_path[0..-2] # Strip off _acl - acls = DataNormalizer.normalize_acls(get_acls(request, path)) + acls = DataNormalizer.normalize_acls(get_acls(request, path), request.requestor) json_response(200, acls) end end |