You are working on an application that uses Amazon Cognito.
Data in Amazon Cognito needs to be further analyzed using Amazon Redshift.
You are planning to use Kinesis streams for this purpose.
Which of the following can be performed to have Amazon Cognito Events push events to Kinesis streams and get analyzed data using Amazon Redshift?
Click on the arrows to vote for the correct answer
A. B. C. D.Correct Answer - B.
You can select either existing Kinesis Stream or create a new Kinesis Stream to have Amazon Cognito Streams push all sync data to these streams.
Apart from this, an IAM role is required to grant Amazon Cognito to put data events to these streams.
Option A is incorrect as Both the existing Kinesis Stream or a new Kinesis Stream can be used.
Option C is incorrect as the IAM role is needed here instead of an IAM user.
Option D is incorrect as IAM roles should be selected which grants Amazon Cognito permission to publish to this Stream.
For more information on Amazon Cognito Streams, refer to the following URL-
https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-streams.htmlTo have Amazon Cognito events pushed to Kinesis streams and get analyzed data using Amazon Redshift, you can use either an existing Kinesis stream or create a new one. Then, you need to create an IAM role or user with permissions to Amazon Cognito to publish events to the selected Kinesis stream.
Answer A is partially correct, as it suggests using an existing Kinesis stream and creating an IAM role with the necessary permissions to publish events to that stream. However, it does not address the possibility of creating a new Kinesis stream, which could also be a valid option.
Answer B is the most comprehensive and correct option, as it suggests using either an existing Kinesis stream or creating a new one, and creating an IAM role that grants Amazon Cognito permission to publish to the selected stream. This gives more flexibility to choose the appropriate stream for the analysis and control the access to it through the IAM role.
Answer C is incorrect, as it suggests creating an IAM user instead of an IAM role. IAM roles are recommended over IAM users for granting temporary access to AWS services, such as Amazon Cognito. Additionally, it suggests creating a new Kinesis stream, which may not be necessary.
Answer D is incorrect, as it suggests enabling an Amazon Cognito stream, which does not exist. There is a Kinesis Data Streams feature that can be used to stream events from Amazon Cognito, but it requires creating a new Kinesis stream and a Lambda function to process the events.
In summary, the best option to have Amazon Cognito events pushed to Kinesis streams and get analyzed data using Amazon Redshift is to use an existing Kinesis stream or create a new one, and create an IAM role that grants Amazon Cognito permission to publish events to the selected stream.