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 essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

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

CloudFormation compatibilidade: essa propriedade é exclusiva 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

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

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: Open IDConnect Config

Obrigatório: não

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

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 AppSync Guia 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 Lambda.

Tipo: string

Obrigatório: Sim

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

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

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

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 AWS SAM modelo:

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