### Is there an existing issue for this?

- [X] I have searched the existing issues

### Enhancement description

AWS Lambda recently added support for Java 17 as managed runtime:
https://aws.amazon.com/about-aws/whats-new/2023/04/aws-lambda-java-17/



### 🧑‍💻 Implementation

_No response_

### Anything else?

_No response_
service: str,
        region: str = None,
        signer_factory: Callable[
            [botocore.credentials.Credentials, str, str], botocore.auth.BaseSigner
        ] = botocore.auth.SigV4QueryAuth,
        endpoint_url: str = None,
    ):
        region = region or boto3_session.region_name
        region = region or config.DEFAULT_REGION
        credentials = boto3_session.get_credentials()
        creds = credentials.get_frozen_credentials()
        if not endpoint_url:
            if os.environ.get("TEST_TARGET", "") == "AWS_CLOUD":
                
                resolver: EndpointResolver = boto3_session._session.get_component(
                    "endpoint_resolver"
                )
                endpoint_url = "https://" + resolver.construct_endpoint(service, region)["hostname"]
            else:
                endpoint_url = config.get_edge_url()
        return SigningHttpClient(signer_factory(creds, service, region), endpoint_url=endpoint_url)
    return factory
@pytest.fixture(scope="class")
def dynamodb_resource():