Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Erstellen eines Genehmigers
Sie können mithilfe der API einen Autorisierer erstellen. CreateAuthorizer Das folgende Beispiel beschreibt den Befehl.
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]
Sie können den signing-disabled
-Parameter verwenden, um die Signaturvalidierung für jeden Aufruf Ihres Genehmigers zu deaktivieren. Es wird ausdrücklich empfohlen, dass die Signierung nur wenn unbedingt notwendig zu deaktivieren. Die Signaturvalidierung schützt Sie vor übermäßigen Aufrufen Ihrer Lambda-Funktion von unbekannten Geräten. Sie können den signing-disabled
-Status eines Genehmigers nicht mehr ändern, nachdem Sie ihn erstellt haben. Zum Ändern dieses Verhaltens müssen Sie einen anderen benutzerdefinierten Genehmiger mit einem anderen Wert für den signing-disabled
-Parameter erstellen.
Die Werte für die tokenKeyName
- und tokenSigningPublicKeys
-Parameter sind optional, wenn Sie das Signieren deaktiviert haben. Sie sind jedoch erforderlich, wenn das Signieren aktiviert ist.
Nachdem Sie Ihre Lambda-Funktion und den benutzerdefinierten Autorisierer erstellt haben, müssen Sie dem AWS IoT Core Dienst ausdrücklich die Berechtigung erteilen, die Funktion in Ihrem Namen aufzurufen. Sie können dies mit dem folgenden Befehl tun.
Anmerkung
Der Standard-IoT-Endpunkt unterstützt möglicherweise nicht die Verwendung von benutzerdefinierten Autorisierern mit Lambda-Funktionen. Stattdessen können Sie Domänenkonfigurationen verwenden, um einen neuen Endpunkt zu definieren und diesen Endpunkt dann für den benutzerdefinierten Autorisierer anzugeben.
aws lambda add-permission --function-name <lambda_function_name> --principal iot.amazonaws.com --source-arn <authorizer_arn> --statement-id Id-123 --action "lambda:InvokeFunction"