Ich habe versucht, die .NET AWS Cloudfront-API zu verwenden, um signierte Cookies für meine S3-Bucket zu erstellen, aber jedes Mal, wenn ich eine HTTP-Anfrage mit den Cookies, die erstellt werden, senden ein Ergebnis von "Verboten". Gibt es etwas, das ich in diesem Code falsch mache? Vielen Dank.Erstellen von signierten Cookies mit AWS Cloudfront-API in C#
CookiesForCannedPolicy cookies = AmazonCloudFrontCookieSigner.GetCookiesForCannedPolicy(
@"http://distribution123abc.cloudfront.net/*",
"KEYPAIRID",
new FileInfo(@"C:\bla\privatekey.pem"),
DateTime.Now.AddHours(1));
Uri target = new Uri(@"http://distribution123abc.cloudfront.net");
HttpWebRequest pleaseWork = (HttpWebRequest)WebRequest.Create(@"http://distribution123abc.cloudfront.net/files/test.txt");
if (pleaseWork.CookieContainer == null)
{
pleaseWork.CookieContainer = new CookieContainer();
}
pleaseWork.CookieContainer.Add(new Cookie(cookies.Signature.Key, cookies.Signature.Value) { Domain = target.Host });
pleaseWork.CookieContainer.Add(new Cookie(cookies.KeyPairId.Key, cookies.KeyPairId.Value) { Domain = target.Host });
pleaseWork.CookieContainer.Add(new Cookie(cookies.Expires.Key, cookies.Expires.Value) { Domain = target.Host });
try
{
WebResponse response = pleaseWork.GetResponse();
Console.WriteLine("Response content length: " + response.ContentLength);
}
catch(WebException e)
{
Console.WriteLine(e.Message);
}
Sobald ich den IP-Bereich 0.0.0.0/0 dies funktionierte perfekt geändert, danke – ScottieMc