{"action":"closed","issue":{"url":"https://api.github.com/repos/awslabs/amazon-kinesis-producer/issues/33","labels_url":"https://api.github.com/repos/awslabs/amazon-kinesis-producer/issues/33/labels{/name}","comments_url":"https://api.github.com/repos/awslabs/amazon-kinesis-producer/issues/33/comments","events_url":"https://api.github.com/repos/awslabs/amazon-kinesis-producer/issues/33/events","html_url":"https://github.com/awslabs/amazon-kinesis-producer/issues/33","id":117690752,"number":33,"title":"InvalidSignatureException for DescribeStream and PutRecords","user":{"login":"CrossfireCurt","id":17998,"avatar_url":"https://avatars.githubusercontent.com/u/17998?v=3","gravatar_id":"","url":"https://api.github.com/users/CrossfireCurt","html_url":"https://github.com/CrossfireCurt","followers_url":"https://api.github.com/users/CrossfireCurt/followers","following_url":"https://api.github.com/users/CrossfireCurt/following{/other_user}","gists_url":"https://api.github.com/users/CrossfireCurt/gists{/gist_id}","starred_url":"https://api.github.com/users/CrossfireCurt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CrossfireCurt/subscriptions","organizations_url":"https://api.github.com/users/CrossfireCurt/orgs","repos_url":"https://api.github.com/users/CrossfireCurt/repos","events_url":"https://api.github.com/users/CrossfireCurt/events{/privacy}","received_events_url":"https://api.github.com/users/CrossfireCurt/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2015-11-18T21:54:41Z","updated_at":"2015-11-19T21:07:39Z","closed_at":"2015-11-19T21:07:39Z","body":"Hi, I am experiencing an issue on OSX with the Java wrapper. Normally I know InvalidSignatureExceptions are due to bad keys, but I am using the exact same CredentialsProvider that I've specified in the KinesisProducerConfiguration as I am with the AmazonKinesisClient (in the SDK).\r\n\r\nI can successfully make a DescribeStream call and a PutRecords call with AmazonKinesisClient but not with this library. I would provide more debugging info such as the outgoing request, but I am unable to determine where that's actually happening (the OSX binary?). I have also double checked my IAM permissions and I have all kinesis operations allowed.\r\n\r\n```\r\n[2015-11-18 16:42:10.787369] [0x0000000104081000] [info] [kinesis_producer.cc:79] Created pipeline for stream \"curt_MixedEvent_Stream\"\r\n[2015-11-18 16:42:10.787472] [0x0000000104081000] [info] [shard_map.cc:83] Updating shard map for stream \"curt_MixedEvent_Stream\"\r\n[2015-11-18 16:42:10.820452] [0x00007fff7eea2300] [error] [shard_map.cc:172] Shard map update for stream \"curt_MixedEvent_Stream\" failed: {\"__type\":\"InvalidSignatureException\",\"message\":\"The request signature we calculated does not match the signature you provided. Check your AWS Secret Access Key and signing method. Consult the service documentation for details.\\n\\nThe Canonical String for this request should have been\\n'POST\\n/\\n\\nconnection:Keep-Alive\\ncontent-length:39\\ncontent-type:application/x-amz-json-1.1\\nhost:kinesis.us-east-1.amazonaws.com\\nuser-agent:KinesisProducerLibrary/0.10.1 | Darwin | 14.5.0 | Darwin Kernel Version 14.5.0: Tue Sep 1 21:23:09 PDT 2015; root:xnu-2782.50.1~1/RELEASE_X86_64 | x86_64\\nx-amz-date:20151118T214210Z\\nx-amz-target:Kinesis_20131202.DescribeStream\\n\\nconnection;content-length;content-type;host;user-agent;x-amz-date;x-amz-target\\n6b50969c2daf6a0562021da1188d7e4c5a4265580c9a04c35b74d31810ade5bd'\\n\\nThe String-to-Sign should have been\\n'AWS4-HMAC-SHA256\\n20151118T214210Z\\n20151118/us-east-1/kinesis/aws4_request\\n04eacd3ded9c591a5303499feb1412f65cd698eeb4169283e762ce8147ab7e66'\\n\"}; retrying in 1000 ms\r\n[2015-11-18 16:42:11.012258] [0x0000000104081000] [error] [retrier.cc:59] PutRecords failed: {\"__type\":\"InvalidSignatureException\",\"message\":\"The request signature we calculated does not match the signature you provided. Check your AWS Secret Access Key and signing method. Consult the service documentation for details.\\n\\nThe Canonical String for this request should have been\\n'POST\\n/\\n\\nconnection:Keep-Alive\\ncontent-length:21076\\ncontent-type:application/x-amz-json-1.1\\nhost:kinesis.us-east-1.amazonaws.com\\nuser-agent:KinesisProducerLibrary/0.10.1 | Darwin | 14.5.0 | Darwin Kernel Version 14.5.0: Tue Sep 1 21:23:09 PDT 2015; root:xnu-2782.50.1~1/RELEASE_X86_64 | x86_64\\nx-amz-date:20151118T214210Z\\nx-amz-target:Kinesis_20131202.PutRecords\\n\\nconnection;content-length;content-type;host;user-agent;x-amz-date;x-amz-target\\n8145baebe2f73d3ba0f2da60ce4db8e2cf8bb53727f4f7236ad8b78acb0ffd6e'\\n\\nThe String-to-Sign should have been\\n'AWS4-HMAC-SHA256\\n20151118T214210Z\\n20151118/us-east-1/kinesis/aws4_request\\n30d1d07bb192ddd60290476c51311a5f023e447770347b5b5780cd96f11b93e8'\\n\"}\r\n```\r\n\r\nI have confirmed the same issue on another OSX machine. I am using v0.10.1 for amazon-kinesis-producer and v1.10.34 for aws-java-sdk-kinesis. \r\n\r\n"}}