Create an AWS account with the required IAM permissions for the IAM user to use the AWS services such as, Kinesis Firehose, S3, Redshift, and Elastic Search.
Grant Redshift INSERT privilege to the IAM user if the user wants to copy data from the Amazon S3 bucket to the Redshift cluster.
Define a Firehose Delivery Stream with either S3, Redshift or Elastic Search as its destination. Configure source as Direct PUT or other sources.
Grant required permissions to the IAM user credentials based on the target the user is writing to.