tarihinde Git lang AWS Talebi Kimlik Benim uygulanmasıAWS Talebi Kimlik Doğrulama: Encode Başlık
package main
import "fmt"
import "crypto/hmac"
import "crypto/sha256"
import "time"
import "encoding/base64"
func main() {
AWSAccessKeyId := "MHAPUBLICKEY"
AWSSecretKeyId := "MHAPRIVATEKEY"
sha256 := sha256.New
time := time.Now().UTC().Format(time.ANSIC)
hash := hmac.New(sha256, []byte(AWSSecretKeyId))
hash.Write([]byte(time))
sha := base64.URLEncoding.EncodeToString(hash.Sum(nil))
fmt.Println("Date", time)
fmt.Println("Content-Type","text/xml; charset=UTF-8")
fmt.Println("AWS3-HTTPS AWSAccessKeyId=" + AWSAccessKeyId + ",Algorithm=HmacSHA256,Signature=" + sha)
}
Ben Amazon geçerli bir çıkış olsun ama çocuklarının SHA 'karma _ herhangi içeren veya olmayan tek zaman -
Çalışma
'WFKzWNQlZEyTC9JFGFyqdf8AYj54aBj5btxPIaGTDbM ='
o da durum çalışır böylece
'h-FIs7of_CJ7LusAoQPzSWVt9hlXF_5gCQgedn_85lk ='
nasıl AWS3 HTTPS başlığını kodlayabilirim HTTP/1.1 403 Yasak SignatureDoesNotMatch Çalışmıyor? Sadece alakalı olması durumunda, şu anda çıktıyı kopyalayıp cURL'ye yapıştırıyorum. Güvenilir bir şekilde çalıştıktan sonra isteği Google Go’da uygulamayı planlıyorum.
sağlamlık denetimi için StdEncoding
için URLencoding değiştirmek için gerekli çıktı: Eğer 'ile' curl' çalıştırdığınız -v' sadece bunu kontrol etmek bukle karıştırmasını değil verilerinizle mi? –
Bunu Go’da uygulamaya koydum ve hiç şansım olmadı, hash’ın _ –
içermediğinde aynı hataları/başarımı yakaladım Hey, bu eski dizgeyi çarpıttığım için üzgünüm ama bu Auth belirtecini farklı bir dilde uygulamaya çalışıyorum ve hash.Write işini anlamaya çalışıyorum? Tuz için mi? Objective-C kullanıyorum. Şerefe! –