From: Matt Benjamin Date: Fri, 27 Mar 2020 17:13:48 +0000 (+0100) Subject: rgw: reject unauthenticated response-header actions X-Git-Tag: v14.2.9~3 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=fce0b267446d6f3f631bb4680ebc3527bbbea002;p=ceph.git rgw: reject unauthenticated response-header actions Signed-off-by: Matt Benjamin Reviewed-by: Casey Bodley (cherry picked from commit d8dd5e513c0c62bbd7d3044d7e2eddcd897bd400) --- diff --git a/src/rgw/rgw_rest_s3.cc b/src/rgw/rgw_rest_s3.cc index 18b1f8fd92da..47df778ae072 100644 --- a/src/rgw/rgw_rest_s3.cc +++ b/src/rgw/rgw_rest_s3.cc @@ -283,6 +283,11 @@ int RGWGetObj_ObjStore_S3::send_response_data(bufferlist& bl, off_t bl_ofs, bool exists; string val = s->info.args.get(p->param, &exists); if (exists) { + /* reject unauthenticated response header manipulation, see + * https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html */ + if (s->auth.identity->is_anonymous()) { + return -EPERM; + } if (strcmp(p->param, "response-content-type") != 0) { response_attrs[p->http_attr] = val; } else {