Working with IoT API{Message Forbidden}

0

I am getting a {message Forbidden} error while I am trying to send HTTP request to IoT core using Postman. I get the device data endpoint address using the command below using AWS cloudshell. aws iot describe-endpoint --output text --endpoint-type iot:Data-ATS URL for posting the request in Postman is below: https://device_data_endpoint_address:443/topics/test/cust-auth/topic?qos=0&actionToken=allow

已提问 1 年前477 查看次数
1 回答
0

You can take the following steps to troubleshoot the authorizer:

  1. Verify token signature is disabled for the authorizer using the console or aws iot describe-authorizer --authorizer-name NAME_OF_AUTHORIZER
  2. If you have multiple authorizers, verify the one you want to use is set as default
  3. Verify the authorizer response with aws iot test-invoke-authorizer --authorizer-name NAME_OF_AUTHORIZER --token TOKEN_VALUE
  4. Test the lambda function using a sample event

Token and the signature can be sent as headers in the request or as query paramenters. For your case the authorizer lambda code must be written to handle query strings parameters.

A more exhaustive troubleshooting guide can be found here

AWS
专家
已回答 1 年前
  • Thank You so much for the response. I have done the following : 1.Added "Addpermission"API with the given command.

    aws lambda add-permission --function-name FunctionName --principal iot.amazonaws.com --source-arn AuthorizerARn --statement-id Id-123 --action "lambda:InvokeFunction"

    2.Verify Authorizer Response with the command aws iot test-invoke-authorizer --authorizer-name NAME_OF_AUTHORIZER --token TOKEN_VALUE

    In AWS CLI gives the following error: aws: error: argument operation: Invalid choice, valid choices are:

    And Postman API is still giving {message Forbidden} :( Note:Token Signature is up todate

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则