title: AWS Kinesis agent not authorized to perform: firehose:PutRecordBatch
body: <p>I have setup an Amazon linux AMI with the Kinesis Agent installed and configured to send the logs over to Firehose. The EC2 instance has been attached an IAM role with <code>KinesisFirehoseFullAccess</code> permission. However I am receiving the inadequate permissions error while the data is being sent over.</p>
  
  <p>I know that I have provided the highest level of IAM Kinesis permissions but I am facing a blank wall now. I will, of course, trim the permissions down later but I first need to get this proof of concept working.</p>
  
  <p>From the AWS Firehose, did a test send to the S3 bucket. This worked OK.
  Created logs via the Fake Log Generator. I then ran the service. Service is up and running.</p>
  
  <blockquote>
    <p>User: arn:aws:sts::1245678012:assumed-role/FirstTech-EC2-KinesisFireHose/i-0bdf3adc7a4d97afa is <strong>not authorized to perform: firehose:PutRecordBatch</strong> on resource: arn:aws:firehose:ap-southeast-1:1245678012:deliverystream/firsttech-ingestion-weblogs (Service: AmazonKinesisFirehose; Status Code: 400; Error Code: AccessDeniedException;</p>
    
    <p>localhost (Agent.MetricsEmitter RUNNING) com.amazon.kinesis.streaming.agent. Agent: Progress: 900 records parsed (220430 bytes), and 0 records sent successfully to destinations. Uptime: 840058ms</p>
  </blockquote>