

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# CognitoAuthorizer
<a name="sam-property-api-cognitoauthorizer"></a>

Define un autorizador de grupo de usuarios de Amazon Cognito.

Para obtener más información y ejemplos, consulta [Controla el acceso a la API con tu AWS SAM plantilla](serverless-controlling-access-to-apis.md).

## Sintaxis
<a name="sam-property-api-cognitoauthorizer-syntax"></a>

Para declarar esta entidad en tu plantilla AWS Serverless Application Model (AWS SAM), usa la siguiente sintaxis.

### YAML
<a name="sam-property-api-cognitoauthorizer-syntax.yaml"></a>

```
  [AuthorizationScopes](#sam-api-cognitoauthorizer-authorizationscopes): List
  [Identity](#sam-api-cognitoauthorizer-identity): CognitoAuthorizationIdentity
  [UserPoolArn](#sam-api-cognitoauthorizer-userpoolarn): String
```

## Propiedades
<a name="sam-property-api-cognitoauthorizer-properties"></a>

 `AuthorizationScopes`   <a name="sam-api-cognitoauthorizer-authorizationscopes"></a>
Lista de los ámbitos de autorización de este autorizador.  
*Tipo*: lista  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad es exclusiva de AWS SAM y no tiene un CloudFormation equivalente.

 `Identity`   <a name="sam-api-cognitoauthorizer-identity"></a>
Esta propiedad se puede usar para especificar una solicitud `IdentitySource` entrante de un autorizador.  
*Tipo:* [CognitoAuthorizationIdentity](sam-property-api-cognitoauthorizationidentity.md)  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad es exclusiva de AWS SAM y no tiene un CloudFormation equivalente.

 `UserPoolArn`   <a name="sam-api-cognitoauthorizer-userpoolarn"></a>
Puede hacer referencia a un usuario ( pool/specify un nombre de grupo de usuarios) al que desee añadir este autorizador de cognito  
*Tipo:* cadena  
*Obligatorio*: sí  
*CloudFormation compatibilidad*: esta propiedad es exclusiva AWS SAM y no tiene un equivalente. CloudFormation 

## Ejemplos
<a name="sam-property-api-cognitoauthorizer--examples"></a>

### CognitoAuth
<a name="sam-property-api-cognitoauthorizer--examples--cognitoauth"></a>

Ejemplo de autorización de Cognito

#### YAML
<a name="sam-property-api-cognitoauthorizer--examples--cognitoauth--yaml"></a>

```
Auth:
  Authorizers:
    MyCognitoAuth:
      AuthorizationScopes:
        - scope1
        - scope2
      UserPoolArn:
        Fn::GetAtt:
          - MyCognitoUserPool
          - Arn
      Identity:
        Header: MyAuthorizationHeader
        ValidationExpression: myauthvalidationexpression
```

# CognitoAuthorizationIdentity
<a name="sam-property-api-cognitoauthorizationidentity"></a>

Esta propiedad se puede usar para especificar una IdentitySource solicitud entrante de un autorizador. Para obtener más información, IdentitySource consulte la extensión [ApiGateway Authorizer OpenApi ](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-authorizer.html).

## Sintaxis
<a name="sam-property-api-cognitoauthorizationidentity-syntax"></a>

Para declarar esta entidad en tu plantilla AWS Serverless Application Model (AWS SAM), usa la siguiente sintaxis.

### YAML
<a name="sam-property-api-cognitoauthorizationidentity-syntax.yaml"></a>

```
  [Header](#sam-api-cognitoauthorizationidentity-header): String
  [ReauthorizeEvery](#sam-api-cognitoauthorizationidentity-reauthorizeevery): Integer
  [ValidationExpression](#sam-api-cognitoauthorizationidentity-validationexpression): String
```

## Propiedades
<a name="sam-property-api-cognitoauthorizationidentity-properties"></a>

 `Header`   <a name="sam-api-cognitoauthorizationidentity-header"></a>
Especifique el nombre del encabezado de la autorización en la OpenApi definición.  
*Tipo:* cadena  
*Obligatorio*: no  
*Predeterminado*: Autorización  
*CloudFormation compatibilidad*: esta propiedad es exclusiva de AWS SAM y no tiene un CloudFormation equivalente.

 `ReauthorizeEvery`   <a name="sam-api-cognitoauthorizationidentity-reauthorizeevery"></a>
El período time-to-live (TTL), en segundos, que especifica cuánto tiempo API Gateway almacena en caché los resultados del autorizador. Si especificas un valor mayor que 0, API Gateway almacena en caché las respuestas del autorizador. De forma predeterminada, API Gateway establece esta propiedad en 300. El valor máximo es 3600 o 1 hora.  
*Tipo*: entero  
*Obligatorio*: no  
*Predeterminado*: 300  
*CloudFormation compatibilidad*: esta propiedad es exclusiva de AWS SAM y no tiene un equivalente. CloudFormation 

 `ValidationExpression`   <a name="sam-api-cognitoauthorizationidentity-validationexpression"></a>
Especifica una expresión de validación para la identidad de entrada.  
*Tipo:* cadena  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad es exclusiva de AWS SAM y no tiene un CloudFormation equivalente.

## Ejemplos
<a name="sam-property-api-cognitoauthorizationidentity--examples"></a>

### CognitoAuthIdentity
<a name="sam-property-api-cognitoauthorizationidentity--examples--cognitoauthidentity"></a>

#### YAML
<a name="sam-property-api-cognitoauthorizationidentity--examples--cognitoauthidentity--yaml"></a>

```
Identity:
  Header: MyCustomAuthHeader
  ValidationExpression: Bearer.*
  ReauthorizeEvery: 30
```