summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/chef_zero/endpoints/acl_base.rb5
-rw-r--r--lib/chef_zero/endpoints/data_bag_endpoint.rb3
2 files changed, 4 insertions, 4 deletions
diff --git a/lib/chef_zero/endpoints/acl_base.rb b/lib/chef_zero/endpoints/acl_base.rb
index ed30bfa..ca85590 100644
--- a/lib/chef_zero/endpoints/acl_base.rb
+++ b/lib/chef_zero/endpoints/acl_base.rb
@@ -16,7 +16,7 @@ module ChefZero
%w(create read update delete grant).each do |perm|
acls[perm] ||= {}
acls[perm]['actors'] ||= begin
- # The owners of the org and of the server (the superusers) have rights too
+ # owners = the superusers (and special case for clients owning themselves)
owners ||= get_owners(path)
container_acls ||= get_container_acls(request, path)
if container_acls
@@ -41,9 +41,8 @@ module ChefZero
private
def get_owners(path)
- # We merge owners into every acl, because we're awesome like that.
# The objects that were created with the org itself, and containers for
- # some reason, have the peculiar property of missing pivotal from their acls.
+ # some reason, have the peculiar property of missing superusers from their acls.
if is_created_with_org?(path, false) || path[0] == 'organizations' && path[2] == 'containers'
owners = []
else
diff --git a/lib/chef_zero/endpoints/data_bag_endpoint.rb b/lib/chef_zero/endpoints/data_bag_endpoint.rb
index 9b9d5e5..ce7e263 100644
--- a/lib/chef_zero/endpoints/data_bag_endpoint.rb
+++ b/lib/chef_zero/endpoints/data_bag_endpoint.rb
@@ -12,7 +12,8 @@ module ChefZero
end
def post(request)
- key = JSON.parse(request.body, :create_additions => false)[identity_key]
+ json = JSON.parse(request.body, :create_additions => false)
+ key = identity_keys.map { |k| json[k] }.select { |v| v }.first
response = super(request)
if response[0] == 201
already_json_response(201, DataBagItemEndpoint::populate_defaults(request, request.body, request.rest_path[3], key))