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 Ihr Gateway zu kontrollieren. API API
Weitere Informationen und Beispiele für die Konfiguration des Zugriffs mithilfe von AWS SAM finden Sie unterSteuern API Sie den 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.
YAML
AddApiKeyRequiredToCorsPreflight:
Boolean
AddDefaultAuthorizerToCorsPreflight:Boolean
ApiKeyRequired:Boolean
Authorizers:CognitoAuthorizer | LambdaTokenAuthorizer | LambdaRequestAuthorizer | AWS_IAM
DefaultAuthorizer:String
InvokeRole:String
ResourcePolicy:ResourcePolicyStatement
UsagePlan:ApiUsagePlan
Anmerkung
Die Authorizers
Eigenschaft beinhaltetAWS_IAM
, aber dafür ist keine zusätzliche Konfiguration erforderlichAWS_IAM
. Ein Beispiel finden Sie unter AWS IAM.
Eigenschaften
-
AddApiKeyRequiredToCorsPreflight
-
Wenn die
Cors
EigenschaftenApiKeyRequired
und festgelegt sind, führt die Einstellung dazu, dass der API Schlüssel zur Eigenschaft hinzugefügtAddApiKeyRequiredToCorsPreflight
wird.Options
Typ: Boolesch
Required: No
Standardwert:
True
AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.
-
Wenn die
Cors
EigenschaftenDefaultAuthorizer
und festgelegt sind, führtAddDefaultAuthorizerToCorsPreflight
diese Einstellung dazu, dass der Standardautorisierer zurOptions
Eigenschaft im API Abschnitt Öffnen 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 der Wert auf true gesetzt ist, ist für alle API Ereignisse ein API Schlüssel erforderlich. Weitere Informationen zu API Schlüsseln finden Sie unter Nutzungspläne mit API Schlüsseln erstellen und verwenden im APIGateway Developer Guide.
Typ: Boolesch
Required: No
AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.
-
Der Autorisierer, der zur Steuerung des Zugriffs auf Ihr API Gateway API verwendet wurde.
Weitere Informationen finden Sie unter Steuern API Sie den Zugriff mit Ihrer AWS SAM Vorlage.
Typ: CognitoAuthorizer| | LambdaTokenAuthorizer| LambdaRequestAuthorizer AWS_IAM
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 Autorisierer zur OpenApi Definition einer API hinzu.
-
Geben Sie einen Standardautorisierer für ein API Gateway anAPI, der standardmäßig für die Autorisierung von API Aufrufen verwendet wird.
Anmerkung
Wenn die Api EventSource für die damit verbundene Funktion so konfiguriert API ist, dass sie IAM Permissions verwendet, muss diese Eigenschaft auf gesetzt sein
AWS_IAM
, andernfalls wird ein Fehler ausgegeben.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_CREDENTIALS
ordnet 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 einemAPI.
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 with erforderlichEndpointConfiguration: PRIVATE
. -
UsagePlan
-
Konfiguriert einen damit verbundenen Nutzungsplan. API Weitere Informationen zu Nutzungsplänen finden Sie unter Nutzungspläne mit API Schlüsseln erstellen und verwenden im APIGateway Developer Guide.
Diese AWS SAM Eigenschaft generiert drei zusätzliche AWS CloudFormation Ressourcen, wenn diese Eigenschaft festgelegt ist: AWS::ApiGateway::UsagePlan, ein AWS::ApiGateway::UsagePlanKey, und ein 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 für AWS SAM.
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" } } }] IpRangeDenylist: - "10.20.30.40"
AWS IAM
AWS IAMBeispiel
YAML
Auth: Authorizers: AWS_IAM