Laden Sie eine private Datei von S3 mit bash herunter

9

Ich versuche, das folgende Bash-Skript zum Laufen zu bringen (kopiert von Ссылка ):

%Vor%

Ich erhalte einen SignatureDoesNotMatch-Fehler, egal was ich mache.

Irgendwelche Ideen, wie das zu beheben ist, werden sehr geschätzt.

    
UKatz 26.12.2014, 14:03
quelle

5 Antworten

8

Nachdem ich viel zu viel Zeit damit verbracht habe, habe ich es endlich zum Laufen gebracht:

Diese Zeile:

%Vor%

fehlt ein 'e':

%Vor%

Mit anderen Worten, Zeichen wurden nicht entkernt, bevor die Zeichenfolge signiert wurde.

Nebenbei habe ich auch gelernt, dass der Inhaltstyp für get-Anfragen bedeutungslos ist.

    
UKatz 28.12.2014, 14:06
quelle
4

Mit verschiedenen Antworten in diesem Thread habe ich es in eine handliche s3get bash Funktion umgewandelt:

%Vor%

Getestet auf OSX und Ubuntu. Gespeichert in diesem Github-Kern .

    
jpillora 28.11.2016 00:27
quelle
2
%Vor%

Ich bekam Fehler in der tatsächlichen Antwort. Das funktioniert für mich. Dies wird die Datei als das was es ist und nicht als Zeichenfolge erhalten.

    
Shubham Bhartiya 13.05.2015 06:25
quelle
1

Es erforderte kleinere Anpassungen, aber die folgenden Zeilen funktionieren gut

%Vor%     
Dave Side 29.07.2016 15:39
quelle
0

Der TS hat nach einer funktionierenden SHA-1-Version des Skripts gefragt. SHA-1 ist jedoch veraltet, und Amazon verfügt über Rechenzentren, die nur SHA-256-Verschlüsselung akzeptieren. Dies ist das Download-Skript, das für alle S3-Datencenter verwendet werden kann: Es folgt auch HTTP 307 Weiterleitungen.

%Vor%

Getestet auf Ubuntu

Wenn jemand eine Lösung zum Entfernen des HMAC-ASCII-Schritts kennt, können Sie gerne antworten. Ich habe das nur auf diese Weise funktioniert.

    
mvaneijk 29.11.2016 12:41
quelle

Tags und Links