

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á.

# WebSocketApiAuth
<a name="sam-property-websocketapi-websocketapiauth"></a>

Configure a autorização para controlar o acesso à sua API do Amazon WebSocket API Gateway.

Para obter mais informações sobre como configurar o acesso ao WebSocket APIs, consulte Como [controlar o acesso ao WebSocket APIs](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-control-access.html) no *Guia do desenvolvedor do API Gateway*.

## Sintaxe
<a name="sam-property-websocketapi-websocketapiauth-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-websocketapi-websocketapiauth-syntax.yaml"></a>

```
[AuthArn](#sam-websocketapiauth-autharn): {{String}}
[AuthType](#sam-websocketapiauth-authtype): {{String}}
[IdentitySource](#sam-websocketapiauth-identitysource): {{List}}
[InvokeRole](#sam-websocketapiauth-invokerole): {{String}}
[Name](#sam-websocketapiauth-name): {{String}}
```

## Propriedades
<a name="sam-property-websocketapi-websocketapiauth-properties"></a>

 `AuthArn`   <a name="sam-websocketapiauth-autharn"></a>
O ARN da função Lambda a ser usada para autorização. Exigido quando `AuthType` é`CUSTOM`.  
*Tipo:* string  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `AuthType`   <a name="sam-websocketapiauth-authtype"></a>
O tipo de autorização. Os valores válidos são `NONE`, `AWS_IAM` ou `CUSTOM`.  
+ `NONE`- Sem autorização
+ `AWS_IAM`- Autorização do IAM
+ `CUSTOM`- Autorizador Lambda
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IdentitySource`   <a name="sam-websocketapiauth-identitysource"></a>
A origem de identidade para a qual a autorização é solicitada. Por exemplo, .`route.request.header.Authorization`  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[IdentitySource](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html#cfn-apigatewayv2-authorizer-identitysource)` propriedade de um `AWS::ApiGatewayV2::Authorizer` recurso.

 `InvokeRole`   <a name="sam-websocketapiauth-invokerole"></a>
O ARN da função do IAM que o API Gateway assume ao invocar a função autorizadora. Se não for especificado, cria AWS SAM automaticamente uma permissão baseada em recursos que permite que o API Gateway invoque a função do autorizador.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[AuthorizerCredentialsArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html#cfn-apigatewayv2-authorizer-authorizercredentialsarn)` propriedade de um `AWS::ApiGatewayV2::Authorizer` recurso.

 `Name`   <a name="sam-websocketapiauth-name"></a>
O nome do autorizador.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html#cfn-apigatewayv2-authorizer-name)` propriedade de um `AWS::ApiGatewayV2::Authorizer` recurso.

## Exemplos
<a name="sam-property-websocketapi-websocketapiauth-examples"></a>

### Autorizador Lambda
<a name="sam-property-websocketapi-websocketapiauth-examples-lambda"></a>

O exemplo a seguir configura um autorizador Lambda para uma API. WebSocket 

```
Auth:
  AuthType: CUSTOM
  AuthArn: !GetAtt AuthorizerFunction.Arn
  IdentitySource:
    - route.request.header.Authorization
```

### Autorização do IAM
<a name="sam-property-websocketapi-websocketapiauth-examples-iam"></a>

O exemplo a seguir configura a autorização do IAM para uma WebSocket API.

```
Auth:
  AuthType: AWS_IAM
```