Queue-it's CloudFront Connector v4 uses two AWS Lambda functions to integrate a CloudFront protected WebServer with Queue-it.
This page is intended to give a high-level technical overview of the CloudFront Connector v4. To prevent malicious actors from compromising the security of our customer's high-profile sales and registrations, we host our in-depth Connector v4 documentation in private repositories.
If you need more detailed integration documentation than this page offers, connect with one of our technical experts who can understand your use case and determine the optimal setup for your tech stack.
The following diagram shows the Queue-it logic with an edge Connector.
- User requests a page.
- The validation method sees that user has no Queue-it session cookie and no Queue-it token and sends him to the correct waiting room with a valid token based on the configuration.
- User waits in the queue.
- User is navigated back to your website, now with a valid token.
- The validation method validates the token and creates a Queue-it session cookie.
- The user browses to a new page and the Queue-it session cookie will let him proceed without queuing again.
To integrate using the Queue-it CloudFront Connector v4, you will need:
- An active Queue-it account
- An active AWS account
- Queue-it admin available (Someone available with the GO Queue-it Platform access and familiarity with GO account configuration settings.)
- AWS admin available (Someone available with access to the customer AWS account and familiarity with all existing CloudFront environmental configurations (Lambda functions)
- CloudFront V4 Connector Download Access (CloudFront admin must have been provisioned with access to secure Queue-it V4 Connector Github repository – not available for public access.)
- A non-production CloudFront environment that can be used for implementing and testing the new Queue-it connector.
The CloudFront Connector v4 consists of the following components:
- Lamba Functions – code provided by Queue-it that enables the waiting room protection.
- Behaviors – map Lambda functions to Distributions (websites) and specific web-server paths that will be protected by the Queue-it waiting room.
- Queue-it Integration Configuration - configuration information created in the GO Queue-it Platform and propagated to the Cloudflare environment for use by the Queue-it Worker.
- Create a new Lambda function for ViewerRequest
- Create a new Lambda function for ViewerResponse
- Edit Distribution behavior to apply new Lambda functions
Waiting rooms and their protection scope are created and configured in the GO Queue-it Platform and any server-side (KnownUser) configuration information must be propagated to the CloudFront environment for real-time access by the Queue-it Worker. When an integration configuration is saved (published) in the GO Queue-it Platform, the server-side configuration settings are packaged into a server-side JSON file and positioned on the Queue-it server, ready for secure downloading. Propagation of these settings (JSON) to the CloudFront environment is
performed automatically when the Queue-it integration configuration is published.