<!-- Love localstack? Please consider supporting our collective:
👉  https://opencollective.com/localstack/donate -->

# Type of request: This is a ...

[x] bug report
[ ] feature request

# Detailed description
When I call the Lambda PutFunctionEventInvokeConfig API using the aws-java-sdk, the sdk throws an exception claiming it cannot parse the LastModified timestamp in the response:
```
software.amazon.awssdk.core.exception.SdkClientException: Unable to parse date : 2021-05-28T16:02:30.018Z
        at software.amazon.awssdk.core.exception.SdkClientException$BuilderImpl.build(SdkClientException.java:98)
        at software.amazon.awssdk.protocols.core.StringToInstant.lambda$safeParseDate$0(StringToInstant.java:77)
        at software.amazon.awssdk.protocols.core.StringToInstant.convert(StringToInstant.java:54)
        at software.amazon.awssdk.protocols.core.StringToInstant.convert(StringToInstant.java:32)
```

For comparison, the response for a getting a FunctionEventInvokeConfig for a Lambda of a real AWS account using the aws-cli is the following:
```
{
    "LastModified": "2021-05-27T19:26:43.454000-07:00",
    "FunctionArn": "...",
    ...
}
```

## Expected behavior
LambdaAsyncClient in aws-java-sdk should correctly parse the response for a PutFunctionEventInvokeConfig request.

## Actual behavior
LambdaAsyncClient in aws-java-sdk throws an exception when parsing the LastModified field in the response.

# Steps to reproduce

## Command used to start LocalStack
```
docker run -d --rm --name localstack -p 4566:4566 localstack/localstack:latest
```

## Client code (AWS SDK code snippet, or sequence of "awslocal" commands)
```
val putEventInvokeConfigRequest =
  PutFunctionEventInvokeConfigRequest.builder
    .functionName(functionName)
    .maximumEventAgeInSeconds(21600)
    .maximumRetryAttempts(0)
    .build
lambdaClient.putFunctionEventInvokeConfig(putEventInvokeConfigRequest)
```


region = LambdaRegion.get()
    func_details = region.lambdas.get(arn)
    versions = func_details.versions
    max_version_number = func_details.max_version()
    next_version_number = max_version_number + 1
    latest_hash = versions.get(VERSION_LATEST).get('CodeSha256')
    max_version = versions.get(str(max_version_number))
    max_version_hash = max_version.get('CodeSha256') if max_version else ''
    if latest_hash != max_version_hash:
        versions[str(next_version_number)] = {
            'CodeSize': versions.get(VERSION_LATEST).get('CodeSize'),
            'CodeSha256': versions.get(VERSION_LATEST).get('CodeSha256'),
            'Function': versions.get(VERSION_LATEST).get('Function'),
            'RevisionId': str(uuid.uuid4())
        }
        max_version_number = next_version_number
    return get_function_version(arn, str(max_version_number))
def do_list_versions(arn):
    region = LambdaRegion.get()
    versions = [get_function_version(arn, version) for version in region.lambdas.get(arn).versions.keys()]
    return sorted(versions, key=lambda k: str(k.get('Version')))
def do_update_alias(arn, alias, version, description=None):
    region = LambdaRegion.get()
    new_alias = {
        'AliasArn': arn + ':' + alias,
        'FunctionVersion': version,
        'Name': alias,
        'Description': description or '',
        'RevisionId': str(uuid.uuid4())
    }