[X] bug report
[ ] feature request

# Detailed description

The AWS API supports Authorization parameters as GET parameters, e.g. here's a GET request to SendMessage on SQS:

```
curl 'http://localhost:4566/000000000000/SomeQueue.fifo?Action=SendMessage&MessageGroupId=Default&MessageDeduplicationId=1615597859837&MessageBody=%7B%22gateway_id%22%3A%20%2204e73c80-3539-499c-92a4-a0b106c2f6ab%22%7D&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=test%2F20210313%2Fus-east-1%2Fsqs%2Faws4_request&X-Amz-Date=20210313T011059Z&X-Amz-Expires=86400000&X-Amz-SignedHeaders=host&X-Amz-Signature=2c652c7bc9a3b75579db3d987d1e6dd056f0ac776c1e1d4ec91e2ce84e5ad3ae'
```

## Expected behavior

Should send the message and return receipt information.

## Actual behavior

Returns...

```
<?xml version="1.0" encoding="UTF-8"?>
<Error>
    <Code>NoSuchBucket</Code>
    <Message>The specified bucket does not exist</Message>
    <BucketName>000000000000</BucketName>
    <RequestID>7a62c49f-347e-4fc4-9331-6e8eEXAMPLE</RequestID>
</Error>
```

try:
                    if port == 53:
                        dnshost = '127.0.0.1' if host == 'localhost' else host
                        resolver = dns.resolver.Resolver()
                        resolver.nameservers = [dnshost]
                        resolver.timeout = 1
                        resolver.lifetime = 1
                        answers = resolver.query('google.com', 'A')
                        assert len(answers) > 0
                    else:
                        sock.sendto(bytes(), (host, port))
                        sock.recvfrom(1024)
                except Exception:
                    return False
            elif nw_protocol == socket.SOCK_STREAM:
                result = sock.connect_ex((host, port))
                if result != 0:
                    return False
    if 'tcp' not in protocols or not http_path:
        return True
    url = '%s://%s:%s%s' % (protocol, host, port, http_path)
    try:
        response = safe_requests.get(url, verify=False)
        return not expect_success or response.status_code < 400
    except Exception:
        return False
def wait_for_port_open(port, http_path=None, expect_success=True, retries=10, sleep_time=0.5):
    """ Ping the given network port until it becomes available (for a given number of retries).
        If 'http_path' is set, make a GET request to this path and assert a non-error response. """
    def check():