### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

When attempting to sign some document using Localstack KMS inside a lambda container (also running on localstack), the localstack KMS listener returns some unknown error.

The KMS key and lambda containers have been created from the same CDK app deploy, and I can see all the resources in the localstack web console.

The test application I'm using to prove this behaviour is available here:
https://github.com/LukaHedt/localstack_kms_test

Instructions to run are in the main Readme, and the `/localstack/Readme.md` file.

`aws-sdk` returns an unknown error, and the localstack docker logs that I receive are available here:
https://pastebin.com/58Z3fXi3

Have done an amount of testing and can confidently claim the following:
- Have tested on multiple machines with the same outcome
- Doesn’t make a difference if I specify an ARN or a KeyID in the signing request
- Downgrading localstack versions either didn’t make a difference, or I couldn’t actually deploy a localstack container with version 0.12.20 or lower.

### Expected Behavior

KMS Sign should return a signature for the given payload.

### How are you starting LocalStack?

With a docker-compose file

### Steps To Reproduce

Test application demonstrating the current behaviour is available here:

https://github.com/LukaHedt/localstack_kms_test

Full instructions to run are in the `/localstack/Readme.md` file.


### Environment

```markdown
- OS: MacOS Monteray 12.3
- LocalStack: 0.14.0
```


### Anything else?

_No response_
asynchronous=not config.SYNCHRONOUS_DYNAMODB_EVENTS,
                )
    @staticmethod
    def forward_to_ddb_stream(records):
        dynamodbstreams_api.forward_events(records)
    @staticmethod
    def forward_to_kinesis_stream(records):
        kinesis = aws_stack.connect_to_service("kinesis")
        table_definitions = DynamoDBRegion.get().table_definitions
        for record in records:
            if record.get("eventSourceARN"):
                table_name = record["eventSourceARN"].split("/", 1)[-1]
                table_def = table_definitions.get(table_name) or {}
                if table_def.get("KinesisDataStreamDestinationStatus") == "ACTIVE":
                    stream_name = table_def["KinesisDataStreamDestinations"][-1]["StreamArn"].split(
                        "/", 1
                    )[-1]
                    record["tableName"] = table_name
                    record.pop("eventSourceARN", None)
                    record["dynamodb"].pop("StreamViewType", None)
                    partition_key = list(
                        filter(lambda key: key["KeyType"] == "HASH", table_def["KeySchema"])
                    )[0]["AttributeName"]
                    kinesis.put_record(
                        StreamName=stream_name,
                        Data=json.dumps(record),
                        PartitionKey=partition_key,
                    )
    @classmethod
    def prepare_records_to_forward_to_ddb_stream(cls, records):