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 finden Sie unterKontrollieren 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.
YAML
AddApiKeyRequiredToCorsPreflight:BooleanAddDefaultAuthorizerToCorsPreflight:BooleanApiKeyRequired:BooleanAuthorizers:CognitoAuthorizer | LambdaTokenAuthorizer | LambdaRequestAuthorizer | AWS_IAMDefaultAuthorizer:StringInvokeRole:StringResourcePolicy:ResourcePolicyStatementUsagePlan:ApiUsagePlan
Anmerkung
Die Authorizers Eigenschaft beinhaltetAWS_IAM, aber dafür ist keine zusätzliche Konfiguration erforderlichAWS_IAM. Ein Beispiel finden Sie unter AWS ICH BIN.
Eigenschaften
-
AddApiKeyRequiredToCorsPreflight -
Wenn die
CorsEigenschaftenApiKeyRequiredund festgelegt sind, führtAddApiKeyRequiredToCorsPreflightdiese Einstellung dazu, dass der API-Schlüssel derOptionsEigenschaft hinzugefügt wird.Typ: Boolesch
Required: No
Standardwert:
TrueCloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.
-
Wenn die
CorsEigenschaftenDefaultAuthorizerund gesetzt sind,AddDefaultAuthorizerToCorsPreflightführt die Einstellung dazu, dass der Standard-Authorizer zurOptionsEigenschaft im OpenAPI-Abschnitt hinzugefügt wird.Typ: Boolesch
Required: No
Standard: Wahr
CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein 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
CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.
-
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| | LambdaTokenAuthorizer| LambdaRequestAuthorizer AWS_IAM
Required: No
Standard: Keiner
CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.
Zusätzliche Hinweise: SAM fügt die Authorizer zur OpenApi Definition einer API hinzu.
-
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 werden
AWS_IAM, da andernfalls ein Fehler auftritt.Typ: Zeichenfolge
Required: No
Standard: Keiner
CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.
-
InvokeRole -
Legt die Integrationsanmeldedaten für alle Ressourcen und Methoden auf diesen Wert fest.
CALLER_CREDENTIALSordnet zuarn:aws:iam::, wodurch die Anmeldeinformationen des Anrufers verwendet werden, um den Endpunkt aufzurufen.:<user>/Gültige Werte:
CALLER_CREDENTIALS,,NONEIAMRoleArnTyp: Zeichenfolge
Required: No
Standardwert:
CALLER_CREDENTIALSCloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.
-
ResourcePolicy -
Konfigurieren Sie die Ressourcenrichtlinie für alle Methoden und Pfade auf einer API.
Required: No
CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.
Zusätzliche Hinweise: Diese Einstellung kann auch individuell
AWS::Serverless::Functionmit dem definiert werdenApiFunctionAuth. Dies ist für APIs with 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 CloudFormation Ressourcen, wenn diese Eigenschaft festgelegt ist: eine 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 CloudFormation Ressourcen finden Sie unterGenerierte CloudFormation Ressourcen für AWS SAM.
Typ: ApiUsagePlan
Required: No
CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein 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 ICH BIN
AWS IAM-Beispiel
YAML
Auth: Authorizers: AWS_IAM