ApiAuth - AWS Serverless Application Model

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.

ApiAuth

Konfigurieren Sie die Autorisierung, um den Zugriff auf Ihre API-Gateway-API zu kontrollieren.

Weitere Informationen und Beispiele für die Konfiguration des Zugriffs mithilfe von AWS SAM Kontrollieren Sie den API-Zugriff mit Ihrer AWS SAM Vorlage

Syntax

Verwenden Sie die folgende Syntax, um diese Entität in Ihrer Vorlage AWS Serverless Application Model (AWS SAM) zu deklarieren.

Eigenschaften

AddApiKeyRequiredToCorsPreflight

Wenn die Cors Eigenschaften ApiKeyRequired und festgelegt sind, führt AddApiKeyRequiredToCorsPreflight diese Einstellung dazu, dass der API-Schlüssel der Options Eigenschaft hinzugefügt wird.

Typ: Boolesch

Required: No

Standardwert: True

AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.

AddDefaultAuthorizerToCorsPreflight

Wenn die Cors Eigenschaften DefaultAuthorizer und gesetzt sind, AddDefaultAuthorizerToCorsPreflight führt die Einstellung dazu, dass der Standard-Authorizer zur Options Eigenschaft im OpenAPI-Abschnitt hinzugefügt wird.

Typ: Boolesch

Required: No

Standard: Wahr

AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.

ApiKeyRequired

Wenn auf true gesetzt, ist ein API-Schlüssel für alle API-Ereignisse erforderlich. Weitere Informationen zu API-Schlüsseln finden Sie unter Nutzungspläne mit API-Schlüsseln erstellen und verwenden im API Gateway Developer Guide.

Typ: Boolesch

Required: No

AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.

Authorizers

Der Autorisierer, der zur Steuerung des Zugriffs auf Ihre API-Gateway-API verwendet wird.

Weitere Informationen finden Sie unter Kontrollieren Sie den API-Zugriff mit Ihrer AWS SAM Vorlage.

Typ: CognitoAuthorizer| | LambdaTokenAuthorizerLambdaRequestAuthorizer

Required: No

Standard: Keiner

AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.

Zusätzliche Hinweise: SAM fügt die Authorizer zur OpenApi Definition einer API hinzu.

DefaultAuthorizer

Geben Sie einen Standardautorisierer für eine API-Gateway-API an, der standardmäßig für die Autorisierung von API-Aufrufen verwendet wird.

Anmerkung

Wenn die API EventSource für die mit dieser API verknüpfte Funktion für die Verwendung von IAM-Berechtigungen konfiguriert ist, muss diese Eigenschaft auf gesetzt werdenAWS_IAM, da andernfalls ein Fehler auftritt.

Typ: Zeichenfolge

Required: No

Standard: Keiner

AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.

InvokeRole

Legt die Integrationsanmeldedaten für alle Ressourcen und Methoden auf diesen Wert fest.

CALLER_CREDENTIALSordnet zuarn:aws:iam::*:user/*, wodurch die Anmeldeinformationen des Anrufers verwendet werden, um den Endpunkt aufzurufen.

Gültige Werte:CALLER_CREDENTIALS,, NONE IAMRoleArn

Typ: Zeichenfolge

Required: No

Standardwert: CALLER_CREDENTIALS

AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.

ResourcePolicy

Konfigurieren Sie die Ressourcenrichtlinie für alle Methoden und Pfade auf einer API.

Typ: ResourcePolicyStatement

Required: No

AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.

Zusätzliche Hinweise: Diese Einstellung kann auch individuell AWS::Serverless::Function mit dem definiert werdenApiFunctionAuth. Dies ist für APIs mit erforderlichEndpointConfiguration: PRIVATE.

UsagePlan

Konfiguriert einen mit dieser API verknüpften Nutzungsplan. Weitere Informationen zu Nutzungsplänen finden Sie unter Nutzungspläne mit API-Schlüsseln erstellen und verwenden im API Gateway Developer Guide.

Diese AWS SAM Eigenschaft generiert drei zusätzliche AWS CloudFormation Ressourcen, wenn diese Eigenschaft festgelegt ist: an AWS::ApiGateway::UsagePlanAWS::ApiGateway::UsagePlanKey, an und an AWS::ApiGateway::ApiKey. Informationen zu diesem Szenario finden Sie unterUsagePlanEigenschaft ist spezifiziert. Allgemeine Informationen zu generierten AWS CloudFormation Ressourcen finden Sie unterGenerierte AWS CloudFormation Ressourcen.

Typ: ApiUsagePlan

Required: No

AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.

Beispiele

CognitoAuth

Beispiel für Cognito Auth

YAML

Auth: Authorizers: MyCognitoAuth: UserPoolArn: Fn::GetAtt: - MyUserPool - Arn AuthType: "COGNITO_USER_POOLS" DefaultAuthorizer: MyCognitoAuth InvokeRole: CALLER_CREDENTIALS AddDefaultAuthorizerToCorsPreflight: false ApiKeyRequired: false ResourcePolicy: CustomStatements: [{ "Effect": "Allow", "Principal": "*", "Action": "execute-api:Invoke", "Resource": "execute-api:/Prod/GET/pets", "Condition": { "IpAddress": { "aws:SourceIp": "1.2.3.4" } } }] IpRangeBlacklist: - "10.20.30.40"