测试授权方 - AWS IoT Core

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

测试授权方

您可以使用TestInvokeAuthorizerAPI来测试授权方的调用和返回值。 这API使您能够在授权者中指定协议元数据并测试签名验证。

以下选项卡显示了如何使用 AWS CLI 来测试您的授权者。

Unix-like
aws iot test-invoke-authorizer --authorizer-name NAME_OF_AUTHORIZER \ --token TOKEN_VALUE --token-signature TOKEN_SIGNATURE
Windows CMD
aws iot test-invoke-authorizer --authorizer-name NAME_OF_AUTHORIZER ^ --token TOKEN_VALUE --token-signature TOKEN_SIGNATURE
Windows PowerShell
aws iot test-invoke-authorizer --authorizer-name NAME_OF_AUTHORIZER ` --token TOKEN_VALUE --token-signature TOKEN_SIGNATURE

token-signature 参数的值是签名令牌。要了解如何获取此值,请参阅 签名令牌

如果您的授权方使用了用户名和密码,您可以使用 --mqtt-context 参数传递此信息。以下选项卡显示如何使用将TestInvokeAuthorizerAPI包含用户名、密码和客户端名称的JSON对象发送给您的自定义授权者。

Unix-like
aws iot test-invoke-authorizer --authorizer-name NAME_OF_AUTHORIZER \ --mqtt-context '{"username": "USER_NAME", "password": "dGVzdA==", "clientId":"CLIENT_NAME"}'
Windows CMD
aws iot test-invoke-authorizer --authorizer-name NAME_OF_AUTHORIZER ^ --mqtt-context '{"username": "USER_NAME", "password": "dGVzdA==", "clientId":"CLIENT_NAME"}'
Windows PowerShell
aws iot test-invoke-authorizer --authorizer-name NAME_OF_AUTHORIZER ` --mqtt-context '{"username": "USER_NAME", "password": "dGVzdA==", "clientId":"CLIENT_NAME"}'

密码必须采用 base64 编码。以下示例说明如何在类 Unix 的环境中对密码进行编码。

echo -n PASSWORD | base64