Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
ApiAuth
Configura l'autorizzazione per controllare l'accesso alla tua API API Gateway.
Per ulteriori informazioni ed esempi sulla configurazione dell'accesso utilizzando, AWS SAM vedereControlla l'accesso alle API con il tuo AWS SAM modello.
Sintassi
Per dichiarare questa entità nel tuo modello AWS Serverless Application Model (AWS SAM), usa la seguente sintassi.
YAML
AddApiKeyRequiredToCorsPreflight:BooleanAddDefaultAuthorizerToCorsPreflight:BooleanApiKeyRequired:BooleanAuthorizers:CognitoAuthorizer | LambdaTokenAuthorizer | LambdaRequestAuthorizer | AWS_IAMDefaultAuthorizer:StringInvokeRole:StringResourcePolicy:ResourcePolicyStatementUsagePlan:ApiUsagePlan
Nota
La Authorizers proprietà includeAWS_IAM, ma non è necessaria alcuna configurazione aggiuntiva per. AWS_IAM Per vedere un esempio, consulta AWS IAM.
Proprietà
-
AddApiKeyRequiredToCorsPreflight -
Se le
CorsproprietàApiKeyRequiredand sono impostate, l'impostazioneAddApiKeyRequiredToCorsPreflightcauserà l'aggiunta della chiave API allaOptionsproprietà.Tipo: Booleano
Required: No
Default:
TrueCloudFormation compatibilità: questa proprietà è unica AWS SAM e non ha un CloudFormation equivalente.
-
Se le
CorsproprietàDefaultAuthorizerand sono impostate, l'impostazioneAddDefaultAuthorizerToCorsPreflightfarà sì che l'autorizzatore predefinito venga aggiunto allaOptionsproprietà nella sezione OpenAPI.Tipo: Booleano
Required: No
Predefinito: True
CloudFormation compatibilità: questa proprietà è unica AWS SAM e non ha un CloudFormation equivalente.
-
ApiKeyRequired -
Se impostato su true, è necessaria una chiave API per tutti gli eventi API. Per ulteriori informazioni sulle chiavi API, consulta Creare e utilizzare piani di utilizzo con chiavi API nella Guida per sviluppatori di API Gateway.
Tipo: Booleano
Required: No
CloudFormation compatibilità: questa proprietà è unica AWS SAM e non ha un CloudFormation equivalente.
-
L'autorizzatore utilizzato per controllare l'accesso all'API API Gateway.
Per ulteriori informazioni, consulta Controlla l'accesso alle API con il tuo AWS SAM modello.
Tipo: CognitoAuthorizer| | LambdaTokenAuthorizer| LambdaRequestAuthorizer AWS_IAM
Required: No
Default: nessuna
CloudFormation compatibilità: Questa proprietà è unica AWS SAM e non ha un CloudFormation equivalente.
Note aggiuntive: SAM aggiunge gli Authorizers alla OpenApi definizione di un'Api.
-
Specificare un autorizzatore predefinito per un'API API Gateway, che verrà utilizzato per autorizzare le chiamate API per impostazione predefinita.
Nota
Se l'Api EventSource per la funzione associata a questa API è configurata per utilizzare le autorizzazioni IAM, questa proprietà deve essere impostata su
AWS_IAM, altrimenti si verificherà un errore.Tipo: stringa
Required: No
Default: nessuna
CloudFormation compatibilità: questa proprietà è unica AWS SAM e non ha un CloudFormation equivalente.
-
InvokeRole -
Imposta le credenziali di integrazione per tutte le risorse e i metodi su questo valore.
CALLER_CREDENTIALSmaps toarn:aws:iam::, che utilizza le credenziali del chiamante per richiamare l'endpoint.:<user>/Valori validi:,,
CALLER_CREDENTIALSNONEIAMRoleArnTipo: stringa
Required: No
Default:
CALLER_CREDENTIALSCloudFormation compatibilità: questa proprietà è unica AWS SAM e non ha un CloudFormation equivalente.
-
ResourcePolicy -
Configura la politica delle risorse per tutti i metodi e i percorsi su un'API.
Tipo: ResourcePolicyStatement
Required: No
CloudFormation compatibilità: questa proprietà è unica AWS SAM e non ha un CloudFormation equivalente.
Note aggiuntive: Questa impostazione può essere definita anche individualmente
AWS::Serverless::FunctionutilizzandoApiFunctionAuth. È necessario per APIs conEndpointConfiguration: PRIVATE. -
UsagePlan -
Configura un piano di utilizzo associato a questa API. Per ulteriori informazioni sui piani di utilizzo, consulta Create and Use Plans with API Keys nella API Gateway Developer Guide.
Questa AWS SAM proprietà genera tre CloudFormation risorse aggiuntive quando è impostata: un AWS::ApiGateway::UsagePlan, un AWS::ApiGateway::UsagePlanKey, e un AWS::ApiGateway::ApiKey. Per informazioni su questo scenario, vedereUsagePlanla proprietà è specificata. Per informazioni generali sulle CloudFormation risorse generate, vedereCloudFormation Risorse generate per AWS SAM.
Tipo: ApiUsagePlan
Required: No
CloudFormation compatibilità: questa proprietà è unica AWS SAM e non ha un CloudFormation equivalente.
Esempi
CognitoAuth
Esempio di autenticazione Cognito
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 Esempio IAM
YAML
Auth: Authorizers: AWS_IAM