次のコードでは、AWSアカウント番号を使用してアクセス許可を追加できますが、キューはSNSからのメッセージを受信しません。AWS SQSキューに権限を追加するにはどうすればよいですか?
AddPermissionRequest addPermissionRequest = new AddPermissionRequest();
addPermissionRequest.ActionName.Add("SendMessage");
addPermissionRequest.ActionName.Add("ReceiveMessage");
addPermissionRequest.QueueUrl = queueUrl;
addPermissionRequest.Label = General.IpAddressAWSFriendly;
addPermissionRequest.AWSAccountId.Add(AWS_ACCOUNT_ID);
sqs.AddPermission(addPermissionRequest);
しかし、私は皆のためのワイルドカード(*)を経由してアクセス権を設定しよう:
addPermissionRequest.AWSAccountId.Add("*");
それは私にエラーを与えます。私は手動でAWS SQSコンソールにアクセス許可を追加し、許可されたアクションのためにとの原則のため
SendMessage
ReceiveMessage
指定した場合、私は「誰もが」、キューが私のSNSのトピックからメッセージを受信しないに設定します。だから、明らかに、私は間違ったことをやっているが、私はもうそれを見ない。
助けがあれば助かります。 Amazonには例があるといいが、SDKに付属のサンプルには、ポリシーやアクセス許可の設定に関する情報は表示されません。オンラインマニュアルには何も表示されていません。挫折。
ただ、それは一例に来るとき、私はあなたではない膨大な量に同意すると言って - ReceiveMessageWaitTimeSecondsをし、私はちょうどレンガの壁に当たって保つ - 私は、設定方法に探していまし - 私はコンソールでそれを行うことができますが、それを設定する方法のコード例を見つけることはできません - 私はそれがまっすぐになるだろうと思った! – anna
@anna SQSキューで長いポーリングをしようとしているようです。あなたはどんな特定の問題にぶつかりますか?あなたはSOの質問を投稿しましたか?多分私は助けることができます。 –
私は長いポーリングをしようとしている私は手動でそれを設定する方法を知っているが、私は私がキュー内のキューを作成するときに設定する必要があります私はキューを作成するこれを持っているvar sqsRequest = new CreateQueueRequest(); sqsRequest.QueueName = "Bin2AutomationQ"; var createQueueResponse = sqs.CreateQueue(sqsRequest); myQueueUrl = createQueueResponse.CreateQueueResult。QueueUrl; ReceiveMessageWaitTimeSecondsを20に設定する方法がわからない@ – anna