### 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_
self.grants = {}
        self.markers = {}
        self.key_pairs = {}
def verify_key_exists(key_id):
    try:
        aws_stack.connect_to_service("kms").describe_key(KeyId=key_id)
    
    except Exception:
        raise ValidationException(f"Invalid keyId {key_id}")
def validate_grant(data):
    if KEY_ID not in data or GRANTEE_PRINCIPAL not in data or OPERATIONS not in data:
        raise ValidationException("Grant ID, key ID and grantee principal must be specified")
    for operation in data[OPERATIONS]:
        if operation not in VALID_OPERATIONS:
            raise ValidationException(
                f"Value {[OPERATIONS]} at 'operations' failed to satisfy constraint: Member must satisfy"
                f" constraint: [Member must satisfy enum value set: {VALID_OPERATIONS}]"
            )
    verify_key_exists(data[KEY_ID])
def handle_create_grant(data):
    validate_grant(data)
    region_details = KMSBackend.get()
    data[GRANT_ID] = long_uid()
    data[GRANT_TOKENS] = [long_uid()]
    if NAME not in data:
        data[NAME] = ""
    data[CREATION_DATE] = time.time()
    region_details.grants[data[GRANT_ID]] = data
    return {GRANT_ID: data[GRANT_ID], "GrantToken": data[GRANT_TOKENS][0]}
def filter_if_present(grant, data, filter_key):