From 56af795b1046a4c1bfba59e1fefde272bb0e5c1e Mon Sep 17 00:00:00 2001 From: Yehuda Sadeh Date: Tue, 16 Dec 2014 12:27:54 -0800 Subject: [PATCH] rgw: return InvalidAccessKeyId instead of AccessDenied Fixes: #10334 Signed-off-by: Yehuda Sadeh --- src/rgw/rgw_common.h | 1 + src/rgw/rgw_http_errors.h | 1 + src/rgw/rgw_rest_s3.cc | 2 +- 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/rgw/rgw_common.h b/src/rgw/rgw_common.h index 2020191e1669..589b7dd99532 100644 --- a/src/rgw/rgw_common.h +++ b/src/rgw/rgw_common.h @@ -136,6 +136,7 @@ using ceph::crypto::MD5; #define ERR_LOCKED 2025 #define ERR_QUOTA_EXCEEDED 2026 #define ERR_SIGNATURE_NO_MATCH 2027 +#define ERR_INVALID_ACCESS_KEY 2028 #define ERR_USER_SUSPENDED 2100 #define ERR_INTERNAL_ERROR 2200 diff --git a/src/rgw/rgw_http_errors.h b/src/rgw/rgw_http_errors.h index dc66956a51f5..7850807b6024 100644 --- a/src/rgw/rgw_http_errors.h +++ b/src/rgw/rgw_http_errors.h @@ -38,6 +38,7 @@ const static struct rgw_http_errors RGW_HTTP_ERRORS[] = { { EACCES, 403, "AccessDenied" }, { EPERM, 403, "AccessDenied" }, { ERR_SIGNATURE_NO_MATCH, 403, "SignatureDoesNotMatch" }, + { ERR_INVALID_ACCESS_KEY, 403, "InvalidAccessKeyId" }, { ERR_USER_SUSPENDED, 403, "UserSuspended" }, { ERR_REQUEST_TIME_SKEWED, 403, "RequestTimeTooSkewed" }, { ERR_QUOTA_EXCEEDED, 403, "QuotaExceeded" }, diff --git a/src/rgw/rgw_rest_s3.cc b/src/rgw/rgw_rest_s3.cc index 04c5722f1afe..9a4600424b30 100644 --- a/src/rgw/rgw_rest_s3.cc +++ b/src/rgw/rgw_rest_s3.cc @@ -2176,7 +2176,7 @@ int RGW_Auth_S3::authorize(RGWRados *store, struct req_state *s) /* get the user info */ if (rgw_get_user_info_by_access_key(store, auth_id, s->user) < 0) { dout(5) << "error reading user info, uid=" << auth_id << " can't authenticate" << dendl; - return -EPERM; + return -ERR_INVALID_ACCESS_KEY; } /* now verify signature */ -- 2.47.3