No way to set up a simple CORS to upload images to a bucket

I have a web platform in developement and I’m trying to upload images to a bucket from the client side. I’m using presigned urls generated by my server and the client uses it to put an image to the bucket. Of course, it won’t work without CORS so I’m trying to set this up. Unfortunately, I tried every possible json file found in various threads (since so many people have difficulties with that) and my PUT requests are still denied with:

No ‘Access-Control-Allow-Origin’ header is present on the requested resource.

My latest json file tried is this:

[
  {
    "AllowedOrigins": [
      "*"
    ],
    "AllowedMethods": [
      "GET",
      "POST",
      "PUT",
      "HEAD",
      "DELETE"
    ],
    "AllowedHeaders": [
      "Access-Control-Allow-Origin",
      "acl",
      "Content-Length",
      "Content-Disposition",
      "Content-Encoding",
      "Content-Type",
      "Expires",
      "bucket",
      "Accept",
      "Accept-Encoding",
      "Accept-Language",
      "Cache-Control",
      "Connection",
      "Host",
      "Origin",
      "Pragma",
      "Referer",
      "User-Agent"
    ],
    "ExposeHeaders": [
      "Access-Control-Allow-Origin",
      "Content-Type",
      "Origin",
      "Etag"
    ],
    "MaxAgeSeconds": 3000
  }
]

Many unnecessary things as you can see but it’s just a copy/paste from someone who solved his problem. I tried simplier setup too, no luck.

Can someone help me solve this please?

Here are the headers:

Note that I also cleared the browser cache, just in case.

And the preflight request:

For those with the same issue, I found the solution. Well, someone else than me found the solution and gave it to me on Discord. He found out on my screenshot that my presigned url was incorrect. I use the .Net AWS Sdk and it seems that it’s the only one that uses SigV2 to create the URL.

This page in the documentation gives a .Net example and shows how to use SigV4:

AWSConfigsS3.UseSignatureVersion4 = true;