本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
测试授权方
您可以使用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
参数传递此信息。以下选项卡显示如何使用将TestInvokeAuthorizer
API包含用户名、密码和客户端名称的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