### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

S3 does not trigger Lambda when the event is:
`s3:ObjectAcl:Put`

With the event below e.g. works fine:
`s3:ObjectCreated:Put`

### Expected Behavior

In the AWS works fine, S3 triggers the Lambda with both events:
`s3:ObjectAcl:Put`
`s3:ObjectCreated:Put`

### How are you starting LocalStack?

Custom (please describe below)

### Steps To Reproduce

#### Starting localstack:

    docker-compose down -v --remove-orphans && docker-compose up

#### Put the trigger:

```shell
aws --endpoint-url=http://localhost:4566 s3api put-bucket-notification-configuration --bucket bucket --notification-configuration file://notification.json
```
```json
{
  "LambdaFunctionConfigurations": [
    {
      "Id": "xxxxxxxxxx",
      "LambdaFunctionArn": "arn:aws:lambda:us-east-1:000000000000:function:xxxxxxxxxx",
      "Events": [ "s3:ObjectAcl:Put" ],
      "Filter": {
        "Key": {
          "FilterRules": [
            {
              "Name": "suffix",
              "Value": ".json"
            }
          ]
        }
      }
    }
  ]
}
```

#### Check the trigger:

```shell
aws --endpoint-url=http://localhost:4566 s3api get-bucket-notification-configuration --bucket bucket
```

#### Change ACL:

The command below works fine, but do not trigger the Lambda:
```shell
aws --endpoint-url=http://localhost:4566 s3api put-object-acl --bucket bucket --key key --grant-full-control id=canonical
aws --endpoint-url=http://localhost:4566 s3api get-object-acl --color on --bucket bucket --key key
```

#### Try with SDK:

Even using `s3AsyncClient.putObjectAcl`, similar to the code below, the Lambda is not triggered:
https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/SetAcl.java



### Environment

```markdown
- OS: Ubuntu 18.04
- LocalStack: latest
```


### Anything else?

However, if I change the event e.g. to `s3:ObjectCreated:Put`, the Lambda trigger works fine:
```shell
aws --endpoint-url=http://localhost:4566 s3 cp notification.json s3://bucket/notification.json
```
def __init__(self, message=None):
        super().__init__("UnexpectedContent", status_code=400, message=message)
def get_full_default_bucket_location(bucket_name):
    if config.HOSTNAME_EXTERNAL != config.LOCALHOST:
        return f"{config.get_protocol()}://{config.HOSTNAME_EXTERNAL}:{config.get_edge_port_http()}/{bucket_name}/"
    return f"{config.get_protocol()}://{bucket_name}.s3.{LOCALHOST_HOSTNAME}:{config.get_edge_port_http()}/"
class S3Provider(S3Api, ServiceLifecycleHook):
    @staticmethod
    def get_store() -> S3Store:
        return s3_stores[get_aws_account_id()][aws_stack.get_region()]
    def _clear_bucket_from_store(self, bucket: BucketName):
        store = self.get_store()
        store.bucket_lifecycle_configuration.pop(bucket, None)
        store.bucket_versioning_status.pop(bucket, None)
        store.bucket_cors.pop(bucket, None)
        store.bucket_notification_configs.pop(bucket, None)
        store.bucket_replication.pop(bucket, None)
        store.bucket_website_configuration.pop(bucket, None)
    def on_after_init(self):
        apply_moto_patches()
        preprocess_request.append(self._cors_handler)
        register_website_hosting_routes(router=ROUTER)
        register_custom_handlers()
        
        
    def __init__(self) -> None:
        super().__init__()
        self._notification_dispatcher = NotificationDispatcher()
        self._cors_handler = S3CorsHandler()
    def on_before_stop(self):