Skip to content

ExpressReceiver support for rawBody for signature verification #192

@aoberoi

Description

@aoberoi

Description

The ExpressReceiver handles buffering the request body stream, and then verifying the signature (using the signing secret) in order to authenticate the sender as Slack.

However, when running in some serverless environments, such as Google Cloud Platform (GCP), the request body has already been buffered and even parsed before the Receiver gets a chance to interact with it. In GCP, the original buffer is not destroyed, but rather added as the req.rawBody property.

The ExpressReceiver should check the req.rawBody property for a buffered body for verification, instead of failing in this condition.

This feature request is analogous to slackapi/node-slack-events-api#85, and the fix would be analogous to slackapi/node-slack-events-api#90.

Requirements (place an x in each of the [ ])

  • I've read and understood the Contributing guidelines and have done my best effort to follow them.
  • I've read and agree to the Code of Conduct.
  • I've searched for any related issues and avoided creating a duplicate issue.

Metadata

Metadata

Assignees

Labels

enhancementM-T: A feature request for new functionality

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions