ECS. Запрос S3 возвращает ошибку 403 «Signature mismatch error» при использовании безопасных символов
Summary: Запрос S3 возвращает ошибку HTTP 403. Используются правильные учетные данные. Ошибка наблюдается при использовании «безопасных» символов в имени объекта, таких как нижнее подчеркивание Ошибка несоответствия подписи (403) при кодировке символа подчеркивания в имени файла. ...
Symptoms
Запрос PUT отправляется в ECS, запрос отклоняется, отображая "403 - unauthorized"
Имя объекта содержит символ подчеркивания _ или другой безопасный символ.
Запросы GET работают должным образом.
Например, запросы PUT от приложения «SAS Viya» завершаются сбоем при использовании символа подчеркивания.
Пример ошибки несоответствия подписи в Запросе 403:
2024-02-27 12:10:28,631 ac1f9511:189029ad365:357c84:389 123.45.xxx.xx:9021 172.31.xxx.xxx:9862 - htClient POST - sasviya-qa tmp_aaaaaaaa-bbbb-cccc-dddd-a3c2d3b40815_12345678.sashdat uploads HTTP/1.1 403 31 - - -1 - - - 123.xx.xx.xx 'X-Forwarded-For: 172.xx.xx.x'
svc_log подтверждает, что подпись не совпадает:
svc_log -f "ac1f9511:189029ad365:357c84:389" -sr dataheadsvc -start 1d ago -sn -sf 169.254.1.2 2024-02-27T12:10:28,134 [qtp1758056339-124594-ac1f9511:189029ad365:357c84:389-s3-172.xx.xx.x] ERROR S3V4Signer.java (line 302) Signature mismatch CalcSignature: 45753541dc729e7ebdbd2425e3a2fe8ab1f79f1e81b131409065e77f511e886b, ClientSignature: f5ed0ad93cdd67b58a1d93f24f0034b58e4bb29f0e54ecf6020db5b711ddba0a
Cause
URL-адрес приложения кодирует все запросы перед отправкой запроса на целевой сервер. Таким образом, безопасный символ заменяется значением url, например, _ заменяется на %5F.
Resolution
Проблема устранена в выпуске 3.8.x.
После обновления необходимо задать параметр, разрешающий использование безопасных символов. Обратитесь в службу поддержки Dell , чтобы задать этот параметр.
Additional Information
| Буквенно-цифровые символы |
|
| Специальные символы |
|