ECS: Żądanie S3 zwraca błąd 403 "Błąd niezgodności podpisu" podczas używania bezpiecznych znaków
Summary: Żądanie S3 zwraca błąd HTTP 403. Używane są poprawne poświadczenia. Błąd jest widoczny podczas używania "bezpiecznych" znaków w nazwie obiektu, takich jak podkreślenie Błąd niezgodności podpisu (403) w przypadku zakodowania podkreślenia w nazwie pliku. ...
Symptoms
Żądanie PUT jest wysyłane do ECS, żądanie zostaje odrzucone, wyświetlając "403 - unauthorized"
Nazwa obiektu zawiera znak _ podkreślenia lub inny bezpieczny znak.
Żądania GET działają prawidłowo.
Na przykład żądania PUT z aplikacji "SAS Viya" kończą się niepowodzeniem w przypadku korzystania z podkreślenia.
Przykładowy błąd niezgodności podpisu żądania 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 potwierdza, że jest to niezgodność podpisów:
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
Adres URL aplikacji koduje wszystkie żądania przed wysłaniem żądania do serwera docelowego. W związku z tym bezpieczny znak jest zastępowany wartością adresu URL, np. _ jest zastępowany wartością %5F.
Resolution
Problem został rozwiązany w wersji 3.8.x.
Po uaktualnieniu należy ustawić parametr zezwalający na bezpieczne znaki. Skontaktuj się z działem pomocy technicznej firmy Dell , aby ustawić ten parametr.
Additional Information
| Znaki alfanumeryczne |
|
| Znaki specjalne |
|