创建授权方 - Amazon IoT Core
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

创建授权方

您可以使用 CreateAuthorizerAP I 创建授权方。 以下示例描述了该命令。

aws iot create-authorizer --authorizer-name MyAuthorizer --authorizer-function-arn arn:aws:lambda:us-west-2:<account_id>:function:MyAuthorizerFunction  //The ARN of the Lambda function. [--token-key-name MyAuthorizerToken //The key used to extract the token from headers. [--token-signing-public-keys FirstKey= "-----BEGIN PUBLIC KEY-----   [...insert your public key here...]   -----END PUBLIC KEY-----" [--status ACTIVE] [--tags <value>] [--signing-disabled | --no-signing-disabled]

您可以使用 signing-disabled 参数选择退出适用于授权方的每次调用的签名验证。除有必要,否则我们强烈建议您不要禁用签名。签名验证可防止来自未知设备的 Lambda 函数过多调用。您无法在创建授权方后更新其 signing-disabled 状态。要更改此行为,您必须创建 signing-disabled 参数具有不同值的其它自定义授权方。

如果您已禁用签名,则 tokenKeyNametokenSigningPublicKeys 参数的值是可选的。如果启用了签名,则它们是必需的值。

创建 Lambda 函数和自定义授权方后,必须明确授予 Amazon IoT Core 服务权限才能代表您调用该函数。 您可以使用以下命令执行此操作。

注意

默认物联网终端节点可能不支持将自定义授权方与 Lambda 函数配合使用。相反,您可以使用域配置来定义新的终端节点,然后为自定义授权方指定该终端节点。

aws lambda add-permission --function-name <lambda_function_name> --principal iot.amazonaws.com --source-arn <authorizer_arn> --statement-id Id-123 --action "lambda:InvokeFunction"