Auth - AWS Serverless Application Model

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Auth

Configure a autorização para sua GraphQL API.

Sintaxe

Para declarar esta entidade no modelo do AWS Serverless Application Model (AWS SAM), use a seguinte sintaxe:

YAML

Additional: - AuthProvider LambdaAuthorizer: LambdaAuthorizerConfig OpenIDConnect: OpenIDConnectConfig Type: String UserPool: UserPoolConfig

Propriedades

Additional

Uma lista de tipos de autorização adicionais para sua GraphQL API.

Tipo: Lista de AuthProvider

Obrigatório: não

Compatibilidade CloudFormation: Essa propriedade é exclusiva do AWS SAM e não tem CloudFormation equivalente.

LambdaAuthorizer

Especifique a configuração de autorização opcional para seu autorizador de função do Lambda. Você pode configurar essa propriedade opcional quando Type for especificado como AWS_LAMBDA.

Tipo: LambdaAuthorizerConfig

Obrigatório: não

Compatibilidade CloudFormation: essa propriedade é passada diretamente para a propriedade LambdaAuthorizerConfig de um recurso AWS::AppSync::GraphQLApi.

OpenIDConnect

Especifique a configuração de autorização opcional para seu serviço OpenID Connect compatível. Você pode configurar essa propriedade opcional quando Type for especificado como OPENID_CONNECT.

Tipo: OpenIDConnectConfig

Obrigatório: não

Compatibilidade CloudFormation: essa propriedade é passada diretamente para a propriedade OpenIDConnectConfig de um recurso AWS::AppSync::GraphQLApi.

Type

O tipo de autorização padrão entre aplicativos e sua AWS AppSync GraphQL API.

Para obter uma lista e uma descrição dos valores permitidos, consulte Autorização e autenticação no AWS AppSyncGuia do desenvolvedor.

Quando você especifica um autorizador Lambda (AWS_LAMBDA), AWS SAM cria uma política AWS Identity and Access Management (IAM) para provisionar permissões entre sua API GraphQL e a função do Lambda.

Tipo: string

Obrigatório: Sim

Compatibilidade CloudFormation: essa propriedade é passada diretamente para a propriedade AuthenticationType de um recurso AWS::AppSync::GraphQLApi.

UserPool

Especifique a configuração de autorização opcional para usar grupos de usuários do Amazon Cognito. Você pode configurar essa propriedade opcional quando Type for especificado como AMAZON_COGNITO_USER_POOLS.

Tipo: UserPoolConfig

Obrigatório: não

Compatibilidade CloudFormation: essa propriedade é passada diretamente para a propriedade UserPoolConfig de um recurso AWS::AppSync::GraphQLApi.

Exemplos

Configurar um tipo de autorização padrão e adicional

Neste exemplo, começamos configurando um autorizador Lambda como o tipo de autorização padrão para nossa API GraphQL.

AWSTemplateFormatVersion: '2010-09-09' Transform: AWS::Serverless-2016-10-31 ... Resources: MyGraphQLAPI: Type: AWS::Serverless::GraphQLApi Properties: Auth: Type: AWS_LAMBDA LambdaAuthorizer: AuthorizerUri: !GetAtt Authorizer1.Arn AuthorizerResultTtlInSeconds: 10 IdentityValidationExpression: hello

Em seguida, configuramos tipos de autorização adicionais para nossa GraphQL API adicionando o seguinte ao nosso modelo AWS SAM:

Additional: - Type: AWS_IAM - Type: API_KEY - Type: OPENID_CONNECT OpenIDConnect: AuthTTL: 10 ClientId: myId IatTTL: 10 Issuer: prod

Isso resulta no seguinte modelo do AWS SAM:

AWSTemplateFormatVersion: '2010-09-09' Transform: AWS::Serverless-2016-10-31 ... Resources: MyGraphQLAPI: Type: AWS::Serverless::GraphQLApi Properties: Auth: Type: AWS_LAMBDA LambdaAuthorizer: AuthorizerUri: !GetAtt Authorizer1.Arn AuthorizerResultTtlInSeconds: 10 IdentityValidationExpression: hello Additional: - Type: AWS_IAM - Type: API_KEY - Type: OPENID_CONNECT OpenIDConnect: AuthTTL: 10 ClientId: myId IatTTL: 10 Issuer: prod